Fase 2: Distribuire l'applicazione nel gruppo Auto Scaling - 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à.

Fase 2: Distribuire l'applicazione nel gruppo Auto Scaling

In questo passaggio, distribuirai la revisione sulla singola istanza Amazon EC2 nel gruppo Auto Scaling.

Per creare la distribuzione (CLI)

  1. Chiamare il comando create-application per creare un'applicazione denominata SimpleDemoApp:

    aws deploy create-application --application-name SimpleDemoApp
  2. È necessario avere già creato un ruolo del servizio seguendo le istruzioni in Fase 2: Creare un ruolo di servizio per CodeDeploy. Il ruolo di servizio ti consentirà CodeDeploy di accedere alle tue istanze Amazon EC2 per espandere (leggere) i relativi tag. È necessario l'ARN del ruolo del servizio. Per ottenere l'ARN del ruolo del servizio, seguire le istruzioni contenute in Ottieni il ruolo di servizio ARN (CLI) .

  3. Ora che avete un ruolo di servizio ARN, chiamate il create-deployment-group comando per creare un gruppo di distribuzione denominatoSimpleDemoDG, associato all'applicazione denominataSimpleDemoApp, utilizzando il gruppo Auto Scaling denominato e la configurazione CodeDeployDefault.OneAtATime di distribuzione CodeDeployDemo-AS-Group denominata, con il ruolo di servizio specificato ARN.

    Nota

    Il create-deployment-groupcomando fornisce supporto per la creazione di trigger che comportano l'invio di notifiche Amazon SNS agli abbonati all'argomento su eventi specifici nelle distribuzioni e nelle istanze. Il comando supporta anche opzioni per il rollback automatico delle distribuzioni e l'impostazione di allarmi per interrompere le distribuzioni quando vengono raggiunte le soglie di monitoraggio negli allarmi Amazon. CloudWatch I comandi per queste azioni non sono inclusi in questo tutorial.

    Su macchine Linux, macOS o Unix locali:

    aws deploy create-deployment-group \ --application-name SimpleDemoApp \ --auto-scaling-groups CodeDeployDemo-AS-Group \ --deployment-group-name SimpleDemoDG \ --deployment-config-name CodeDeployDefault.OneAtATime \ --service-role-arn service-role-arn

    Nei computer Windows locali:

    aws deploy create-deployment-group --application-name SimpleDemoApp --auto-scaling-groups CodeDeployDemo-AS-Group --deployment-group-name SimpleDemoDG --deployment-config-name CodeDeployDefault.OneAtATime --service-role-arn service-role-arn
  4. Chiamare il comando create-deployment per creare una distribuzione associata all'applicazione denominata SimpleDemoApp, la configurazione della distribuzione denominata CodeDeployDefault.OneAtATime, il gruppo di distribuzione denominato SimpleDemoDG utilizzando la revisione nel percorso specificato.

    Per Amazon Linux e RHEL, istanze Amazon EC2, chiamate da macchine Linux, macOS o Unix locali

    aws deploy create-deployment \ --application-name SimpleDemoApp \ --deployment-config-name CodeDeployDefault.OneAtATime \ --deployment-group-name SimpleDemoDG \ --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Linux.zip

    bucket-name è il nome del bucket Amazon S3 che contiene i file Resource Kit per CodeDeploy la tua regione. Ad esempio, per la regione Stati Uniti orientali (Ohio), sostituisci bucket-name con. aws-codedeploy-us-east-2 Per un elenco dei nomi dei bucket, consulta. Nomi dei bucket del Resource Kit per regione

    Per Amazon Linux e RHEL, istanze Amazon EC2, chiamate da macchine Windows locali

    aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Linux.zip

    bucket-name è il nome del bucket Amazon S3 che contiene i file Resource Kit per CodeDeploy la tua regione. Ad esempio, per la regione Stati Uniti orientali (Ohio), sostituisci bucket-name con. aws-codedeploy-us-east-2 Per un elenco dei nomi dei bucket, consulta. Nomi dei bucket del Resource Kit per regione

    Per istanze Windows Server Amazon EC2, chiamate da macchine Linux, macOS o Unix locali

    aws deploy create-deployment \ --application-name SimpleDemoApp \ --deployment-config-name CodeDeployDefault.OneAtATime \ --deployment-group-name SimpleDemoDG \ --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Windows.zip

    bucket-name è il nome del bucket Amazon S3 che contiene i file Resource Kit per CodeDeploy la tua regione. Ad esempio, per la regione Stati Uniti orientali (Ohio), sostituisci bucket-name con. aws-codedeploy-us-east-2 Per un elenco dei nomi dei bucket, consulta. Nomi dei bucket del Resource Kit per regione

    Per le istanze Amazon EC2 di Windows Server, chiamate da macchine Windows locali

    aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Windows.zip

    bucket-name è il nome del bucket Amazon S3 che contiene i file Resource Kit per CodeDeploy la tua regione. Ad esempio, per la regione Stati Uniti orientali (Ohio), sostituisci bucket-name con. aws-codedeploy-us-east-2 Per un elenco dei nomi dei bucket, consulta. Nomi dei bucket del Resource Kit per regione

    Nota

    Attualmente, CodeDeploy non fornisce una revisione di esempio da distribuire su istanze Amazon EC2 di Ubuntu Server. Per creare una tua revisione, consulta Utilizzo delle revisioni delle applicazioni per CodeDeploy.

  5. Chiamare il comando get-deployment per verificare che la distribuzione sia stata completata.

    Prima di chiamare questo comando, è necessario l'ID della distribuzione che dovrebbe essere stato restituito dalla chiamata al comando create-deployment. Per ottenere nuovamente l'ID della distribuzione, chiamare il comando list-deployments per l'applicazione SimpleDemoApp e il gruppo di distribuzione con nome SimpleDemoDG:

    aws deploy list-deployments --application-name SimpleDemoApp --deployment-group-name SimpleDemoDG --query "deployments" --output text

    Ora chiamare il comando get-deployment usando l'ID della distribuzione:

    aws deploy get-deployment --deployment-id deployment-id --query "deploymentInfo.status" --output text

    Non continuare finché il valore restituito non è Succeeded.

