Résolution des problèmes AWS CloudShell - AWS CloudShell

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Résolution des problèmes AWS CloudShell

Lors de l'utilisation AWS CloudShell, vous pouvez rencontrer des problèmes, par exemple lorsque vous lancez CloudShell ou effectuez des tâches clés à l'aide de l'interface de ligne de commande du shell. Les informations présentées dans ce chapitre expliquent comment résoudre certains des problèmes courants que vous pourriez rencontrer.

Pour obtenir des réponses à diverses questions sur CloudShell, consultez les AWS CloudShell FAQ. Vous pouvez également rechercher des réponses et poser des questions dans le forum de AWS CloudShell discussion. Lorsque vous accédez à ce forum, vous devrez peut-être vous connecter à AWS. Vous pouvez également nous contacter directement.

Résolution des erreurs

Lorsque vous rencontrez l'une des erreurs indexées suivantes, vous pouvez utiliser les solutions suivantes pour les résoudre.

Impossible de démarrer l'environnement. Pour réessayer, actualisez le navigateur ou redémarrez en sélectionnant Actions, Redémarrer AWS CloudShell

Problème : Lorsque vous tentez AWS CloudShell de lancer depuis le AWS Management Console, l'accès vous est refusé, même après avoir obtenu les autorisations requises auprès de votre administrateur IAM et après avoir actualisé ou redémarré votre navigateur. CloudShell

Solution : contactez le AWS Support.

(haut de la page)

Impossible de démarrer l'environnement. Vous n'avez pas les autorisations requises. Demandez à votre administrateur IAM d'accorder l'accès à AWS CloudShell

Problème : Lorsque vous tentez AWS CloudShell de lancer depuis le AWS Management Console, l'accès vous est refusé et vous êtes informé que vous ne disposez pas des autorisations requises.

Cause : L'identité IAM que vous utilisez pour accéder AWS CloudShell ne dispose pas des autorisations IAM nécessaires.

Solution : demandez à votre administrateur IAM de vous fournir les autorisations nécessaires. Ils peuvent le faire soit en ajoutant une stratégie AWS gérée attachée (AWSCloudShellFullAccess), soit en ajoutant une politique intégrée. Pour plus d’informations, consultez Gestion de AWS CloudShell l'accès et de l'utilisation à l'aide IAM de politiques.

(haut de la page)

Impossible d'accéder à AWS CloudShell la ligne de commande

Problème : après avoir modifié un fichier utilisé par l'environnement informatique, vous ne pouvez pas accéder à la ligne de commande dans AWS CloudShell.

Solution : Si vous perdez l'accès suite à une modification incorrecte .bashrc ou à tout autre fichier, vous pouvez AWS CloudShell rétablir ses paramètres par défaut en supprimant votre répertoire personnel.

(haut de la page)

Impossible d'envoyer un ping aux adresses IP externes

Problème : Lorsque vous exécutez une commande ping depuis la ligne de commande (par exemple,ping amazon.com), vous recevez le message suivant.

ping: socket: Operation not permitted

Cause : L'utilitaire ping utilise le protocole ICMP (Internet Control Message Protocol) pour envoyer des paquets de requêtes d'écho à un hôte cible. Il attend la réponse d'un écho de la cible. Le protocole ICMP n'étant pas activé dans AWS CloudShell, l'utilitaire ping ne fonctionne pas dans l'environnement informatique du shell.

Solution : ICMP n'étant pas pris en charge dans AWS CloudShell, vous pouvez exécuter la commande suivante pour installer Netcat. Netcat est un utilitaire de réseau informatique permettant de lire et d'écrire sur des connexions réseau via TCP ou UDP.

sudo yum install nc nc -zv www.amazon.com 443

(haut de la page)

Des problèmes sont survenus lors de la préparation de votre terminal

Problème : lorsque vous essayez d'accéder à l' AWS CloudShell aide du navigateur Microsoft Edge, vous ne pouvez pas démarrer de session shell et le navigateur affiche un message d'erreur.

Cause : AWS CloudShell n'est pas compatible avec les versions antérieures de Microsoft Edge. Vous pouvez y accéder AWS CloudShell en utilisant les quatre dernières versions majeures des navigateurs pris en charge.

Solution : installez une version mise à jour du navigateur Edge à partir du site Microsoft.

(haut de la page)

Les touches fléchées ne fonctionnent pas correctement dans PowerShell

Problème : En fonctionnement normal, vous pouvez utiliser les touches fléchées pour naviguer dans l'interface de ligne de commande et parcourir l'historique de vos commandes dans les deux sens. Toutefois, lorsque vous appuyez sur les touches fléchées dans certaines versions de PowerShell ON AWS CloudShell, les lettres peuvent être mal affichées.

Cause : La situation dans laquelle les touches fléchées affichent des lettres de manière incorrecte est un problème connu avec les versions PowerShell 7.2.x exécutées sous Linux.

