XenServer

Verwalten Sie Ihre Hosts

Dieser Artikel beschreibt einige der Aktionen, die Sie zum Verwalten Ihrer einzelnen XenServer-Hosts ausführen können.

Informationen zum Verwalten von Aktionen im Zusammenhang mit Ressourcenpools finden Sie unter Verwalten Ihrer Pools.

Konfigurieren des SSH-Zugriffs

Der SSH-Zugriff auf Ihre XenServer-Hosts ist standardmäßig aktiviert. Wenn Sie den SSH-Zugriff auf Ihren XenServer-Host deaktivieren möchten, führen Sie den folgenden Befehl aus:

  xe host-disable-ssh host=<host_uuid_or_name_label>
<!--NeedCopy-->

Dieser Befehl deaktiviert SSH. Der Host lehnt neue SSH-Verbindungen ab, trennt jedoch keine bestehenden Sitzungen.

Um den SSH-Zugriff auf Ihren XenServer-Host zu aktivieren, führen Sie den folgenden Befehl aus:

  xe host-enable-ssh host=<host_uuid_or_name_label>
<!--NeedCopy-->

Für den Wert des Parameters Host in einem dieser Befehle können Sie einen Host-Selektor verwenden. Weitere Informationen finden Sie unter Host-Selektoren.

Sie können den SSH-Zugriff für alle Hosts in einem XenServer-Pool gleichzeitig verwalten. Weitere Informationen finden Sie unter SSH-Zugriff für einen Pool deaktivieren.

Installieren eines TLS-Zertifikats auf Ihrem Host

Der XenServer-Host wird mit einem standardmäßigen TLS-Zertifikat installiert. Um jedoch HTTPS zum Sichern der Kommunikation zwischen XenServer und Citrix Virtual Apps and Desktops zu verwenden, installieren Sie ein Zertifikat, das von einer vertrauenswürdigen Zertifizierungsstelle bereitgestellt wird.

In diesem Abschnitt wird beschrieben, wie Sie Zertifikate mithilfe der xe CLI installieren. Informationen zum Arbeiten mit Zertifikaten mithilfe von XenCenter finden Sie unter die XenCenter-Dokumentation.

Stellen Sie sicher, dass Ihr TLS-Zertifikat und sein Schlüssel die folgenden Anforderungen erfüllen:

  • Bei dem Zertifikats- und Schlüsselpaar handelt es sich um einen RSA-Schlüssel.
  • Der Schlüssel stimmt mit dem Zertifikat überein.
  • Der Schlüssel wird in einer separaten Datei zum Zertifikat bereitgestellt.
  • Das Zertifikat wird in einer separaten Datei für alle Zwischenzertifikate bereitgestellt.
  • Die Schlüsseldatei muss einen der folgenden Typen aufweisen: .Pem oder .Schlüssel.
  • Alle Zertifikatsdateien müssen einen der folgenden Typen aufweisen: .Pem, .ceroder .Kathodenstrahlröhre.
  • Der Schlüssel ist größer oder gleich 2048 Bit und kleiner oder gleich 4096 Bit lang.
  • Der Schlüssel ist ein unverschlüsselter PKCS #8-Schlüssel und verfügt nicht über einen Hauptschlüssel.
  • Der Schlüssel und das Zertifikat liegen im Base-64-codierten PEM-Format vor.
  • Das Zertifikat ist gültig und nicht abgelaufen.
  • Der Signaturalgorithmus ist SHA-2 (SHA256 oder SHA512).

Die xe CLI warnt Sie, wenn das von Ihnen gewählte Zertifikat und der Schlüssel diese Anforderungen nicht erfüllen.

Wo bekomme ich ein TLS-Zertifikat?

1. Generieren einer Zertifikatsignieranforderung

