Dans Oracle OpenStack pour Oracle Solaris, les instances de machine virtuelle sont des zones de noyau ou des zones non globales, qui sont des environnements virtuels denses et évolutifs d'Oracle Solaris. La prise en charge de la migration en direct des zones a été étendue aux instances de machine virtuelle Nova.
Vous pouvez démarrer la migration en direct à l'aide du tableau de bord du service Horizon ou de la commande nova. Le planificateur sélectionne l'hôte cible de la migration parmi les noeuds participants. Pour garantir la sécurité, le mécanisme de migration sélectionne automatiquement l'algorithme de chiffrement approprié pour effectuer la migration. Toutefois, un paramètre dans le fichier /etc/nova/nova.conf vous permet de sélectionner le chiffrement que vous préférez utiliser.
Pour plus d'informations sur la migration en direct des zones de noyau, reportez-vous au manuel Création et utilisation des zones de noyau d'Oracle Solaris dans la bibliothèque correspondant à votre version d'Oracle Solaris dans la Operating Systems Documentation. Reportez-vous également aux pages de manuel zoneadm(8) et solaris-kz(7).
Pour que la migration des noeuds réussisse, vous devez vous assurer que la clé SSH de chaque noeud de calcul est ajoutée au fichier des clés autorisées de chaque noeud. Ainsi, les noeuds partagent des fichiers identiques de clés autorisées, comme l'illustre la figure suivante :
Pour préparer la migration des instances de machine virtuelle, procédez comme suit :
Sur chaque noeud, créez une clé SSH.
# su - nova -c "ssh-keygen -N '' -f /var/user/nova/.ssh/id_rsa -t rsa"
Réunissez tous les fichiers de clés provenant des différents noeuds dans un emplacement commun dans l'un des noeuds.
Combinez toutes les clés dans le fichier authorized_keys.
Par exemple :
# cat nova(1)/id_rsa.pub nova(n)/id_rsa.pub >> /var/user/nova/.ssh/authorized_keys
où nova(1) à nova(n) représentent les clés SSH des noeuds participants.
Distribuez le fichier authorized_keys dans les répertoires /var/user/nova/.ssh de tous les autres noeuds participants.
En option, spécifiez le cryptage à utiliser lors de la migration dans le paramètre live_migration_cipher du fichier /etc/nova/nova.conf de chaque noeud de calcul.
Toutefois, si vous préférez que le processus sélectionne automatiquement un cryptage approprié, ne définissez pas le paramètre.
Pour effectuer la migration en direct d'un serveur actif sur une autre machine, utilisez la syntaxe suivante après avoir défini les variables de shell globales :
# nova live-migration server [host]
où server est le nom ou l'ID du serveur, tandis que le paramètre facultatif host est le nom du serveur de destination.
En cas de défaillance du noeud de l'instance actuelle, ou si le service Nova est lui-même désactivé pendant un certain temps, vous pouvez déplacer ou évacuer l'instance et la reconstruire sur un autre noeud. Ainsi, vous pouvez récupérer le noeud.
Pour effectuer la migration en direct de toutes les instances VM d'un hôte vers un autre, utilisez la syntaxe suivante après avoir défini les variables de shell globales :
# nova host-evacuate-live [--target-host target] server