IBM Cloud Docs
Auf Virtual Server-Instanzen mithilfe von VNC oder serieller Konsolen zugreifen

Auf Virtual Server-Instanzen mithilfe von VNC oder serieller Konsolen zugreifen

Sie können auf Ihre virtuelle IBM Cloud-Serverinstanz zugreifen, indem Sie eine Verbindung zu einer VNC- oder seriellen Konsole herstellen, indem Sie die IBM Cloud-Benutzerschnittstelle, API-Anforderungen oder die IBM Cloud-Befehlszeilenschnittstelle (CLI) verwenden. Der Konsolenservice ist eine schnelle und einfache Methode für die Interaktion mit der Instanz ohne Verwendung einer Secure Shell.

Für z/OS-Virtual-Server und Virtual-Server-Instanzen, die TDX Confidential Computing verwenden: Das Verbinden einer z/OS- oder TDX-Virtual-Server-Instanz mit einer VNC-Konsole wird nicht unterstützt.

Dies gilt für Situationen, in denen ein Bootfehler oder Kernelabsturz aufgetreten ist; insbesondere dann, wenn Sie ein angepasstes Image verwenden. Wenn eine solche Situation vorliegt, können Sie den Konsolenservice verwenden, um das Problem zu untersuchen.

Die VNC-Konsole stellt eine grafische Benutzerschnittstelle bereit und akzeptiert Eingaben über die Maus und die Tastatur. Die serielle Konsole ist textbasiert und akzeptiert Tastatureingaben.

Sie können die Konsole verwenden, um auf Betriebssystem-Lade-und Bootprozeduren wie GNU GRand Unified Bootloader (GRUB) zuzugreifen.

Die Konsole kann mit einem beliebigen oder unterstützten Browser geöffnet werden.

Vorbereitende Schritte

  1. Um eine Verbindung zu den Konsolen herzustellen, müssen Ihnen die Rollen Operator (oder höher) und Console Administrator für die virtuelle Serverinstanz in IBM Cloud Identity and Access Management (IAM) zugeordnet sein.

    Console Administrator Rolle wird nicht automatisch angewendet. Wenn Sie ein Administrator Ihres Kontos sind, müssen Sie auch die Rolle Console Administrator selbst zuweisen, um diese Funktion zu verwenden.

    Um zu überprüfen, ob Ihnen die erforderlichen Rollen zugewiesen sind, gehen Sie zur Seite "IAM-Benutzer" in der Konsole " IBM Cloud ", wählen Sie Ihr Konto unter "Benutzer" aus und wählen Sie dann "Zugriffsrichtlinien" aus. Stellen Sie sicher, dass Sie eine Zugriffsrichtlinie sehen, die Ihnen die Rolle Operator (oder höher) und die Rolle VirtualServerConsoleAdmin für die Ressourcenattribute der Zielinstanz des virtuellen Servers zuweist. Andernfalls müssen Sie sich an einen Administrator Ihres Kontos wenden, um Ihnen die Rollen zuzuweisen, indem Sie die folgenden Schritte ausführen:

    1. Gehen Sie zur Seite "IAM-Benutzer" in der Konsole " IBM Cloud " und wählen Sie den Zielbenutzer aus.
    2. Klicken Sie auf die Registerkarte Zugang und blättern Sie zu Zugangsrichtlinien.
    3. Klicken Sie auf Zugriff zuweisen.
    4. Blättern Sie zum Abschnitt Richtlinie erstellen.
    5. Wählen Sie im Abschnitt Dienst VPC-Infrastrukturdienste. Klicken Sie anschließend auf Weiter.
    6. Wählen Sie im Abschnitt Ressourcen Alle Ressourcen.
    7. Wählen Sie unter Rollen und Aktionen den folgenden Dienstzugang:
      • Konsolenadministrator
    8. Wählen Sie dann einen der folgenden Plattformzugänge aus:
      • Operator
      • Bearbeiter
      • Administrator
    9. Klicken Sie auf Weiter.
    10. Optional können Sie eine Bedingung hinzufügen.
    11. Klicken Sie auf Überprüfung.
    12. Klicken Sie auf Hinzufügen.
    13. Prüfen Sie die seitliche Anzeige für die Zusammenfassung der Zugriffsberechtigungen und klicken Sie auf Zuweisen.

    Weitere Informationen zu den IAM-Rollen finden Sie unter Einführung in IAM.

  2. Die Images, die von IBM Cloud bereitgestellt werden, haben in der Regel keine Kennwörter. Um erfolgreich mit den Konsolen auf die Instanz zuzugreifen, müssen Sie möglicherweise ein Kennwort für ein Linux-Image erstellen oder das Kennwort für ein Windows-Image im Voraus abrufen.