Generieren Sie zunächst einen privaten Schlüssel und eine Zertifikatsignieranforderung. Führen Sie auf dem XenServer-Host die folgenden Schritte aus:

  1. Führen Sie den folgenden Befehl aus, um eine Datei mit privatem Schlüssel zu erstellen:

      openssl genrsa -des3 -out privatekey.pem 2048
    <!--NeedCopy-->
    

    Sie werden zur Eingabe einer Passphrase aufgefordert. Diese Passphrase wird in einem folgenden Schritt entfernt.

  2. Entfernen Sie die Passphrase aus dem Schlüssel:

      openssl rsa -in privatekey.pem -out privatekey.nop.pem
    <!--NeedCopy-->
    
  3. Erstellen Sie die Zertifikatsignieranforderung mithilfe des privaten Schlüssels:

      openssl req -new -key privatekey.nop.pem -out csr
    <!--NeedCopy-->
    
  4. Befolgen Sie die Anweisungen, um die Informationen anzugeben, die zum Generieren der Zertifikatsignieranforderung erforderlich sind.

    • Ländername. Geben Sie die Ländercodes des TLS-Zertifikats für Ihr Land ein. Beispiel: CA für Kanada oder JM für Jamaika. Eine Liste der Ländercodes für TLS-Zertifikate finden Sie im Internet.
    • Name des Bundeslandes oder der Provinz (vollständiger Name). Geben Sie den Bundesstaat oder die Provinz ein, in dem sich der Pool befindet. Beispiel: Massachusetts oder Alberta.
    • Name des Ortes. Der Name der Stadt, in der sich das Schwimmbad befindet.
    • Name der Organisation. Der Name Ihres Unternehmens oder Ihrer Organisation.
    • Name der Organisationseinheit. Geben Sie den Namen der Abteilung ein. Das Feld ist optional.
    • Trivialname. Geben Sie den FQDN Ihres XenServer-Hosts ein. Es wird empfohlen, entweder einen FQDN oder eine IP-Adresse anzugeben, die nicht abläuft.
    • E-Mail-Adresse. Diese E-Mail-Adresse ist im Zertifikat enthalten, wenn Sie es generieren.

    Die Zertifikatsignieranforderung wird im aktuellen Verzeichnis gespeichert und erhält den Namen csr.

  5. Zeigen Sie die Zertifikatsignieranforderung im Konsolenfenster an, indem Sie den folgenden Befehl ausführen:

      cat csr
    <!--NeedCopy-->
    
  6. Kopieren Sie die gesamte Zertifikatsignieranforderung, und verwenden Sie diese Informationen, um das Zertifikat von der Zertifizierungsstelle anzufordern.

    Beispiel für eine Zertifikatsignieranforderung:

      -----BEGIN CERTIFICATE REQUEST-----
      MIIDBDCCAewCAQAwgYsxCzAJBgNVBAYTAlVLMRcwFQYDVQQIDA5DYW1icmlkZ2Vz
      aGlyZTESMBAGA1UEBwwJQ2FtYnJpZGdlMRIwEAYDVQQKDAlYZW5TZXJ2ZXIxFTAT
      ...
      SdYCkFdo+85z8hBULFzSH6jgSP0UGQU0PcfIy7KPKyI4jnFQqeCDvLdWyhtAx9gq
      Fu40qMSm1dNCFfnACRwYQkQgqCt/RHeUtl8srxyZC+odbunnV+ZyQdmLwLuQySUk
      ZL8naumG3yU=
      -----END CERTIFICATE REQUEST-----
    <!--NeedCopy-->
    

2. Senden der Zertifikatsignieranforderung an eine Zertifizierungsstelle

Nachdem Sie die Zertifikatsignieranforderung generiert haben, können Sie die Anforderung an die bevorzugte Zertifizierungsstelle Ihrer Organisation senden.

Eine Zertifizierungsstelle (CA) ist ein Dienst, der digitale Zertifikate bereitstellt. Möglicherweise steht in Ihrer Organisation bereits eine CA zur Verfügung, oder Sie können alternativ einen vertrauenswürdigen Drittanbieter nutzen. Einige Zertifizierungsstellen verlangen, dass die Zertifikate auf einem System gehostet werden, auf das über das Internet zugegriffen werden kann. Es wird empfohlen, keine Zertifizierungsstelle mit dieser Anforderung zu verwenden.

Die Zertifizierungsstelle antwortet auf Ihre Signaturanforderung und stellt die folgenden Dateien bereit:

  • das signierte Zertifikat
  • ggf. ein Zwischenzertifikat

Sie können jetzt alle diese Dateien auf Ihrem XenServer-Host installieren.

3. Installieren Sie das signierte Zertifikat auf Ihrem XenServer-Host

Nachdem die Zertifizierungsstelle auf die Zertifikatsignieranforderung reagiert hat, führen Sie die folgenden Schritte aus, um das Zertifikat auf Ihrem XenServer-Host zu installieren:

  1. Rufen Sie das signierte Zertifikat und, falls die Zertifizierungsstelle über eines verfügt, das Zwischenzertifikat von der Zertifizierungsstelle ab.
  2. Kopieren Sie den Schlüssel und die Zertifikate auf den XenServer-Host.
  3. Führen Sie den folgenden Befehl auf dem Host aus:

      xe host-server-certificate-install certificate=<path_to_certificate_file> private-key=<path_to_private_key> certificate-chain=<path_to_chain_file>
    

    Das Zertifikatskette ist optional.

