Pourquoi mon instance EC2 n'apparaît-elle pas sous Instances gérées dans la console Systems Manager ?

Date de la dernière mise à jour : 2021-06-21

Mon instance Amazon Elastic Compute Cloud (Amazon EC2) n'apparaît pas sous Instances gérées dans la console AWS Systems Manager.

Brève description

Une instance gérée est une instance Amazon EC2 configurée pour être utilisée avec Systems Manager. Les instances gérées peuvent utiliser les services Systems Manager tels que les fonctionnalités Run Command, Patch Manager et Session Manager.

Les instances doivent respecter les conditions suivantes pour être considérées comme des instances gérées :

  • Avoir un AWS Systems Manager Agent (SSM Agent) installé et en cours d'exécution.
  • Avoir une connectivité avec les points de terminaison Systems Manager à l'aide de l'Agent SSM.
  • Avoir le rôle AWS Identity and Access Management (IAM) adéquat assigné.
  • Avoir une connectivité au service de métadonnées des instances.

Vous pouvez également exécuter le document AWSSupport-TroubleshootManaged Systems Manager Automation pour vérifier si l'instance répond aux conditions préalables à répertorier en tant qu'instance gérée. Pour plus d'informations, consultez AWS Support-TroubleshootManageInstance.

Remarque : pour les instances hybrides, reportez-vous à Configuration d'AWS Systems Manager pour les environnements hybrides.

Solution

Remarque : veillez à sélectionner la région dans laquelle se trouve votre instance avant de résoudre ce problème.

Vérifiez que l'instance respecte les conditions suivantes :

L'agent SSM est installé et en cours d'exécution sur l'instance

Vérifiez que votre système d'exploitation est pris en charge par Systems Manager. Pour obtenir la liste des systèmes d'exploitation compatibles, consultez Systèmes d'exploitation compatibles.

L'agent SSM est préinstallé sur certaines Amazon Machine Images (AMI) Windows et Linux. Pour obtenir la liste des AMI sur lesquelles l'agent SSM est préinstallé, consultez :

Linux : Installation et configuration de l'agent SSM sur les instances EC2 pour Linux

Windows : Installation et configuration de l'Agent SSM sur les instances EC2 pour Windows Server

Si l'agent SSM n'est pas préinstallé, vous devez l'installer manuellement.

Linux : Installation manuelle de l'agent SSM sur des instances EC2 pour Linux

Windows : Installation manuelle de l'agent SSM sur des instances EC2 pour Windows Server

Pour vérifier l'état de l'agent SSM, utilisez les commandes suivantes :

Pour Amazon Linux, RHEL 6 (ou distributions similaires) :

$ sudo status amazon-ssm-agent

Pour Amazon Linux 2, Ubuntu, RHEL 7 (ou distributions similaires) :

$ sudo systemctl status amazon-ssm-agent

Pour les systèmes Ubuntu 18.04 ou version ultérieure qui utilisent snap :

$ sudo snap services amazon-ssm-agent

Pour Windows :

$ Get-Service AmazonSSMAgent

Vérification de la connectivité aux points de terminaison Systems Manager sur le port 443

La meilleure méthode pour vérifier la connectivité dépend de votre système d'exploitation.

Important : dans les exemples de commandes suivants, remplacez RegionID par votre ID de région AWS.

Pour obtenir la liste des points de terminaison Systems Manager par région, consultez Points de terminaison et quotas AWS Systems Manager.

Remarque : dans les exemples suivants, le point de terminaison ssmmessages est requis uniquement pour le Session Manager d'AWS Systems Manager.

Pour les instances EC2 Linux : Vous pouvez utiliser les commandes telnet ou netcat pour vérifier la connectivité aux points de terminaison sur le port 443.

Telnet

telnet ssm.RegionID.amazonaws.com 443
telnet ec2messages.RegionID.amazonaws.com 443
telnet ssmmessages.RegionID.amazonaws.com 443

Exemple de connexion réussie :

root@111800186:~# telnet ssm.us-east-1.amazonaws.com 443
Trying 52.46.141.158...
Connected to ssm.us-east-1.amazonaws.com.
Escape character is '^]'.

Pour quitter Telnet, maintenez la touche Ctrl enfoncée et appuyez sur la touche]. Saisissez quit, puis appuyez sur Entrée.

Netcat

nc -vz ssm.RegionID.amazonaws.com 443
nc -vz ec2messages.RegionID.amazonaws.com 443
nc -vz ssmmessages.RegionID.amazonaws.com 443

Remarque : Netcat n'est pas préinstallé sur les instances Amazon EC2. Pour installer manuellement Netcat, consultez la page Ncat sur le site web de Nmap.

Pour les instances EC2 Windows : vous pouvez utiliser les commandes Windows PowerShell suivantes pour vérifier la connectivité aux points de terminaison sur le port 443 :

Test-NetConnection ssm.RegionID.amazonaws.com -port 443
Test-NetConnection ec2messages.RegionID.amazonaws.com -port 443
Test-NetConnection ssmmessages.RegionID.amazonaws.com -port 443

Pour les sous-réseaux publics : les points de terminaison Systems Manager sont des points de terminaison publics. Cela signifie que votre instance doit pouvoir accéder à Internet à l'aide d'une passerelle Internet. Pour les problèmes de connexion aux points de terminaison à partir d'instances d'un sous-réseau public, confirmez les points suivants :

Pour les sous-réseaux privés : pour les sous-réseaux privés, votre instance doit pouvoir accéder à Internet à l'aide d'une passerelle NAT. Ou, vous pouvez configurer les points de terminaison d'un VPC pour atteindre les points de terminaison Systems Manager pour les instances d'un sous-réseau privé. Cela vous permet d'accéder en privé aux API Amazon EC2 et Systems Manager à l'aide d'adresses IP privées. Pour plus d'informations, consultez Comment créer les points de terminaison d'un VPC pour utiliser Systems Manager afin de gérer les instances EC2 privées sans accès à Internet ?

Remarque : chaque point de terminaison d'interface crée une interface réseau Elastic sur le sous-réseau fourni.

En tant que bonne pratique en matière de sécurité pour les sous-réseaux privés, assurez-vous que les règles suivantes sont en place :

  • Le groupe de sécurité attaché à l'interface réseau utilisée par le point de terminaison d'un VPC autorise le port 443 entrant à partir du groupe de sécurité attaché à votre instance.
  • Le groupe de sécurité attaché à votre instance autorise le port 443 sortant vers l'adresse IP privée de l'interface réseau utilisée par le point de terminaison d'un VPC.

Vérifier que le rôle IAM adéquat est assigné à l'instance

Pour effectuer des appels d'API à un point de terminaison Systems Manager, vous devez attacher la politique d'autorisations AmazonSSMManagedInstanceCore au rôle IAM attaché à votre instance. Si vous utilisez une politique IAM personnalisée, vérifiez que votre politique personnalisée utilise les autorisations qui figurent sous AmazonSSMManagedInstanceCore. Assurez-vous également que la stratégie d'approbation du rôle IAM permet à ec2.amazonaws.com d'assumer ce rôle.

Pour plus d'informations, consultez Ajout d'autorisations à un profil d'instance Systems Manager (console).

Vérifier la connectivité au service de métadonnées des instances

L'agent SSM doit pouvoir communiquer avec le service de métadonnées de l'instance pour obtenir les informations nécessaires concernant l'instance. Utilisez la commande Netcat pour tester la connexion :

nc -vz 169.254.169.254 80

Si vous utilisez un proxy sur l'instance, ce dernier peut bloquer la connectivité à l'URL des métadonnées. Assurez-vous que vous avez configuré l'agent SSM pour qu'il fonctionne avec un proxy. Pour configurer l'agent SSM pour utiliser un proxy, consultez :

Windows : Configurer l'agent SSM pour utiliser un proxy pour les instances Windows

Linux : Configurer l'agent SSM pour utiliser un proxy

Dépannage

Si l'instance n'apparaît toujours pas en tant qu'instance gérée dans la console Systems Manager, reportez-vous aux journaux de l'agent SSM pour résoudre les problèmes suivants :

Windows : sous Windows, les journaux de l'Agent SSM se trouvent sous %PROGRAMDATA%\Amazon\SSM\Logs.

Linux : les journaux de l'agent SSM se trouvent dans /var/log/amazon/ssm.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?