Cette page a pour but d'expliquer comment migrer un DomU de Xen vers une VM sous Proxmox.
Création de la VM Proxmox
Premièrement, il faut créer une VM d'accueil sous Proxmox, vierge.
Création du volume logique
On crée le volume pour cette VM
$ cd /usr/scripts/gestion/iscsi $ ipython In [1]: import nolslib In [2]: nols = nolslib.Nols() In [3]: nols.create_volume('apprentis', 6, 'GiB', 'slon1') Le volume apprentis a été créé, son numéro d'identification est 21 In [4]: nols.logout() Si vous avez effectué des modifications pensez à exécuter: /usr/scripts/gestion/iscsi/update.sh sur chacun des dom0
Quittez alors ipython, et obéissez au script, en exécutant update.sh sur fy, fz, kdell et vo (qui sert de nœud redondant pour proxmox en attendant la fin des migrations).
Création de l'hôte sous Proxmox
Plusieurs choix s'offrent à vous, je vais tenter de les détailler.
Création en command line sur un des nœuds du cluster Proxmox
Je ferai sans doute un script reprenant toutes ces étapes, quand j'en aurai le temps, en gros, il faut modifier un certain nombre de fichiers, et vérifier que Proxmox a bien pris en compte les changements.
Premièrement, il faut repérer le disque iscsi à configurer en lvm. Pour cela, rien de plus simple, faîtes ls -al /dev/disk/by-path | grep lun-21 (pensez à remplacer le 21 par le numéro que vous a donné ipython).
$ ls -al /dev/disk/by-path | grep lun-21 lrwxrwxrwx 1 root root 10 août 14 12:23 ip-10.0.0.93:3260-iscsi-iqn.1986-03.com.hp:storage.p2000g3.114213a1f2-lun-21 -> ../../sddg lrwxrwxrwx 1 root root 10 août 14 12:23 ip-10.0.0.97:3260-iscsi-iqn.1986-03.com.hp:storage.p2000g3.114213a1f2-lun-21 -> ../../sddh
Cherchons donc sddg et sddh dans /dev/disk/by-id.
$ ls -al /dev/disk/by-id | grep sdd[gh] ls -al /dev/disk/by-id | grep sdd[gh] lrwxrwxrwx 1 root root 10 août 14 12:43 scsi-3600c0ff00013da4eb0760b5201000000 -> ../../sddh lrwxrwxrwx 1 root root 10 août 14 12:43 wwn-0x600c0ff00013da4eb0760b5201000000 -> ../../sddh
On ne trouve qu'un des deux, normal. Je m'explique. J'aurais bien voulu utiliser directement ce qu'on a trouvé dans /dev/disk/by-path ou /dev/sddg, mais ce sont des valeurs qui dépendent, pour une, de l'ip que la baie de disques a prise (10.0.0.9[37]), et pour l'autre, de l'ordre d'apparition des disques dans udev (sdd[gh]). Ce sont des données changeantes. Proxmox n'aime pas les données qui peuvent changer. En revanche, l'id est une donnée immuable (sauf si vous détruisez le volume). Donc il faut trouver l'id. Comme celui-ci ne dépend pas de l'ip de l'interface de la baie, ou de l'ordre d'apparition, il ne peut exister deux liens avec le même id dans /dev/disk/by-id, donc on en a qu'un. Mais nous, on s'en fout. Notez cet id quelque part.
Premièrement, créons un lvm sur le nouveau disque. On utilise pour cela la commande vgcreate.
# vgcreate apprentis /dev/iscsi_apprentis
Pour les petits curieux qui se demandent pourquoi j'ai pas utilisé pvcreate avant, c'est parce que vgcreate crée le volume physique à la volée si ce n'est pas fait.