Für zusätzliche Sicherheit können Sie die private Schlüsseldatei nach der Installation des Zertifikats löschen.

Verwalten des Administratorkennworts

Wenn Sie zum ersten Mal einen XenServer-Host installieren, legen Sie einen Administrator oder wurzel Passwort. Sie verwenden dieses Kennwort, um XenCenter mit Ihrem Host zu verbinden oder (mit dem Benutzernamen wurzel), um sich anzumelden XS-Konsole, die Systemkonfigurationskonsole.

Wenn Sie einen Host mit einem Pool verbinden, wird das Administratorkennwort für den Host automatisch so geändert, dass es mit dem Administratorkennwort des Poolkoordinators übereinstimmt.

Hinweis:

XenServer-Administratorkennwörter dürfen nur druckbare ASCII-Zeichen enthalten.

Ändern des Kennworts

Sie können XenCenter, die xe CLI oder XS-Konsole , um das Administratorkennwort zu ändern.

XenCenter

Führen Sie die folgenden Schritte aus, um das Administratorkennwort für einen Pool oder einen eigenständigen Host mithilfe von XenCenter zu ändern:

  1. Im Betriebsmittel den Pool oder einen beliebigen Host im Pool aus.
  2. Am Tümpel oder auf der Registerkarte Server und wählen Sie Serverkennwort ändern.

Um das Root-Passwort eines eigenständigen Hosts zu ändern, wählen Sie den Host im Feld Betriebsmittel und klicken Sie auf Passwort Und dann Veränderung vom Server Menü.

Wenn XenCenter so konfiguriert ist, dass Ihre Host-Anmeldeinformationen zwischen Sitzungen gespeichert werden, wird das neue Passwort gespeichert. Weitere Informationen finden Sie unter Speichern des Hostverbindungsstatus.

Nachdem Sie das Administratorkennwort geändert haben, rotieren Sie den geheimen Poolschlüssel. Weitere Informationen finden Sie unter Rotieren des Poolgeheimnisses.

xe CLI

Um das Administratorkennwort mithilfe der xe CLI zu ändern, führen Sie den folgenden Befehl auf einem Host im Pool aus:

    xe user-password-change new=<new_password>
<!--NeedCopy-->

Hinweis:

Stellen Sie sicher, dass Sie dem Befehl ein Leerzeichen voranstellen, um zu vermeiden, dass das Klartextkennwort im Befehlsverlauf gespeichert wird.

Nachdem Sie das Administratorkennwort geändert haben, rotieren Sie den geheimen Poolschlüssel. Weitere Informationen finden Sie unter Rotieren des Poolgeheimnisses.

XS-Konsole

So ändern Sie das Administratorkennwort für einen Pool oder einen eigenständigen Host mit XS-Konsoledie folgenden Schritte aus:

  1. Wechseln Sie im Poolkoordinator zur Konsole.
  2. Melden Sie sich an als wurzel.
  3. Art XS-Konsole. Presse Eintreten. Das XS-Konsole wird angezeigt.
  4. In XS-Konsole, navigieren Sie mit den Pfeiltasten zum Authentifizierung Option. Presse Eintreten.
  5. Navigieren Sie zu Passwort ändern. Presse Eintreten.
  6. Authentifizieren Sie sich mit dem Administratorkennwort.
  7. Im Passwort ändern Dialogfeld:
    1. Geben Sie Ihr aktuelles Passwort ein.
    2. Geben Sie ein neues Passwort ein.
    3. Geben Sie das neue Passwort erneut ein, um es zu bestätigen.

    Das Passwortänderung erfolgreich wird angezeigt. Presse Eintreten zu entlassen.

Wenn es sich bei dem Host um einen Poolkoordinator handelt, wird dieses aktualisierte Kennwort jetzt an die anderen Hosts im Pool weitergegeben.

Nachdem Sie das Administratorkennwort geändert haben, rotieren Sie den geheimen Poolschlüssel. Weitere Informationen finden Sie unter Rotieren des Poolgeheimnisses.

Setzen Sie ein verlorenes Root-Passwort zurück

