Perché non riesco ad avviare l'Agente SSM nella mia istanza Amazon EC2 Windows?
Non riesco ad avviare l'Agente AWS Systems Manager (Agente SSM) nella mia istanza Amazon Elastic Compute Cloud (Amazon EC2) Windows.
Risoluzione
Nota: per determinare se un'istanza EC2 ha la configurazione richiesta per un nodo gestito, è consigliabile utilizzare ssm-cli versione 3.1.501.0 o successiva. Per ulteriori informazioni, consulta Risoluzione dei problemi relativi alla disponibilità dei nodi gestiti tramite ssm-cli.
Assicurati che il ruolo IAM abbia le autorizzazioni richieste
Il ruolo AWS Identity and Access Management (AWS IAM) dell'istanza deve avere le autorizzazioni necessarie per effettuare chiamate API all'endpoint di AWS Systems Manager. Collega la policy AmazonSSMManagedInstanceCore al ruolo o assicurati che la policy personalizzata includa tutte le autorizzazioni elencate in AmazonSSMManagedInstanceCore.
Inoltre, assicurati che la policy di attendibilità del ruolo consenta a ec2.amazonaws.com di assumere il ruolo.
Esempio di policy di attendibilità:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ec2.amazonaws.com", "ssm.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
Assicurati che l'Agente SSM possa accedere ai metadati dell'istanza
L'Agente SSM deve comunicare con il servizio di metadati dell'istanza per ottenere le informazioni necessarie sull'istanza. Per accedere ai metadati dell'istanza, utilizza il browser all'interno dell'istanza in esecuzione.
Se utilizzi il servizio di metadati di istanza versione 2 (IMDSv2), esegui questo comando in base al sistema operativo.
Linux:
TOKEN=curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600" \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/
Windows:
[string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} -Method PUT -Uri http://169.254.169.254/latest/api/token Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} -Method GET -Uri http://169.254.169.254/latest/meta-data/
Nota: per ulteriori informazioni, consulta Funzionamento del servizio di metadati di istanza versione 2.
Se non riesci ad accedere ai metadati, esegui questo comando da Windows PowerShell o dal prompt dei comandi:
route print
Nell'output, verifica che sia presente una route per 169.254.169.254.
Esempio di output:
Persistent Routes: Network Address Netmask Gateway Address Metric 169.254.169.254 255.255.255.255 172.31.16.1 15 169.254.169.250 255.255.255.255 172.31.16.1 15 169.254.169.251 255.255.255.255 172.31.16.1 15 169.254.169.249 255.255.255.255 172.31.16.1 15 169.254.169.123 255.255.255.255 172.31.16.1 15 169.254.169.253 255.255.255.255 172.31.16.1 15
Se la route manca o se l'indirizzo del gateway non corrisponde alla sottorete corrente, intraprendi una delle seguenti azioni:
-
Esegui questo comando per aggiungere manualmente la route:
route add -p 169.254.169.254 mask 255.255.255.255 0.0.0.0Nota: sostituisci 0.0.0.0 con l'indirizzo del gateway della tua istanza.
-
Se l'istanza utilizza EC2Launch v1, esegui questo comando da una sessione di Windows PowerShell con privilegi elevati per aggiungere le route dei metadati:
import-Module c:\ProgramData\Amazon\EC2-Windows\Launch\Module\Ec2Launch.psm1 ; Add-Routes -
Se l'istanza utilizza EC2Launch v2 o EC2Config, esegui questo comando per riavviare i servizi:
Restart-Service -Name EC2LaunchNota: il comando precedente imposta route statiche non persistenti per raggiungere il servizio di metadati.
Se la route esiste ma l'istanza non è in grado di recuperare i metadati, verifica che la configurazione del firewall o dell'antivirus dell'istanza non neghi esplicitamente il traffico verso 169.254.169.254. Per ulteriori informazioni, consulta Come posso risolvere l'errore "Waiting for the metadata service" della mia istanza Amazon EC2 per Windows?
Assicurati che l'istanza possa connettersi agli endpoint richiesti
Per verificare che l'istanza possa connettersi agli endpoint di Systems Manager sulla porta 443, esegui questi comandi di Windows PowerShell:
Test-NetConnection ssm.RegionID.amazonaws.com -port 443
Test-NetConnection ec2messages.RegionID.amazonaws.com -port 443
Test-NetConnection ssmmessages.RegionID.amazonaws.com -port 443
Nota: sostituisci RegionID con la Regione AWS dell'istanza.
Se l'istanza non riesce a connettersi alla porta 443, intraprendi le seguenti azioni in base al tipo di sottorete in cui si trova l'istanza.
Sottoreti pubbliche
Systems Manager dispone di endpoint pubblici, pertanto l'istanza deve utilizzare un gateway Internet per accedere a Internet. Assicurati che la tabella di routing dell'istanza contenga una route verso Internet. Inoltre, verifica che i gruppi di sicurezza di Amazon Virtual Private Cloud (Amazon VPC) e le liste di controllo degli accessi alla rete (ACLrete) consentano connessioni in uscita sulla porta 443.
Sottoreti private
Per le sottoreti private, l'istanza deve utilizzare un gateway NAT per accedere a Internet. Oppure devi configurare gli endpoint Amazon VPC per raggiungere gli endpoint di Systems Manager.
Per ulteriori informazioni sui requisiti di configurazione di rete, consulta Perché Systems Manager non mostra la mia istanza Amazon EC2 come istanza gestita?
Controlla le impostazioni del proxy
Se utilizzi proxy, Systems Manager valuta e applica le impostazioni del proxy alla configurazione dell'agente all'avvio dell'Agente SSM. Assicurati di aver configurato correttamente l'Agente SSM per l'utilizzo di un proxy.
Aggiorna l'Agente SSM
È consigliabile scaricare e installare la versione più recente dell'Agente SSM. Per trovare le versioni più recenti dell'Agente SSM, consulta le versioni di aws/amazon-ssm-agent sul sito web GitHub.
Risolvi ulteriori problemi
Se l'istanza non riesce ancora ad avviare l'agente, visualizza i log dell'Agente SSM per individuare gli errori da risolvere.
- Argomenti
- Compute
- Lingua
- Italiano
