Accès aux instances de serveur virtuel à l'aide de consoles VNC ou en série
Vous pouvez accéder à votre instance de serveur virtuel IBM Cloud en vous connectant à une console VNC ou à une console série à l'aide de l'interface utilisateur IBM Cloud, de demandes d'API ou de l'interface de ligne de commande IBM Cloud (CLI). Le service de console est une façon simple et rapide d'interagir avec l'instance sans utiliser de shell sécurisé.
Pour les serveurs virtuels d' z/OS s et les instances de serveurs virtuels utilisant uniquement le traitement confidentiel TDX : la connexion d'une instance de serveur virtuel d' z/OS s ou de traitement confidentiel TDX à une console VNC n'est pas prise en charge.
Il s'applique en cas d'échec d'amorçage ou de panne de noyau, notamment lorsque vous utilisez une image personnalisée. Vous pouvez alors utiliser le service de console pour examiner le problème.
La console VNC fournit une interface graphique et accepte les entrées de la souris et du clavier. La console série fournit une console texte qui accepte les entrées du clavier.
Vous pouvez utiliser la console pour accéder à des procédures de chargement et d'amorçage du système d'exploitation comme GNU GRand Unified Bootloader (GRUB).
Vous pouvez ouvrir la console à l'aide de l'un des navigateurs pris en charge.
Avant de commencer
- Pour vous connecter aux consoles, vous devez disposer des rôles
Console Administrator(Operatorou supérieurs) et pour l'instance de serveur virtuel dans IBM Cloud® Identity and Access Management (IAM).
Console Administrator n'est pas appliqué automatiquement. Si vous êtes un administrateur de votre compte, vous devez également vous attribuer le rôle Console Administrator pour pouvoir utiliser cette fonctionnalité.
Pour vérifier si les rôles requis vous ont été attribués, accédez à la page [Utilisateurs IAM](/iam/users){: external} de la console IBM Cloud, sélectionnez votre compte sous **Utilisateur**, puis sélectionnez **Politiques d'accès**. Assurez-vous qu’une politique d’accès vous attribue le rôle ( `Operator` ou un rôle supérieur) et le rôle `VirtualServerConsoleAdmin` aux **attributs** de ressource de l’instance de serveur virtuel cible. Si tel n'est pas le cas, vous devez contacter un administrateur de votre compte pour qu'il vous affecte les rôles en procédant comme suit :
1. Accédez à la page [Utilisateurs IAM](/iam/users){: external} dans la console d’ IBM Cloud, puis sélectionnez l’utilisateur cible.
1. Cliquez sur l'onglet **Accès** et faites défiler jusqu'à **Politiques d'accès**.
1. Cliquez sur **Affecter un accès**.
1. Allez jusqu'à la section **Créer une politique**.
1. Dans la section **Service**, sélectionnez _Services d'infrastructure VPC_. Ensuite, cliquez sur **Suivant**.
1. Dans la section **Ressources**, sélectionnez _Toutes les ressources_.
1. Dans la section **Rôles et actions**, sélectionnez l'accès au service suivant :
- Administrateur de la console
1. Sélectionnez ensuite l'un des accès à la plateforme suivants :
- Opérateur
- Editeur
- Administrateur
1. Cliquez sur **Suivant**.
1. Il est possible d'ajouter une condition.
1. Cliquez sur **Vérifier**.
1. Cliquez sur **Ajouter**.
1. Consultez le panneau latéral **Récapitulatif des accès**, puis cliquez sur **Affecter**.
Pour plus d'informations sur les rôles IAM, voir [Initiation à IAM](/docs/vpc?topic=vpc-iam-getting-started).
{: tip}
-
Les images fournies par IBM Cloud ne possèdent généralement pas de mots de passe. Pour accéder à l'instance avec les consoles, il se peut que vous deviez créer un mot de passe pour une image Linux ou extraire le mot de passe d'une image Windows au préalable.
-
Pour les images Linux, connectez-vous à l'instance en suivant les instructions de la rubrique Connexion aux instances Linux. Sur l'instance, créez un mot de passe local à l'aide de la commande suivante :
sudo passwd $(whoami) -
Pour les images Windows, procurez-vous le mot de passe en suivant les instructions de la rubrique Connexion à des instances Windows.
-
Pour les images z/OS, procurez-vous le mot de passe suivant: Connexion à des instances z/OS.
-
Pour la console série, vous pouvez configurer getty pour qu'il se connecte automatiquement sans mot de passe à l'aide de l'indicateur -a root.
Pour activer le service de console série pour les images Linux personnalisées, assurez-vous que l'argument console=ttyS0 est présent sur la ligne de commande du noyau. Pour plus d'informations, consultez l'étape 1 – Commencer avec un fichier image unique au format qcow2 ou VHD dans la section Création d'une image personnalisée d' Linux.
Utilisation de l'interface utilisateur d'IBM Cloud pour se connecter à une console
Procédez comme suit pour vous connecter à une console à l'aide de l'interface utilisateur IBM Cloud.
- Dans la console IBM Cloud console, allez dans Menu de navigation icône
> Infrastructure
> Compute > Instance de serveur virtuel.
- Dans la liste des instances de serveur virtuel pour VPC, cliquez sur le menu déroulant dynamique de l'instance à laquelle vous devez accéder, puis cliquez sur Open VNC Console ou Open serial Console. Vous pouvez également, dans la page des détails de l'instance, cliquer sur Action dans le coin supérieur droit, puis cliquer sur Open VNC Console ou Open Serial Console.
- (Pour la console série uniquement) Si la console série est utilisée, vous êtes invité à confirmer qu'une session est ouverte. Cette action déconnecte la session de l'autre utilisateur.
- Entrez les données d'identification et suivez les invites pour vous connecter à vos instances.
Vous pouvez arrêter ou redémarrer l'instance en cliquant sur Arrêter l'instance ou Redémarrer l'instance dans la partie supérieure droite de la fenêtre de la console.
Utilisation de l'API pour se connecter à une console
Pour pouvoir utiliser les demandes d'API pour vous connecter à une console VNC ou en série, vous devez obtenir un jeton IAM, stocker le point d'extrémité en tant que variable et vérifier que vous avez accès au service d'API de VPC. Pour plus d'informations, voir Configuration requise pour l'API.
Utilisation de l'API pour se connecter à une console VNC
-
Créez un jeton d'accès à la console pour l'instance. Indiquez
"console_type":"VNC"dans le contenu.curl -X POST \ "$vpc_api_endpoint/v1/instances/$instance_id/console_access_token?version=2021-01-26&generation=2" \ -H "Authorization: Bearer $iam_token" \ -d '{ "console_type": "vnc" }'Le jeton d'accès n'est plus valide après trois minutes.
-
Sauvegardez la valeur de "href" dans la réponse.
-
Ouvrez le portail noVNC dans un navigateur.
-
Cliquez sur Paramètre et développez Avancé > WebSocket.
-
Cochez Encrypt, collez la portion du point d'extrémité d'API de l'URL que vous avez sauvegardée à l'étape 2 dans Host:, n'incluez pas "wss://", définissez Port sur "443", collez la portion de chemin de l'URL que vous avez sauvegardée à l'étape 2 dans Path.
- Exemple de point d'extrémité d'API :
us-south.iaas.cloud.ibm.com - Exemple de chemin d'accès :
v1/instances/<instance_id>/console?access_token=<access_token>&version=2020-12-06&generation=2
- Exemple de point d'extrémité d'API :
-
Cliquez sur Connecter.
-
Connectez-vous à l'instance.
Utilisation de l'API pour se connecter à une console en série
-
Créez un jeton d'accès de console pour l'instance, spécifiez
"console_type": "serial"et"force": truedans le contenu.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 }'En spécifiant
"force"surtrue, vous pouvez vous connecter à la console série, même lorsque la console est utilisée par d'autres utilisateurs. La valeur par défaut estfalse, ce qui signifie que la connexion ne peut pas être établie si la console est en cours d'utilisation. -
Sauvegardez la valeur de "href" dans la réponse.
-
Démarrez votre programme de console série en utilisant l'URL.
Si vous utilisez websocat, spécifiez l'indicateur
--binarydans votre commande. Par exemple :websocat --binary "wss://us-south.iaas.cloud.ibm.com/v1/instances/<instance_id>/console?access_token=<access_token>&version=2020-12-06&generation=2" -
Entrez les données d'identification et suivez les invites pour vous connecter à vos instances.
Utilisation de l'interface de ligne de commande pour se connecter à une console
Vérifiez que vous avez configuré l'environnement CLI en suivant les prerequis pour la CLI.
-
Exécutez la commande suivante pour vous connecter à une console :
ibmcloud is instance-console $instance_idCette commande ouvre une console série par défaut. Pour ouvrir une console VNC, ajoutez l'indicateur
[--vnc]à la commande pour extraire l'URL de la console. -
Selon la console que vous utilisez, effectuez l'une des opérations suivantes :
- Pour les consoles VNC, suivez la procédure entre l'étape 2 et l'étape 7 de la rubrique Utilisation de l'API pour se connecter à une console VNC.
- Pour les consoles série, entrez les données d'identification et suivez les invites pour vous connecter à vos instances.
Déconnexion de la console
Une fois la console terminée, vous pouvez la déconnecter en fermant le terminal ou le navigateur.
Remarques sur le service de console
-
La session de console expire après 10 minutes d'inactivité. Elle se ferme après 60 minutes, quelle que soit l'activité.
Certains systèmes d'exploitation ont un curseur clignotant sur la console, par exemple, Ubuntu 18.04. Lorsque vous utilisez la console VNC pour accéder aux instances qui utilisent ces systèmes d'exploitation, le curseur clignotant permet à la session de la console de rester active après 10 minutes. La session de console se ferme après 60 minutes, quelle que soit l'activité.
-
La console se déconnecte si l'instance est arrêtée. Vous ne pouvez pas rétablir la connexion tant que l'instance n'est pas redémarrée.
-
Le redémarrage, la réinitialisation ou toute autre opération qui n'entraîne pas de replanification de l'instance gère la connexion à la console.
-
Le nombre de consoles VNC actives par instance est limité à deux. Le nombre de consoles série actives par instance est limité à une.
-
Pour plus d'informations sur le dépannage d'une instance de serveur virtuel Linux à l'aide de la console série, voir Comment utiliser la clé Linux SysRq pour dépanner une instance de serveur virtuel Linux à partir de la console série ?