7.5. Ersetzen von Compute-Knoten
Falls ein Compute-Knoten fehlschlägt, können Sie diesen Knoten mit einem Funktionstüchtigen ersetzen. Einen Compute-Knoten ersetzen Sie mit dem folgenden Verfahren:
- Arbeitsauslastung aus dem bestehenden Compute-Knoten migrieren
- Bestehenden Compute-Knoten herunterfahren
- Compute-Knoten aus dem Overcloud entfernen
- Overcloud mit neuem Compute-Knoten skalieren
Dieser Prozess stellt sicher, dass ein Knoten ersetzt werden kann, ohne die Verfügbarkeit der VMs zu beeinträchtigen.
Prozedur 7.1. Einrichten von Schlüsseln
Alle Compute-Knoten erfordern einen freigegebenen SSH-Schlüssel, damit jeder Host
nova
Benutzer während dem Migrationsprozess Zugriff hat. Mit folgendem Prozess können Sie für jeden Compute-Knoten ein SSH-Schlüsselpaar einrichten.
- SSH-Schlüssel aktivieren:
$ ssh-keygen -t rsa -f nova_id_rsa
- Bei jedem Compute-Knoten den SSH-Schlüssel ins
nova
Home-Verzeichnis des Benutzers kopieren. - Logen Sie sich in jeden Compute-Knoten als
nova
Benutzer ein und führen Sie das folgende Skript aus um die Schlüssel einzurichten:NOVA_SSH=/var/lib/nova/.ssh mkdir ${NOVA_SSH} cp nova_id_rsa ${NOVA_SSH}/id_rsa chmod 600 ${NOVA_SSH}/id_rsa cp nova_id_rsa.pub ${NOVA_SSH}/id_rsa.pub cp nova_id_rsa.pub ${NOVA_SSH}/authorized_keys chown -R nova.nova ${NOVA_SSH} # enable login for nova user on compute hosts: usermod -s /bin/bash nova # add ssh keys of overcloud nodes into known hosts: ssh-keyscan -t rsa `os-apply-config --key hosts --type raw --key-default '' | awk '{print $1}'` >>/etc/ssh/ssh_known_hosts
Prozedur 7.2. Virtuelle Maschinen aus den Compute-Knoten migrieren
- Beziehen Sie
overcloudrc
aus dem Director und rufen Sie eine Liste der aktuellen Nova Dienste ab:$ source ~stack/overcloudrc $ nova service-list
- Zum Migrieren den
nova-compute
Dienst auf dem Knoten deaktivieren.$ nova service-disable [service-id] nova-compute
Das verhindert, dass neue VMs darauf geplant werden. - Prozess zur Migration der VMs aus dem Knoten starten:
# nova host-servers-migrate [service-id]
- Der aktuelle Status des Migrationsprozesses kann mit folgendem Befehl abgefragt werden:
# nova migration-list
- Wenn die Migration aller VMs abgeschlossen ist, wird ihr Status in Nova auf
VERIFY_RESIZE
geändert. Das gibt Ihnen die Möglichkeit den Abschluss der Migration zu bestätigen oder sie zurückzusetzen. Bestätigen Sie die Migration mit dem Befehl:# nova resize-confirm [server-name]
- Wenn schließlich alle Migrationen abgeschlossen und bestätigt sind, entfernen Sie den auf dem Compute-Knoten ausgeführten (aber deaktivierten) Dienst ganz aus Nova:
# nova service-delete [service-id]
Jetzt können Sie den Knoten neu starten oder herunterfahren (unter Verwendung des Ironic API), oder sogar komplett aus der Overcloud entfernen, indem Sie die Overcloud-Bereitstellung herunterskalieren.
Prozedur 7.3. Entfernen des Compute-Knotens aus der Overcloud
- Folgen Sie dem entsprechenden Prozess von Abschnitt 7.4, »Entfernen von Knoten aus der Overcloud«.
Prozedur 7.4. Skalieren der Overcloud mit einem neuen Compute-Knoten
- Folgen Sie dem entsprechenden Prozess von Abschnitt 7.3, »Skalierung der Overcloud«.