Wenn Sie das Administratorkennwort (root) für Ihren XenServer-Host verlieren, können Sie das Kennwort zurücksetzen, indem Sie direkt auf den Host zugreifen.

  1. Starten Sie den XenServer-Host neu.

  2. Wenn das GRUB-Menü angezeigt wird, drücken Sie e , um den Boot-Menüeintrag zu bearbeiten.

  3. Hinzufügen init=/sysroot/bin/sh zu der Zeile, die mit Modul2.

  4. Presse Strg-X , um in eine Root-Shell zu booten.

  5. Führen Sie in der Befehlsshell die folgenden Befehle aus:

      chroot /sysroot
      passwd
    
      (type the new password twice)
    
      sync
      /sbin/reboot -f
    <!--NeedCopy-->
    

Wenn es sich bei dem Host um einen Poolkoordinator handelt, wird dieses aktualisierte Kennwort jetzt an die anderen Hosts im Pool weitergegeben.

Nachdem Sie das Administratorkennwort geändert haben, rotieren Sie den geheimen Poolschlüssel. Weitere Informationen finden Sie unter Rotieren des Pool-Geheimnisses

Ändern der NTP-Konfiguration auf einem Server

Sie können die NTP-Konfiguration für Ihren Server von xsconsole aus aktualisieren.

  1. Geben Sie in der Hostkonsole xsconsoleein.
  2. Gehen Sie in xsconsole zu Netzwerk- und Verwaltungsschnittstellen > Netzwerkzeit (NTP).
  3. Geben Sie Ihr Passwort ein, um fortzufahren.
  4. Wählen Sie im Menü Netzwerkzeit konfigurieren die Option aus, die Sie konfigurieren möchten.

Vorbereiten eines Pools von XenServer-Hosts für die Wartung

Bevor Sie Wartungsvorgänge auf einem Host durchführen, der Teil eines Ressourcenpools ist, müssen Sie ihn deaktivieren. Durch das Deaktivieren des Hosts wird verhindert, dass VMs auf dem Host gestartet werden. Anschließend müssen Sie die VMs zu einem anderen XenServer-Host im Pool migrieren. Sie können dies tun, indem Sie den XenServer-Host mit XenCenter in den Wartungsmodus versetzen. Weitere Informationen finden Sie unter Im Wartungsmodus ausführen in der XenCenter-Dokumentation.

Die Backup-Synchronisierung erfolgt alle 24 Stunden. Wenn der Poolkoordinator in den Wartungsmodus versetzt wird, gehen die RRD-Updates der letzten 24 Stunden für Offline-VMs verloren.

Warnung:

Es wird dringend empfohlen, alle XenServer-Hosts neu zu starten, bevor Sie ein Update installieren und dann deren Konfiguration überprüfen. Einige Konfigurationsänderungen werden erst wirksam, wenn der XenServer-Host neu gestartet wird. Der Neustart kann daher Konfigurationsprobleme aufdecken, die dazu führen können, dass das Update fehlschlägt.

So bereiten Sie einen Host in einem Pool für Wartungsvorgänge mithilfe der CLI vor

  1. Führen Sie den folgenden Befehl aus:

      xe host-disable uuid=XenServer_host_uuid
      xe host-evacuate uuid=XenServer_host_uuid
    <!--NeedCopy-->
    

    Dieser Befehl deaktiviert den XenServer-Host und migriert dann alle ausgeführten VMs zu anderen XenServer-Hosts im Pool.

  2. Führen Sie den gewünschten Wartungsvorgang durch.

  3. Aktivieren Sie den XenServer-Host, wenn der Wartungsvorgang abgeschlossen ist:

      xe host-enable
    <!--NeedCopy-->
    
  4. Starten Sie alle angehaltenen VMs neu, und setzen Sie alle angehaltenen VMs fort.

Herunterfahren oder Neustarten eines XenServer-Hosts

Wir empfehlen, zum Herunterfahren oder Neustarten Ihrer XenServer-Hosts immer die Xe-CLI oder XenCenter zu verwenden. Verwenden Sie keine anderen Methoden (wie etwa hardwarebasierte Resets oder Betriebssystembefehle), um Ihre Hosts während des normalen Betriebs herunterzufahren oder neu zu starten. Dies kann zu unerwartetem Verhalten auf Ihrem Host und Pool führen.

