Risoluzione dei problemi relativi alle istanze - AWS CodeDeploy

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risoluzione dei problemi relativi alle istanze

I tag devono essere impostati correttamente

Utilizza il list-deployment-instancescomando per confermare che le istanze utilizzate per una distribuzione siano etichettate correttamente. Se nell'output manca un'EC2istanza, usa la EC2 console per confermare che i tag sono stati impostati sull'istanza. Per ulteriori informazioni, consulta Lavorare con i tag nella console nella Amazon EC2 User Guide.

Nota

Se tagghi un'istanza e la utilizzi immediatamente CodeDeploy per distribuirvi un'applicazione, l'istanza potrebbe non essere inclusa nella distribuzione. Questo perché possono essere necessari diversi minuti prima di CodeDeploy poter leggere i tag. Consigliamo di attendere almeno cinque minuti prima di provare a eseguire la distribuzione in un'istanza dopo averla contrassegnata.

AWS CodeDeploy l'agente deve essere installato e in esecuzione sulle istanze

Per verificare che l' CodeDeploy agente sia installato e in esecuzione su un'istanza, vedereVerifica che l' CodeDeploy agente sia in esecuzione.

Per installare, disinstallare o reinstallare l' CodeDeploy agente, consultaInstalla l' CodeDeploy agente.

Quando un'istanza viene terminata durante una distribuzione, la distribuzione continua senza errori per un'ora

CodeDeploy offre una finestra di un'ora per il completamento di ogni evento del ciclo di vita della distribuzione. Ciò consente ampio margine per l'esecuzione di script di lunga durata.

Se gli script non vengono eseguiti fino al completamento mentre è in corso un evento del ciclo di vita (ad esempio, se un'istanza viene terminata o l' CodeDeploy agente viene chiuso), potrebbe essere necessaria fino a un'ora prima che lo stato della distribuzione venga visualizzato come Non riuscito. Ciò accade anche se il periodo di timeout specificato nello script è inferiore a un'ora. Questo perché quando l'istanza viene terminata, l' CodeDeploy agente si spegne e non può elaborare altri script.

Se invece un'istanza viene terminata tra un evento e l'altro del ciclo di vita, o prima che inizi la prima fase dell'evento del ciclo di vita, il timeout si verifica dopo soli cinque minuti.

Analisi dei file di log per individuare gli errori di distribuzione nelle istanze

Se lo stato di un'istanza nella distribuzione è diverso da Succeeded, è possibile esaminare i dati del file di log di distribuzione per identificare il problema. Per informazioni su come accedere ai dati del log di distribuzione, consulta Visualizzazione dei dati di registro per le distribuzioni CodeDeploy EC2/on-premise.

Crea un nuovo file di CodeDeploy registro se è stato eliminato accidentalmente

Se si elimina accidentalmente il file di registro di distribuzione su un'istanza, CodeDeploy non crea un file di registro sostitutivo. Per creare un nuovo file di log, effettua l'accesso all'istanza ed esegui i comandi illustrati di seguito:

Per un Amazon Linux, Ubuntu Server o un'RHEListanza, esegui questi comandi in questo ordine, uno alla volta:

systemctl stop codedeploy-agent
systemctl start codedeploy-agent

Per un'istanza di Windows Server:

powershell.exe -Command Restart-Service -Name codedeployagent

Risoluzione degli errori di distribuzione «InvalidSignatureException — Firma scaduta: [ora] è precedente a [ora]»

CodeDeploy richiede riferimenti temporali accurati per eseguire le sue operazioni. Se la data e l'ora sull'istanza non sono impostate correttamente, potrebbero non corrispondere alla data di firma della richiesta di distribuzione, che viene CodeDeploy respinta.

Per evitare errori di distribuzione dovuti a impostazioni errate di data e ora, consulta i seguenti argomenti: