Installazione dell'agente del container Amazon ECS - Amazon Elastic Container Service

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à.

Installazione dell'agente del container Amazon ECS

Se desideri registrare un' EC2 istanza Amazon con il tuo cluster Amazon ECS e quell'istanza non utilizza un'AMI basata sull'AMI ottimizzata per Amazon ECS, puoi installare l'agente contenitore Amazon ECS manualmente utilizzando la seguente procedura. A tale scopo, puoi scaricare l'agente da uno dei bucket Amazon S3 regionali o da Amazon Elastic Container Registry Public. Se scarichi da uno dei bucket regionali di Amazon S3, puoi opzionalmente verificare la validità del file dell'agente contenitore utilizzando la firma PGP.

Nota

Le unità systemd per i servizi Amazon ECS e Docker hanno l'istruzione di attendere il completamento di cloud-init prima di avviare entrambi i servizi. Il cloud-init processo non è considerato completato fino al termine dell'esecuzione dei dati EC2 utente Amazon. Pertanto, l'avvio di Amazon ECS o Docker tramite i dati EC2 utente di Amazon può causare un deadlock. Puoi usare i dati utente di Amazon per avviare l'agente container utilizzando i dati EC2 utente di Amazonsystemctl enable --now --no-block ecs.service.

Installazione dell'agente container Amazon ECS su una non istanza Amazon Linux EC2

Per installare l'agente container Amazon ECS su un' EC2 istanza Amazon, puoi scaricare l'agente da uno dei bucket Amazon S3 regionali e installarlo.

Nota

Quando si utilizza un'AMI non Amazon Linux, l' EC2 istanza Amazon richiede il cgroupfs supporto per il cgroup driver affinché l'agente Amazon ECS supporti i limiti di risorse a livello di attività. Per ulteriori informazioni, consulta Amazon ECS agent on GitHub.

A titolo di riferimento, di seguito sono elencati i file più recenti dell'agente del container Amazon ECS, per regione e per ciascun tipo di architettura di sistema.

Regione Nome della Regione File di init deb di Amazon ECS File di init rbm di Amazon ECS
us-east-2 Stati Uniti orientali (Ohio)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

us-east-1 Stati Uniti orientali (Virginia settentrionale)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

us-west-1 Stati Uniti occidentali (California settentrionale)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

us-west-2 US West (Oregon)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

ap-east-1 Asia Pacifico (Hong Kong)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

ap-northeast-1 Asia Pacifico (Tokyo)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

ap-northeast-2 Asia Pacifico (Seoul)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

ap-south-1 Asia Pacifico (Mumbai)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

ap-southeast-1 Asia Pacifico (Singapore)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

ap-southeast-2 Asia Pacifico (Sydney)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

ca-central-1 Canada (Centrale)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

eu-central-1 Europa (Francoforte)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

eu-west-1 Europa (Irlanda)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

eu-west-2 Europa (Londra)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

eu-west-3 Europa (Parigi)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

sa-east-1 Sud America (San Paolo)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64

Amazon ECS init aarch64 (aarch64)

us-gov-east-1 AWS GovCloud (Stati Uniti orientali)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

us-gov-west-1 AWS GovCloud (Stati Uniti occidentali)

Amazon ECS init amd64 (amd64)

Amazon ECS init arm64 (arm64)

Amazon ECS init x86_64 (x86_64)

Amazon ECS init aarch64 (aarch64)

Per installare l'agente container Amazon ECS su un' EC2 istanza Amazon utilizzando un agente non AMI Amazon Linux
  1. Avvia un' EC2 istanza Amazon con un ruolo IAM che consente l'accesso ad Amazon ECS. Per ulteriori informazioni, consulta Ruolo IAM delle istanze di container Amazon ECS.

  2. Connettiti alla tua istanza.

  3. Installare la versione più recente di Docker nell'istanza.

  4. Controlla la versione Docker per verificare che il tuo sistema soddisfi il requisito di versione minima.

    Nota

    La versione Docker minima per parametri affidabili è v20.10.13 e successive, inclusa nell'AMI 20220607 ottimizzata per Amazon ECS e versioni successive.

    Le versioni dell'agente Amazon ECS 1.20.0 e successive non supportano più le versioni di Docker precedenti alla 18.01.0.

    docker --version
  5. Scarica il file di agente Amazon ECS appropriato per il sistema operativo e per l'architettura di sistema in uso e installalo.

    Per le architetture deb:

    ubuntu:~$ curl -O https://s3.us-west-2.amazonaws.com/amazon-ecs-agent-us-west-2/amazon-ecs-init-latest.amd64.deb ubuntu:~$ sudo dpkg -i amazon-ecs-init-latest.amd64.deb

    Per le architetture rpm:

    fedora:~$ curl -O https://s3.us-west-2.amazonaws.com/amazon-ecs-agent-us-west-2/amazon-ecs-init-latest.x86_64.rpm fedora:~$ sudo yum localinstall -y amazon-ecs-init-latest.x86_64.rpm
  6. Modifica il /lib/systemd/system/ecs.service file e aggiungi la riga seguente alla fine della [Unit] sezione.

    After=cloud-final.service
  7. (Facoltativo) Per registrare l'istanza con un cluster diverso dal cluster default, modifica il file /etc/ecs/ecs.config e aggiungi i contenuti seguenti. L'esempio seguente specifica il cluster MyCluster.

    ECS_CLUSTER=MyCluster

    Per ulteriori informazioni su queste e altre opzioni di runtime dell'agente, consulta Configurazione dell'agente del container Amazon ECS.

    Nota

    Facoltativamente, puoi archiviare le variabili di ambiente dell'agente in Amazon S3 (che può essere scaricata nelle istanze del contenitore al momento del lancio utilizzando i dati utente di EC2 Amazon). Ciò è consigliato per le informazioni sensibili, come le credenziali di autenticazione per i repository privati. Per ulteriori informazioni, consultare Memorizzazione della configurazione dell'istanza del contenitore Amazon ECS in Amazon S3 e Utilizzo di immagini non AWS containerizzate in Amazon ECS.

  8. Avviare il servizio ecs.

    ubuntu:~$ sudo systemctl start ecs

Esecuzione dell'agente Amazon ECS con modalità di rete host

Quando si esegue l'agente del container di Amazon ECS, ecs-init crea il relativo container dell'agente del container con la modalità di rete host. Questa è l'unica modalità di rete supportata per il container dell'agente del container.

Ciò consente di bloccare l'accesso all'endpoint del servizio di metadati dell' EC2 istanza Amazon per i contenitori avviati dall'agente contenitore. http://169.254.169.254 Questo garantisce che i container non possano accedere alle credenziali del ruolo IAM dal profilo dell'istanza di container e che le attività utilizzino solo le credenziali per il ruolo del processo IAM. Per ulteriori informazioni, consulta Ruolo IAM dell'attività Amazon ECS.

Assicura inoltre che l'agente del container non debba contendersi le connessioni e il traffico di rete sul bridge docker0.