Solution : pour supprimer les séquences d'échappement qui modifient le comportement des touches fléchées, modifiez le fichier de PowerShell profil et définissez la $PSStyle variable surPlainText.

  1. Dans la ligne de AWS CloudShell commande, entrez la commande suivante pour ouvrir le fichier de profil.

    vim ~/.config/powershell/Microsoft.PowerShell_profile.ps1
    Note

    Si vous êtes déjà connecté PowerShell, vous pouvez également ouvrir le fichier de profil dans l'éditeur à l'aide de la commande suivante.

    vim $PROFILE
  2. Dans l'éditeur, allez à la fin du texte existant du fichier, appuyez sur i pour passer en mode Insertion, puis ajoutez l'instruction suivante.

    $PSStyle.OutputRendering = 'PlainText'
  3. Après avoir effectué la modification, appuyez sur Esc ce bouton pour passer en mode commande. Entrez ensuite la commande suivante pour enregistrer le fichier et quitter l'éditeur.

    :wq
Note

Vos modifications prendront effet au prochain démarrage PowerShell.

(haut de la page)

Les Web Sockets non pris en charge empêchent le démarrage des sessions CloudShell

Problème : Lorsque vous essayez de démarrer AWS CloudShell, vous recevez à plusieurs reprises le message suivant : Failed to open sessions : Timed out while opening the session

Cause : CloudShell dépend du WebSocket protocole, qui permet une communication interactive bidirectionnelle entre votre navigateur Web et AWS CloudShell. Si vous utilisez un navigateur sur un réseau privé, l'accès sécurisé à Internet est probablement facilité par des serveurs proxy et des pare-feux. WebSocket la communication peut généralement traverser les serveurs proxy sans problème. Mais, dans certains cas, les serveurs proxy ne WebSockets peuvent pas fonctionner correctement. Si ce problème se produit, CloudShell impossible de démarrer une session shell et la tentative de connexion finit par expirer.

Solution : Un délai d'expiration de connexion peut être dû à un problème autre qu'un problème non WebSockets pris en charge. Dans ce cas, actualisez d'abord la fenêtre du navigateur dans laquelle se trouve l'interface de ligne de CloudShell commande.

Si des erreurs de temporisation persistent après l'actualisation, consultez la documentation de votre serveur proxy. Assurez-vous également que votre serveur proxy est configuré pour autoriser les Web Sockets. Vous pouvez également contacter l'administrateur système de votre réseau.

Note

Supposons que vous souhaitiez définir des autorisations granulaires en autorisant la mise en liste d'URL spécifiques. Vous pouvez ajouter une partie de l'URL utilisée par la AWS Systems Manager session pour ouvrir une WebSocket connexion afin d'envoyer des entrées et de recevoir des sorties. Vos AWS CloudShell commandes sont envoyées à cette session Systems Manager.

Le format utilisé par Systems Manager est wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output). StreamUrl

La région représente l'identifiant de région pour une Région AWS région prise en charge par AWS Systems Manager. Par exemple, us-east-2 est l'identifiant de région pour la région USA Est (Ohio).

L'identifiant de session étant créé après le démarrage réussi d'une session Systems Manager spécifique, vous ne pouvez le spécifier que wss://ssmmessages.region.amazonaws.com lorsque vous mettez à jour votre liste d'URL autorisées. Pour plus d'informations, consultez le StartSessionfonctionnement dans la référence de l'AWS Systems Manager API.

(haut de la page)

Impossible d'importer le AWSPowerShell.NetCore module

Problème : Lorsque vous importez le AWSPowerShell. NetCoremodule in PowerShell byImport-Module -Name AWSPowerShell.NetCore, vous recevez le message d'erreur suivant :

Import-Module : le module spécifié '. AWSPowerShell NetCore'n'a pas été chargé car aucun fichier de module valide n'a été trouvé dans aucun répertoire de modules.

Cause : Le AWSPowerShell.NetCore module est remplacé par les modules AWS.Tools par service dans. AWS CloudShell

Solution : Il est possible que les instructions d'importation explicites ne soient plus requises ou qu'il soit nécessaire de les remplacer par le module AWS.Tools par service correspondant.

  • Dans la plupart des cas, tant qu'aucun type .Net n'est utilisé, aucune instruction d'importation explicite n'est nécessaire. Vous trouverez ci-dessous des exemples de déclarations d'importation.

    • Get-S3Bucket

    • (Get-EC2Instance).Instances

  • Si des types .Net sont utilisés, importez le module de niveau de service ()AWS.Tools.<Service>. Voici un exemple de syntaxe.

    Import-Module -Name AWS.Tools.EC2 $InstanceTag = [Amazon.EC2.Model.Tag]::new("Environment","Dev")
    Import-Module -Name AWS.Tools.S3 $LifecycleRule = [Amazon.S3.Model.LifecycleRule]::new()