Um einen Host mithilfe der xe-CLI herunterzufahren oder neu zu starten, verwenden Sie die folgenden Befehle:

  1. Verhindern Sie, dass neue VMs auf dem angegebenen Host gestartet oder dorthin migriert werden:

      xe host-disable host=<host name>
    <!--NeedCopy-->
    
  2. Migrieren Sie bei Bedarf alle laufenden VMs vom Host:

      xe host-evacuate uuid=<host uuid>
    <!--NeedCopy-->
    
  3. Fahren Sie den Host mit einem der folgenden xe CLI-Befehle herunter oder starten Sie ihn neu.

    • So fahren Sie den Host sauber herunter:

      ``` xe host-shutdown host=

    • To cleanly restart the host:

       xe Host-Neustart Host =<host name>
      

For how to shut down a server by using XenCenter, see the XenCenter documentation.

Configure host power-on

Powering on hosts remotely

You can use the XenServer host Power On feature to turn a host on and off remotely, either from XenCenter or by using the CLI.

To enable host power, the host must have one of the following power-control solutions:

  • Wake on LAN enabled network card.

  • Intelligent Platform Management Interface (IPMI).

  • A custom script based on the management API that enables you to turn the power on and off through XenServer. For more information, see Configuring a custom script for the Host Power On feature in the following section.

Using the Host Power On feature requires two tasks:

  1. Ensure the hosts in the pool support controlling the power remotely. For example, they have Wake on LAN functionality or support IPMI, or you have created a custom script.

  2. Enable the Host Power On functionality using the CLI or XenCenter.

Use the CLI to manage host power-on

You can manage the Host Power On feature using either the CLI or XenCenter. This section provides information about managing it with the CLI.

Host Power On is enabled at the host level (that is, on each XenServer).

After you enable Host Power On, you can turn on hosts using either the CLI or XenCenter.

To enable host power-on by using the CLI

Run the command:

xe Host-Set-Einschaltmodus Host =<host uuid> \
Einschaltmodus = ("", "Wake-on-LAN", "IPMI", "benutzerdefiniert") \
power-on-config=key:value

To turn on hosts remotely by using the CLI

Run the command:

xe Host-Power-On-Host =<host uuid>

Configure a custom script for the Host Power On feature

If your host’s remote-power solution uses a protocol that is not supported by default (such as Wake-On-Ring or Intel Active Management Technology), you can create a custom Linux Python 3 script to turn on your XenServer computers remotely. However, you can also create custom scripts for IPMI and Wake on LAN remote-power solutions.

This section provides information about configuring a custom script for Host Power On using the key-value pairs associated with the XenServer API call host.power_on.

When you create a custom script, run it from the command line each time you want to control power remotely on a XenServer host. Alternatively, you can specify it in XenCenter and use the XenCenter UI features to interact with it.

The XenServer API is documented in the XenServer Management API.

Warnung:

Ändern Sie nicht die standardmäßig bereitgestellten Skripte im Verzeichnis „/etc/xapi.d/plugins/“. You can include new scripts in this directory, but you must never change the scripts contained in that directory after installation.

Key-value pairs

To use Host Power On, configure the host.power_on_mode and host.power_on_config keys. See the following section for information about the values.

There is also an API call that lets you set these fields simultaneously:

void host.set_host_power_on_mode(Zeichenfolge Modus, Wörterbuch<string,string> Konfiguration)
host.power_on_mode
  • Definition: Contains key-value pairs to specify the type of remote-power solution.

  • Possible values:

    • An empty string, representing power-control disabled.

    • “IPMI”: Lets you specify Intelligent Platform Management Interface.

    • “wake-on-lan”: Lets you specify Wake on LAN.

    • Any other name (used to specify a custom power-on script). This option is used to specify a custom script for power management.

  • Type: string

host.power_on_config
  • Definition: Contains key-value pairs for mode configuration. Provides additional information for IPMI.

  • Possible values:

    • If you configured IPMI as the type of remote-power solution, you must also specify one of the following keys:

      • “power_on_ip”: The IP address that you specified configured to communicate with the power-control card.

      • “power_on_user”: The IPMI user name associated with the management processor, which you might have changed from its factory default settings.

      • “power_on_password_secret”: Specifies using the secrets feature to secure your password.

    • To use the secrets feature to store your password, specify the key “power_on_password_secret”. For more information, see Secrets.

  • Type: Map (string, string)

Sample script

The sample script imports the XenServer API, defines itself as a custom script, and then passes parameters specific to the host you want to control remotely. You must define the parameters session in all custom scripts.

The result appears when the script is unsuccessful.

import XenAPI def custom(session,remote_host, power_on_config): result="Power On Not Successful" for key in power_on_config.keys(): result=result+'' key=''+key+'' value=''+power_on_config[key] return result ```

> **Hinweis:**
> 
> Nachdem Sie das Skript erstellt haben, speichern Sie es in /etc/xapi.d/plugins mit der Erweiterung .py.
<!--NeedCopy-->