Per creare la distribuzione (console)

  1. È necessario avere già creato un ruolo del servizio seguendo le istruzioni in Fase 2: Creare un ruolo di servizio per CodeDeploy. Il ruolo di servizio consentirà di accedere CodeDeploy alle istanze per espandere (leggere) i relativi tag. Prima di utilizzare la CodeDeploy console per distribuire la revisione dell'applicazione, è necessario il ruolo di servizio ARN. Per ottenere l'ARN del ruolo del servizio, seguire le istruzioni contenute in Ottieni il ruolo di servizio ARN (console) .

  2. Ora che hai il ruolo di servizio ARN, puoi utilizzare la CodeDeploy console per distribuire la revisione dell'applicazione.

    Accedi AWS Management Console e apri la CodeDeploy console all'indirizzo https://console.aws.amazon.com/codedeploy.

    Nota

    Accedi con lo stesso utente che hai configuratoGuida introduttiva con CodeDeploy.

  3. Nel riquadro di navigazione, espandi Distribuisci, quindi scegli Applicazioni.

  4. Scegli Crea applicazione.

  5. Selezionare Custom application (Applicazione personalizzata).

  6. In Application name (Nome applicazione), immettere SimpleDemoApp.

  7. In Compute platform (Piattaforma di calcolo), scegliere EC2/On-premises.

  8. Scegli Crea applicazione.

  9. Nella scheda Deployment groups (Gruppi di distribuzione), scegliere Create deployment group (Crea gruppo di distribuzione).

  10. In Deployment group name (Nome del gruppo di distribuzione), immettere SimpleDemoDG.

  11. In Service Role (Ruolo del servizio), scegliere il nome del ruolo del servizio.

  12. In Deployment type (Tipo di distribuzione), scegliere In-place (Locale).

  13. In Configurazione ambiente seleziona Gruppi Auto Scaling, quindi scegli. CodeDeployDemo-AS-Group

  14. In Configurazione di distribuzione, scegliCodeDeployDefault. OneAtUna volta.

  15. Deselezionare Enable load balancing (Abilita bilanciamento del carico).

  16. Scegliere Create deployment group (Crea gruppo di distribuzione).

  17. Nella pagina del gruppo di distribuzione, scegliere Create deployment (Crea distribuzione).

  18. In Tipo di revisione, scegli La mia applicazione è archiviata in Amazon S3.

  19. In Revision location (Posizione revisione), inserire il percorso dell'applicazione di esempio per il proprio sistema operativo e regione.

    Per Amazon Linux e RHEL, istanze Amazon EC2

    Regione Percorso dell'applicazione di esempio
    Stati Uniti orientali (Ohio) http://s3-us-east-2.amazonaws.com/aws-codedeploy-us-east-2/samples/latest/SampleApp_Linux.zip
    Stati Uniti orientali (Virginia settentrionale) http://s3.amazonaws.com/aws-codedeploy-us-east-1/samples/latest/SampleApp_Linux.zip
    Regione Stati Uniti occidentali (California settentrionale) http://s3-us-west-1.amazonaws.com/aws-codedeploy-us-west-1/samples/latest/SampleApp_Linux.zip
    Stati Uniti occidentali (Oregon) http://s3-us-west-2.amazonaws.com/aws-codedeploy-us-west-2/samples/latest/SampleApp_Linux.zip
    Regione Canada (Centrale) http://s3-ca-central-1.amazonaws.com/aws-codedeploy-ca-central-1/samples/latest/SampleApp_Linux.zip
    Regione Europa (Irlanda) http://s3-eu-west-1.amazonaws.com/aws-codedeploy-eu-west-1/samples/latest/SampleApp_Linux.zip
    Regione Europa (Londra) http://s3-eu-west-2.amazonaws.com/aws-codedeploy-eu-west-2/samples/latest/SampleApp_Linux.zip
    Regione Europa (Parigi) http://s3-eu-west-3.amazonaws.com/aws-codedeploy-eu-west-3/samples/latest/SampleApp_Linux.zip
    Regione Europa (Francoforte) http://s3-eu-central-1.amazonaws.com/aws-codedeploy-eu-central-1/samples/latest/SampleApp_Linux.zip
    Regione di Israele (Tel Aviv) https://aws-codedeploy-il-central-1.s3.il-central-1.amazonaws.com/samples/latest/SampleApp_Linux.zip
    Regione Asia Pacifico (Hong Kong) https://aws-codedeploy-ap-east-1.s3.ap-east-1.amazonaws.com/samples/latest/SampleApp_Linux.zip
    Asia Pacific (Tokyo) Region http://s3-ap-northeast-1.amazonaws.com/aws-codedeploy-ap-northeast-1/samples/latest/SampleApp_Linux.zip
    Asia Pacific (Seoul) Region http://s3-ap-northeast-2.amazonaws.com/aws-codedeploy-ap-northeast-2/samples/latest/SampleApp_Linux.zip
    Regione Asia Pacifico (Singapore) http://s3-ap-southeast-1.amazonaws.com/aws-codedeploy-ap-southeast-1/samples/latest/SampleApp_Linux.zip
    Regione Asia Pacifico (Sydney) http://s3-ap-southeast-2.amazonaws.com/aws-codedeploy-ap-southeast-2/samples/latest/SampleApp_Linux.zip
    Regione Asia Pacifico (Melbourne) https://aws-codedeploy-ap-southeast-4.s3.ap-southeast-4.amazonaws.com/samples/latest/SampleApp_Linux.zip
    Regione Asia Pacifico (Mumbai) http://s3-ap-south-1.amazonaws.com/aws-codedeploy-ap-south-1/samples/latest/SampleApp_Linux.zip
    Regione Sud America (San Paolo) http://s3-sa-east-1.amazonaws.com/aws-codedeploy-sa-east-1/samples/latest/SampleApp_Linux.zip

    Per istanze Windows Server Amazon EC2

    Regione Percorso dell'applicazione di esempio
    Stati Uniti orientali (Ohio) http://s3-us-east-2.amazonaws.com/aws-codedeploy-us-east-2/samples/latest/SampleApp_Windows.zip
    Stati Uniti orientali (Virginia settentrionale) http://s3.amazonaws.com/aws-codedeploy-us-east-1/samples/latest/SampleApp_Windows.zip
    Regione Stati Uniti occidentali (California settentrionale) http://s3-us-west-1.amazonaws.com/aws-codedeploy-us-west-1/samples/latest/SampleApp_Windows.zip
    Stati Uniti occidentali (Oregon) http://s3-us-west-2.amazonaws.com/aws-codedeploy-us-west-2/samples/latest/SampleApp_Windows.zip
    Regione Canada (Centrale) http://s3-ca-central-1.amazonaws.com/aws-codedeploy-ca-central-1/samples/latest/SampleApp_Windows.zip
    Regione Europa (Irlanda) http://s3-eu-west-1.amazonaws.com/aws-codedeploy-eu-west-1/samples/latest/SampleApp_Windows.zip
    Regione Europa (Londra) http://s3-eu-west-2.amazonaws.com/aws-codedeploy-eu-west-2/samples/latest/SampleApp_Windows.zip
    Regione Europa (Parigi) http://s3-eu-west-3.amazonaws.com/aws-codedeploy-eu-west-3/samples/latest/SampleApp_Windows.zip
    Regione Europa (Francoforte) http://s3-eu-central-1.amazonaws.com/aws-codedeploy-eu-central-1/samples/latest/SampleApp_Windows.zip
    Regione di Israele (Tel Aviv) https://aws-codedeploy-il-central-1.s3.il-central-1.amazonaws.com/samples/latest/SampleApp_Windows.zip
    Regione Asia Pacifico (Hong Kong) https://aws-codedeploy-ap-east-1.s3.ap-east-1.amazonaws.com/samples/latest/SampleApp_Windows.zip
    Regione Asia Pacifico (Seoul) http://s3-ap-northeast-2.amazonaws.com/aws-codedeploy-ap-northeast-2/samples/latest/SampleApp_Windows.zip
    Regione Asia Pacifico (Singapore) http://s3-ap-southeast-1.amazonaws.com/aws-codedeploy-ap-southeast-1/samples/latest/SampleApp_Windows.zip
    Regione Asia Pacifico (Sydney) http://s3-ap-southeast-2.amazonaws.com/aws-codedeploy-ap-southeast-2/samples/latest/SampleApp_Windows.zip
    Regione Asia Pacifico (Melbourne) https://aws-codedeploy-ap-southeast-4.s3.ap-southeast-4.amazonaws.com/samples/latest/SampleApp_Windows.zip
    Regione Asia Pacifico (Mumbai) http://s3-ap-south-1.amazonaws.com/aws-codedeploy-ap-south-1/samples/latest/SampleApp_Windows.zip
    Regione Sud America (San Paolo) http://s3-sa-east-1.amazonaws.com/aws-codedeploy-sa-east-1/samples/latest/SampleApp_Windows.zip

    Per le istanze di Ubuntu Server Amazon EC2

    Digita la posizione della revisione dell'applicazione personalizzata archiviata in Amazon S3.

  20. Lasciare vuoto il campo Deployment description (Descrizione distribuzione).

  21. Espandere Advanced (Avanzate).

  22. Scegli Create deployment (Crea distribuzione).

    Nota

    Se è visualizzato Failed (Non riuscito) al posto di Succeeded (Riuscito), si potrebbero provare le tecniche descritte in Monitora e risolvi i problemi della distribuzione (usando il nome dell'applicazione SimpleDemoApp e il nome del gruppo di distribuzione SimpleDemoDG).