Für die serielle Konsole können Sie getty für die automatische Anmeldung ohne Kennwort mit dem Flag -a root konfigurieren.

Um den seriellen Konsolenservice für angepasste Linux-Images zu aktivieren, stellen Sie sicher, dass das Argument console=ttyS0 in der Kernelbefehlszeile vorhanden ist. Weitere Informationen finden Sie unter Schritt 1-Mit einer einzelnen Imagedatei im qcow2 oder VHD-Format beginnen in Angepasstes Linux-Image erstellen.

Verbindung zu einer Konsole mit der IBM Cloud-Benutzerschnittstelle herstellen

Führen Sie die folgenden Schritte aus, um eine Verbindung zu einer Konsole über die IBM Cloud-Benutzerschnittstelle herzustellen.

  1. In der IBM Cloud Konsole gehen Sie auf Navigationsmenü SymbolMenü-Symbol > Infrastruktur VPC Symbol > Compute > Virtuelle Serverinstanz.
  2. Klicken Sie in der Liste Virtual Server-Instanzen für VPC auf die Überlaufschaltfläche der Instanz, auf die Sie zugreifen müssen, und klicken Sie anschließend auf VNC-Konsole öffnen oder Serielle Konsole öffnen. Alternativ klicken Sie auf der Seite mit Instanzdetails oben rechts auf Aktion und anschließend auf VNC-Konsole öffnen oder Serielle Konsole öffnen.
  3. (Nur für serielle Konsole) Wenn die serielle Konsole verwendet wird, werden Sie aufgefordert zu bestätigen, ob das Öffnen einer Sitzung erzwungen werden soll. Diese Aktion trennt die Verbindung zur Sitzung des anderen Benutzers.
  4. Geben Sie die Berechtigungsnachweise ein und folgen Sie den Eingabeaufforderungen, um sich bei Ihren Instanzen anzumelden.

Sie können die Instanz stoppen oder erneut starten, indem Sie oben rechts im Konsolenfenster auf Instanz beenden oder Instanz neu starten klicken.

Verbindung zu einer Konsole mit der API herstellen

Bevor Sie die API-Anforderungen zum Herstellen einer Verbindung zu einer VNC oder seriellen Konsole verwenden können, müssen Sie ein IAM-Token abrufen, den Endpunkt als Variable speichern und überprüfen, ob Sie über Zugriff auf den VPC-API-Service verfügen. Weitere Informationen finden Sie unter API-Voraussetzungen.

Verbindung zu einer VNC-Konsole mit der API herstellen

  1. Erstellen Sie ein Konsolenzugriffstoken für die Instanz. Geben Sie "console_type":"VNC" in den Nutzdaten an.

      curl -X POST \
      "$vpc_api_endpoint/v1/instances/$instance_id/console_access_token?version=2021-01-26&generation=2" \
      -H "Authorization: $iam_token" \
      -d '{
            "console_type": "vnc"
      	  }'
    

    Das Zugriffstoken ist nach 3 Minuten ungültig.

  2. Speichern Sie den Wert für "href" in der Antwort.

  3. Öffnen Sie das Portal noVNC in einem Browser.

  4. Klicken Sie auf Einstellung und erweitern Sie Erweitert > WebSocket.

  5. Markieren Sie die Option Verschlüsseln, fügen Sie den Abschnitt mit dem API-Endpunkt, den Sie in Schritt 2 gespeichert haben, unter Host: ein, schließen Sie "wss://" nicht ein, legen Sie für Port den Wert "443" fest, fügen Sie den Abschnitt mit dem URL-Pfad, den Sie in Schritt 2 gespeichert habe, unter Pfad ein.

    • Beispiel für einen API-Endpunkt: us-south.iaas.cloud.ibm.com
    • Beispielpfad: v1/instances/<instance_id>/console?access_token=<access_token>&version=2020-12-06&generation=2
  6. Klicken Sie auf Verbinden.

  7. Melden Sie sich bei der Instanz an.

Verbindung zu einer seriellen Konsole mit der API herstellen

  1. Erstellen Sie ein Konsolenzugriffstoken für die Instanz, geben Sie "console_type": "serial" und "force": true in den Nutzdaten an.

      curl -X POST \
      "$vpc_api_endpoint/v1/instances/$instance_id/console_access_token?version=2020-01-26&generation=2" \
      -H "Authorization: $token" \
      -d '{
         "console_type":"serial",
         "force": true
      }'
    

    Durch Angabe von "force" bis true können Sie eine Verbindung zur seriellen Konsole herstellen, auch wenn die Konsole von anderen Benutzern verwendet wird. Der Standardwert false bedeutet, dass die Verbindung nicht hergestellt werden kann, wenn die Konsole verwendet wird.

  2. Speichern Sie den Wert für "href" in der Antwort.

  3. Starten Sie das serielle Konsolenprogramm über die URL.

    Wenn Sie 'websocat' verwenden, geben Sie das Flag --binary in Ihrem Befehl an. Beispiel: websocat --binary "wss://us-south.iaas.cloud.ibm.com/v1/instances/<instance_id>/console?access_token=<access_token>&version=2020-12-06&generation=2"

  4. Geben Sie die Berechtigungsnachweise ein und folgen Sie den Eingabeaufforderungen, um sich bei Ihren Instanzen anzumelden.

Verbindung zu einer Konsole mit der Befehlszeilenschnittstelle herstellen

Stellen Sie sicher, dass Sie die CLI-Umgebung einrichten, indem Sie CLI-Voraussetzungen befolgen.

  1. Führen Sie den folgenden Befehl aus, um eine Verbindung zur Konsole herzustellen:

    ibmcloud is instance-console $instance_id [-q, --quiet]
    

    Dieser Befehl öffnet standardmäßig eine serielle Konsole. Wenn Sie ein VNC-Konsole öffnen wollen, fügen Sie das Flag [--vnc] zu dem Befehl hinzu, mit dem Sie die URL der Konsole abrufen.

  2. Führen Sie abhängig von der verwendeten Konsole einen der folgenden Schritte aus:

Verbindung zu einer Konsole unterbrechen

Wenn Sie mit der Konsole fertig sind, können Sie die Verbindung trennen, indem Sie das Terminal oder den Browser schließen.

Hinweise zum Konsolenservice

  1. Die Konsolsitzung läuft nach 10 Minuten Leerlaufzeit ab. Er wird nach 60 Minuten geschlossen, unabhängig von der Aktivität.

    Einige Betriebssysteme haben einen blinkenden Cursor auf der Konsole, z. B. Ubuntu 18.04. Wenn Sie die VNC-Konsole für den Zugriff auf Instanzen verwenden, die solche Betriebssysteme verwenden, bewirkt der blinkende Cursor, dass die Konsolensitzung aktiv bleibt, nachdem sie für 10 Minuten inaktiv war. Die Konsolensitzung wird unabhängig von der Aktivität nach 60 Minuten geschlossen.

  2. Die Konsole wird getrennt, wenn die Instanz ausgeschaltet ist. Sie können die Verbindung erst wiederherstellen, wenn die Instanz erneut gestartet wird.

  3. Bei einem Neustart, einer Zurücksetzung oder einer anderen Operation, die nicht zur Neuterminierung der Instanz führt, wird die Konsolenverbindung beibehalten.

  4. Die Anzahl aktiver VNC-Konsolen pro Instanz ist auf zwei begrenzt. Die Anzahl der aktiven seriellen Konsolen pro Instanz ist auf eine beschränkt.

  5. Informationen zur Fehlersuche bei einer virtuellen Linux über die serielle Konsole finden Sie unter Wie kann ich den Linux SysRq zur Fehlersuche bei einer virtuellen Linux über die serielle Konsole verwenden?