Pour plus d'informations, consultez l'annonce de la version 4 du AWS Tools for PowerShell.

(haut de la page)

Docker n'est pas en cours d'exécution lors de l'utilisation AWS CloudShell

Problème : Docker ne fonctionne pas correctement lors de l'utilisation AWS CloudShell. Le message d'erreur suivant s'affiche : docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

Solution : essayez de redémarrer votre environnement. Ce message d'erreur peut se produire lorsque vous exécutez Docker AWS CloudShell dans une région qui ne le prend pas en charge. Assurez-vous d'exécuter Docker dans une région prise en charge. Pour plus d'informations sur les régions avec lesquelles l'utilisation de conteneurs Docker est prise en charge AWS CloudShell, consultez la section Régions Docker.

Docker n'a plus d'espace disque

Problème : Vous recevez le message d'erreur suivant : ERROR: failed to solve: failed to register layer: write [...]: no space left on device

Cause : Le Dockerfile dépasse l'espace disque disponible en. AWS CloudShell Cela peut être dû à de grandes images individuelles ou à un trop grand nombre d'images Docker préexistantes.

Solution : Exécutez df -h pour connaître l'utilisation du disque. Exécutez sudo du -sh /folder/folder1 pour évaluer la taille de certains dossiers qui vous semblent volumineux et envisagez de supprimer d'autres fichiers pour libérer de l'espace. Une option serait d'envisager de supprimer les images Docker inutilisées en exécutantdocker rmi. Vous devez savoir que Docker dispose d'un espace limité dans l'environnement. Pour plus d'informations sur Docker, consultez le guide de documentation Docker.

docker pushle délai imparti est dépassé et continue de réessayer

Problème : Lorsque vous l'exécutezdocker push, le délai imparti est expiré et continue de réessayer sans succès.

Cause : Cela peut être dû à des autorisations manquantes, à un transfert vers le mauvais référentiel ou à un manque d'authentification.

Solution : Pour essayer de résoudre ce problème, assurez-vous d'effectuer le transfert vers le bon référentiel. Exécutez docker login pour vous authentifier correctement. Assurez-vous de disposer de toutes les autorisations requises pour le transfert vers un référentiel Amazon ECR.

Impossible d'accéder aux ressources du VPC depuis mon environnement AWS CloudShell VPC

Problème : Impossible d'accéder aux ressources du VPC lorsque j'utilise mon environnement VPC. AWS CloudShell

Cause : Votre environnement AWS CloudShell VPC hérite des paramètres réseau de votre VPC.

Solution : Pour résoudre ce problème, assurez-vous que votre VPC est correctement configuré pour accéder à vos ressources. Pour plus d'informations, consultez la documentation VPC Connect your VPC to other networks et la documentation Network Access Analyzer Network Access Analyzer. Vous pouvez trouver l'adresse IPv4 utilisée par l'environnement AWS CloudShell VPC en exécutant la `ip -a` commande dans votre environnement dans l'invite de ligne de commande ou sur la page de la console VPC.

L'ENI utilisé par AWS CloudShell mon environnement VPC n'est pas nettoyé

Problème : Impossible de nettoyer l'ENI utilisé par AWS CloudShell mon environnement VPC.

Cause : ec2:DeleteNetworkInterface l'autorisation n'est pas activée pour votre rôle.

Solution : pour résoudre ce problème, assurez-vous que ec2:DeleteNetworkInterface l'autorisation est activée pour votre rôle, comme indiqué dans l'exemple de script suivant :

{ "Effect": "Allow", "Action": [ "ec2:DeleteNetworkInterface" ], "Condition": { "StringEquals": { "aws:ResourceTag/ManagedByCloudShell": "" } }, "Resource": "arn:aws:ec2:*:*:network-interface/*" }

Les utilisateurs CreateEnvironment autorisés à accéder uniquement aux environnements VPC ont également accès aux environnements publics AWS CloudShell

Problème : les utilisateurs CreateEnvironment autorisés uniquement à accéder aux environnements VPC peuvent également accéder aux environnements publics AWS CloudShell .

Cause : Lorsque vous limitez CreateEnvironment les autorisations pour la création d'environnements VPC uniquement et si vous avez déjà créé un environnement public, vous conservez votre accès à l'environnement public existant jusqu'à ce que cet CloudShell environnement soit supprimé à l'aide de l'interface utilisateur Web. Mais si vous ne l'avez jamais utilisé CloudShell auparavant, vous n'aurez pas accès aux environnements publics.

Solution : pour restreindre l'accès aux AWS CloudShell environnements publics, l'administrateur IAM doit d'abord mettre à jour la politique IAM avec la restriction, puis l'utilisateur doit supprimer manuellement l'environnement public existant à l'aide de l'interface utilisateur AWS CloudShell Web. (ActionsSupprimer CloudShell l'environnement).