Legal hold: Quoi faire avec mes VMs

Bon, un directeur vient te voir avec un air décrépit. Ça ne sent pas bon…

Bla bla bla bla Legal hold, bla bla bla au plus vite possible bla bla bla

Minute moumoute, c’est pas aussi facile que ça. Si tu as 5 VM à geler oui, si tu en as 200… C’est une autre ball game.
Qu’est-ce que ça implique un arrêt judiciaire dans un environnement virtuel en production?
Eh bien, il faut geler le data de la VM le plus vite possible.
Pour ce faire, on a besoin de faire des snapshots avec mémoire, de prendre les fichier délockés (vmdk et vmsn) et d’envoyer ca sur une plateforme exportable.

C’est surement possible de le faire de plein de manière, mais voici ma façon.
A: On doit créer un nouveau datastore, préférablement NFS.

  • Coté espace, il faut prévoir la taille des VMs + la mémoire assignée.
    On l’appellera DATASTORE_DE_DESTINATION

B: Créer les snapshots et créer l’arborescence dans le nouveau datastore

  • 1: Créer un fichier txt avec les noms de machines une par ligne
    • $newds = Get-Datastore -Name DATASTORE_DE_DESTINATION
      New-PSDrive -Location $newds -Name newds -PSProvider VimDatastore -Root « \ »
      Get-Content .\listevm.txt | ForEach-Object {new-item -Path newds:\$_ -ItemType Directory}
      Get-Content .\listevm.txt | ForEach-Object {get-vm $_ | New-Snapshot -name BLABLA -memory:$true }
  • C: Bouger le stock
    • 1: Sortir le path des machines (voir mon site pour la commande custom http://www.hoplawego.com/blog/mais-ou-sont-mes-vms/)
    • 2: créer un csv avec les header: vmname,ds,folder
      vmname: nom de la vm
      ds: le nom du datastore
      folder: le nom du dossier a l’interieur du dsvoici un exemple:

      vmname,ds,folder
      client1-p2-ma-vma-001,STO_005_L14_CLUSTERD_PRDSTG_DS004,client1-p2-ma-vma-001
      client1-p2-ma-vma-002,STO_005_L16_CLUSTERD_PRDSTG_DS006,client1-p2-ma-vma-002
      client1-p2-ma-vmb-001,STO_005_L16_CLUSTERD_PRDSTG_DS006,client1-p2-ma-vmb-001
      client1-p2-ma-vmb-002,STO_005_L16_CLUSTERD_PRDSTG_DS006,client1-p2-ma-vmb-002

    • 3: Lancer la job:import-csv listevm-fullfile.csv |
      ForEach {
      $ds = get-datastore -name $_.ds
      $folder = $_.folder
      $vmname = $_.vmname
      $newds = Get-Datastore -Name DATASTORE_DE_DESTINATION
      New-PSDrive -Location $newds -Name newds -PSProvider VimDatastore -Root « \ »
      New-PSDrive -Location $ds -Name oldds -PSProvider VimDatastore -Root « \ »
      copy-item « oldds:\$folder\* » « newds:\COPY-2\$vmname »
      get-psdrive oldds | remove-psdrive
      get-psdrive newds | remove-psdrive
      }

Voila… c’est excessivement lent, mais ca fonctionne.

Ensuite, il ne reste plus qu’a prendre le data du NFS et l’envoyer sur un disque USB, dropbox, box, peut importe.

À propos malabelle

Chu pas un planificateur financier, pas un fiscaliste, pas un conseiller réglementé, nope. Je suis juste un gars qui travaille dans les TI depuis 25 ans — architecte dans de grosses boîtes — pis qui en avait plein le cul de ne pas savoir où allait son cash et surtout de voir que mes placements diminuaient plutôt que de grossir… Dans ma vie perso, je joue dans l’immobilier, les FNB, les stratégies de rendement, les dettes intelligentes, pis toute la patente qui peut transformer un chèque de paie en liberté. J’fais des tests, j’me plante, j’apprends, pis j’en ressors moins cave à chaque fois.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *