Perché la mia istanza di AWS OpsWorks Stacks non si avvia ed è bloccata nello stato "start_failed"?

Ultimo aggiornamento: 29/12/2021

Una delle istanze Amazon Elastic Compute Cloud (Amazon EC2) gestite da AWS OpsWorks Stacks è bloccata nello stato "start_failed". Perché la mia istanza di OpsWorks Stacks non entra nello stato "online" e come posso risolvere il problema?

Breve descrizione

Un'istanza di OpsWorks Stacks può entrare nello stato start_failed e non avviarsi durante un evento del ciclo di vita dell'installazione per una serie di motivi. Tuttavia, il problema è in genere il risultato di un problema di rete.

Per risolvere il problema, verifica innanzitutto se l'istanza EC2 è in grado di connettersi al servizio OpsWorks Stacks. Se non è presente alcuna connessione, consulta la sezione Se l'istanza EC2 non riesce a connettersi al servizio OpsWorks Stacks di questo articolo. Se è presente una connessione, consulta la sezione Se l'istanza EC2 può connettersi al servizio OpsWorks Stacks di questo articolo.

Nota: per le istanze bloccate nello stato setup_failed, vedi Perché la mia istanza di AWS OpsWorks Stacks non si avvia e si blocca nello stato "setup_failed"?

Risoluzione

Verifica se la tua istanza EC2 è in grado di connettersi al servizio OpsWorks Stacks

1.    Accedi alla tua istanza Amazon EC2.

2.    Inviare una richiesta di test all'endpoint OpsWorks associato all'istanza eseguendo il seguente comando netcat (nc) utilizzando l'interfaccia a riga di comando (CLI) di Linux:

Importante: sostituisci opsworks.us-east-1.amazonaws.com con l'endpoint OpsWorks Stacks che stai utilizzando.

nc -vz opsworks.us-east-1.amazonaws.com 443

Se l'istanza EC2 è in grado di connettersi al servizio OpsWorks Stacks, l'output del comando è simile al seguente:

Ncat: Connected to <ipaddress>

Nota: se netcat non è installato sull'istanza EC2, installa manualmente il pacchetto netcat sull'istanza eseguendo il seguente comando:

sudo yum install -y nc

Se l'istanza EC2 non riesce a connettersi al servizio OpsWorks Stacks

Se un gateway NAT fornisce l'accesso a Internet all'istanza EC2

Segui le istruzioni in Perché le mie istanze EC2 non possono accedere a Internet utilizzando un gateway NAT?

Se un gateway Internet fornisce l'accesso a Internet all'istanza EC2

Segui le istruzioni in Perché la mia istanza EC2 non si può connettere a Internet utilizzando un gateway Internet?

Se un'istanza NAT fornisce l'accesso Internet all'istanza EC2

Apri la console EC2 e verifica quanto segue:

  • L'istanza NAT è in esecuzione.
    Nota: se l'istanza NAT non è in esecuzione, cambia lo stato a in esecuzione.
  • L'istanza NAT sta superando i controlli dell'integrità.
    Nota: se l'istanza NAT non sta superando i controlli dell'integrità, procedi come segue: Crea una nuova istanza NAT. Quindi, associa la nuova istanza NAT alla tua istanza EC2 nella tabella di routing dell'istanza NAT.
  • L'istanza EC2 si trova in un Amazon Virtual Private Cloud (Amazon VPC) di default.
    Nota: un'istanza EC2 gestita da OpsWorks Stacks entra sempre nello stato start_failed se viene avviata al di fuori di un Amazon VPC di default.

Per ulteriori informazioni, consulta Visualizza i controlli dello stato.

Se un endpoint VPC fornisce l'accesso a Internet all'istanza EC2

  • Verifica che gli endpoint VPC siano corretti e raggiungibili all'interno dell'Amazon VPC in uso effettuando le seguenti operazioni:
    Apri la console Amazon VPC.
    Nel pannello di navigazione, in Virtual Private Cloud, scegli Endpoint.
    Quindi, controlla gli endpoint VPC associati all'istanza EC2 per assicurarti che siano corretti e raggiungibili.
  • Verifica che gli endpoint VPC siano in grado di completare le operazioni richieste da Amazon Simple Storage Service (Amazon S3).

Se l'istanza EC2 può connettersi al servizio OpsWorks Stacks

Controlla le autorizzazioni IAM dell'istanza EC2

Verifica che esista un ruolo AWS Identity and Access Management (IAM) per il profilo dell'istanza e che includa tutte le autorizzazioni richieste.

Se non è disponibile un ruolo IAM per il profilo dell'istanza, procedi come segue:

1.    Arresta l'istanza.

2.    Scollega il ruolo del profilo dell'istanza dall'istanza EC2 effettuando le seguenti operazioni:
Nella console EC2, scegli Istanze. Quindi, seleziona la tua istanza EC2.
Scegli la scheda Operazioni, poi Sicurezza e quindi Modifica ruolo IAM.
Scegli Nessun ruolo IAM. Quindi, scegli Salva.

3.    Sostituisci il profilo dell'istanza utilizzando l'istanza EC2 esistente.
-oppure-
Sostituisci l'istanza EC2 in OpsWorks Stacks.

Nota: per ulteriori informazioni su come sostituire un'istanza EC2 in OpsWorks Stacks, consulta Aggiunta di un'istanza a un livello.

Per le istanze EC2 supportate da Amazon Elastic Block Store (Amazon EBS), verifica che il volume del dispositivo di root dell'istanza non sia pieno

Per istruzioni, vedi Visualizza lo spazio libero su disco per Linux o Visualizza lo spazio libero su disco per Windows.

Verifica che l'istanza EC2 utilizzi IMDSv1

Per verificare il servizio di metadati utilizzato dall'istanza e per riconfigurare l'istanza, se necessario, consulta Configura le opzioni dei metadati dell'istanza.

Nota: OpsWorks Stacks supporta solo Instance Metadata Service versione 1 (IMDSv1), non IMDsv2.

Per le istanze EC2 supportate da un'AMI personalizzata, verifica che l'AMI sia configurata correttamente

Per ulteriori informazioni, consulta Crea un Amazon Machine Image (AMI) Linux personalizzata da un'istanza di AWS OpsWorks Stacks.

Verifica che l'agente OpsWorks Stacks installato sull'istanza EC2 sia in esecuzione

1.    Accedi alla tua istanza Amazon EC2.

2.    Verifica che l'agente OpsWorks Stacks installato sull'istanza EC2 sia in esecuzione, eseguendo il seguente comando sulla CLI di Linux:

sudo service opsworks-agent status

Se l'agente OpsWorks Stacks è in esecuzione, l'output del comando è simile al seguente:

Active: active (running)

Se l'agente OpsWorks Stacks non è in esecuzione, l'output del comando è simile al seguente:

Active: inactive (dead)

Se l'agente OpsWorks Stacks non è in esecuzione, avvia l'agente eseguendo il seguente comando:

sudo service opsworks-agent start

Controlla i registri CloudTrail della tua istanza EC2 per verificare la presenza di errori "Client.UnauthorizedOperation"

Esamina le chiamate API dell'istanza di OpsWorks Stacks registrate in AWS CloudTrail. Cerca gli eventiRunInstances EC2 che hanno restituito il seguente messaggio di errore: Client.UnauthorizedOperation.

Se il messaggio di errore viene visualizzato nel CloudTrail della tua istanza, consulta il seguente articolo: Come posso risolvere il messaggio di errore di autorizzazione codificato quando provo a ripristinare un'istanza Amazon EC2 utilizzando AWS Backup?

Se l'istanza EC2 è assegnata a più di un livello, assicurati che ogni livello abbia le stesse impostazioni di rete

Per ulteriori informazioni, consulta Aggiungi un'istanza a un livello.


Questo articolo è stato utile?


Hai bisogno di supporto tecnico o per la fatturazione?