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
Résolution des erreurs
Lorsque vous rencontrez l'une des erreurs indexées suivantes, vous pouvez utiliser les solutions suivantes pour les résoudre.
Rubriques
- Impossible de démarrer l'environnement. Pour réessayer, actualisez le navigateur ou redémarrez en sélectionnant Actions, Redémarrer AWS CloudShell
- Impossible de démarrer l'environnement. Vous n'avez pas les autorisations requises. Demandez à votre administrateur IAM d'accorder l'accès à AWS CloudShell
- Impossible d'accéder à AWS CloudShell la ligne de commande
- Impossible d'envoyer un ping aux adresses IP externes
- Des problèmes sont survenus lors de la préparation de votre terminal
- Les touches fléchées ne fonctionnent pas correctement dans PowerShell
- Les Web Sockets non pris en charge empêchent le démarrage des sessions CloudShell
- Impossible d'importer le AWSPowerShell.NetCore module
- Docker n'est pas en cours d'exécution lors de l'utilisation AWS CloudShell
- Docker n'a plus d'espace disque
- docker pushle délai imparti est dépassé et continue de réessayer
- Impossible d'accéder aux ressources du VPC depuis mon environnement AWS CloudShell VPC
- L'ENI utilisé par AWS CloudShell mon environnement VPC n'est pas nettoyé
- Les utilisateurs CreateEnvironment autorisés à accéder uniquement aux environnements VPC ont également accès aux environnements publics AWS CloudShell
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
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.
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.
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
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
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
.
-
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
-
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'
-
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.
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.
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
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 push
le 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. (Actions → Supprimer CloudShell l'environnement).