

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

# Registrazione di un'istanza esterna in un cluster Amazon ECS
<a name="ecs-anywhere-registration"></a>

Per ogni istanza esterna che si registra con un cluster Amazon ECS, è necessario che sia installato SSM Agent, l'agente del container di Amazon ECS e Docker. Per registrare l'istanza esterna in un cluster Amazon ECS, deve prima essere registrata come istanza gestita AWS Systems Manager . Puoi creare lo script di installazione in pochi clic dalla console Amazon ECS. Lo script di installazione include una chiave di attivazione di Systems Manager e i comandi per installare ciascuno degli agenti richiesti e Docker. Per completare le fasi di installazione e registrazione, è necessario eseguire lo script di installazione sul server on-premises o sulla macchina virtuale.

**Nota**  
Prima di registrare l'istanza esterna Linux con il cluster, crea il file `/etc/ecs/ecs.config` sull'istanza esterna e aggiungi i parametri di configurazione dell'agente del container desiderati. Non è possibile eseguire questa operazione dopo aver registrato l'istanza esterna in un cluster. Per ulteriori informazioni, consulta [Configurazione dell'agente del container Amazon ECS](ecs-agent-config.md).

------
#### [ Console di gestione AWS ]

1. Apri la console all'indirizzo. [ https://console.aws.amazon.com/ecs/v2 ](https://console.aws.amazon.com/ecs/v2)

1. Seleziona la Regione da utilizzare nella barra di navigazione.

1. Nel pannello di navigazione scegli **Cluster**.

1. Sulla pagina **Cluster** scegli un cluster in cui registrare l'istanza esterna.

1. Nella {{name}} ** pagina ** Cluster:, scegli la ** scheda ** Infrastruttura.

1. Alla pagina **Register external instances** (Registra istanze esterne), completa la procedura seguente.

   1. Per **Durata della chiave di attivazione (in giorni)**specifica il numero di giorni per cui la chiave di attivazione rimane attiva. Una volta passati i giorni specificati, la chiave non funzionerà più quando si registra un'istanza esterna.

   1. Per **Numero di istanze** specifica il numero di istanze esterne che si desidera registrare nel cluster con la chiave di attivazione.

   1. Per **Ruolo dell'istanza**, scegli il ruolo IAM da associare alle istanze esterne. Se un ruolo non è già stato creato, scegli **Crea nuovo ruolo** perché Amazon ECS crei un ruolo per tuo conto. Per ulteriori informazioni sulle autorizzazioni IAM necessarie per le istanze esterne, consulta [Ruolo IAM di Amazon ECS Anywhere](iam-role-ecsanywhere.md).

   1.  Copia il comando di registrazione. Questo comando deve essere eseguito su ogni istanza esterna che si desidera registrare nel cluster.
**Importante**  
La parte bash dello script deve essere eseguita come root. Se il comando non viene eseguito come root, viene restituito un errore.

   1. Scegli **Chiudi**.

------
#### [ AWS CLI for Linux operating systems ]

1. Crea una coppia di attivazione di Systems Manager. Viene utilizzato per l'attivazione dell'istanza gestita di Systems Manager. L'output include un `ActivationId` e un `ActivationCode`. Utilizzerai questa funzione in una fase successiva. Assicurati di specificare il ruolo IAM ECS Anywhere creato. Per ulteriori informazioni, consulta [Ruolo IAM di Amazon ECS Anywhere](iam-role-ecsanywhere.md).

   ```
   aws ssm create-activation --iam-role {{ecsAnywhereRole}} | tee ssm-activation.json
   ```

1. Scarica lo script di installazione sul server on-premises o nella macchina virtuale (VM).

   ```
   curl --proto "https" -o "/tmp/ecs-anywhere-install.sh" "https://amazon-ecs-agent.s3.amazonaws.com/ecs-anywhere-install-latest.sh"
   ```

1. (Facoltativo) Sul server on-premises o nella macchina virtuale (VM), completa la procedura seguente per verificare lo script di installazione utilizzando il file di firma dello script.

   1. Scarica e installa GnuPG. Per ulteriori informazioni su GnuPG, consulta il [sito Web GnuPG](https://www.gnupg.org). Per i sistemi Linux, installa `gpg` usando il programma di gestione dei pacchetti che preferisci per Linux.

   1. Recupera la chiave pubblica PGP di Amazon ECS.

      ```
      gpg --keyserver hkp://keys.gnupg.net:80 --recv BCE9D9A42D51784F
      ```

   1. Scarica la firma dello script di installazione. La firma è una firma PGP scollegata da ASCII archiviata in file con estensione `.asc`.

      ```
      curl --proto "https" -o "/tmp/ecs-anywhere-install.sh.asc" "https://amazon-ecs-agent.s3.amazonaws.com/ecs-anywhere-install-latest.sh.asc"
      ```

   1. Verifica il file dello script di installazione utilizzando la chiave.

      ```
      gpg --verify /tmp/ecs-anywhere-install.sh.asc /tmp/ecs-anywhere-install.sh
      ```

      L'output previsto è il seguente:

      ```
      gpg: Signature made Tue 25 May 2021 07:16:29 PM UTC
      gpg:                using RSA key 50DECCC4710E61AF
      gpg: Good signature from "Amazon ECS <ecs-security@amazon.com>" [unknown]
      gpg: WARNING: This key is not certified with a trusted signature!
      gpg:          There is no indication that the signature belongs to the owner.
      Primary key fingerprint: F34C 3DDA E729 26B0 79BE  AEC6 BCE9 D9A4 2D51 784F
           Subkey fingerprint: D64B B6F9 0CF3 77E9 B5FB  346F 50DE CCC4 710E 61AF
      ```

1. Esegui lo script di installazione sul server on-premises o nella macchina virtuale (VM). Specifica il nome del cluster, la regione, l'ID di attivazione e il codice di attivazione di Systems Manager dalla prima fase.

   ```
   sudo bash /tmp/ecs-anywhere-install.sh \
       --region {{$REGION}} \
       --cluster {{$CLUSTER_NAME}} \
       --activation-id {{$ACTIVATION_ID}} \
       --activation-code {{$ACTIVATION_CODE}}
   ```

   Per un server on-premises o una macchina virtuale (VM) con il driver NVIDIA installato per i carichi di lavoro della GPU, è necessario aggiungere il flag `--enable-gpu` allo script di installazione. Quando viene specificato questo flag, lo script di installazione verifica che il driver NVIDIA sia in esecuzione e quindi aggiunge le variabili di configurazione necessarie per eseguire i processi Amazon ECS. Per ulteriori informazioni sull'esecuzione dei carichi di lavoro della GPU e sulla definizione dei requisiti della GPU in una definizione di attività, consulta [Specificare le GPU in una definizione attività Amazon ECS](ecs-gpu-specifying.md).

   ```
   sudo bash /tmp/ecs-anywhere-install.sh \
       --region {{$REGION}} \
       --cluster {{$CLUSTER_NAME}} \
       --activation-id {{$ACTIVATION_ID}} \
       --activation-code {{$ACTIVATION_CODE}} \
       --enable-gpu
   ```

Utilizza la seguente procedura per registrare un'istanza esterna esistente con un cluster diverso.

**Come registrare un'istanza esterna esistente con un cluster diverso**

1. Arresta l'agente del container di Amazon ECS.

   ```
   sudo systemctl stop ecs.service
   ```

1. Modifica il file `/etc/ecs/ecs.config` e alla riga `ECS_CLUSTER`, assicurati che il nome del cluster corrisponda al nome del cluster con cui registrare l'istanza esterna.

1. Rimuovi i dati esistenti dell'agente Amazon ECS.

   ```
   sudo rm /var/lib/ecs/data/agent.db
   ```

1. Avvia l'agente del container di Amazon ECS.

   ```
   sudo systemctl start ecs.service
   ```

------
#### [ AWS CLI for Windows operating systems ]

1. Crea una coppia di attivazione di Systems Manager. Viene utilizzato per l'attivazione dell'istanza gestita di Systems Manager. L'output include un `ActivationId` e un `ActivationCode`. Utilizzerai questa funzione in una fase successiva. Assicurati di specificare il ruolo IAM ECS Anywhere creato. Per ulteriori informazioni, consulta [Ruolo IAM di Amazon ECS Anywhere](iam-role-ecsanywhere.md).

   ```
   aws ssm create-activation --iam-role {{ecsAnywhereRole}} | tee ssm-activation.json
   ```

1. Scarica lo script di installazione sul server on-premises o nella macchina virtuale (VM).

   ```
   Invoke-RestMethod -URI "https://amazon-ecs-agent.s3.amazonaws.com/ecs-anywhere-install.ps1" -OutFile “ecs-anywhere-install.ps1”
   ```

1. (Facoltativo) Lo script Powershell è firmato da Amazon e pertanto Windows esegue automaticamente la convalida del certificato sullo stesso. Non è necessario eseguire alcuna convalida manuale.

   Per verificare manualmente il certificato, fai clic con il pulsante destro del mouse sul file, accedi alle proprietà e utilizza la scheda Digital Signatures (Firme digitali) per ottenere ulteriori dettagli.

   Questa opzione è disponibile solo quando l'host ha il certificato nell'archivio dei certificati.

   La verifica dovrebbe restituire informazioni simili alle seguenti:

   ```
   # Verification (PowerShell)
   Get-AuthenticodeSignature -FilePath .\ecs-anywhere-install.ps1
   
   SignerCertificate                         Status      Path
   -----------------                         ------      ----
   EXAMPLECERTIFICATE                        Valid       ecs-anywhere-install.ps1
   
   ...
   
   Subject              : CN="Amazon Web Services, Inc.",...
   
   ----
   ```

1. Esegui lo script di installazione sul server on-premises o nella macchina virtuale (VM). Specifica il nome del cluster, la regione, l'ID di attivazione e il codice di attivazione di Systems Manager dalla prima fase.

   ```
   .\ecs-anywhere-install.ps1 -Region {{$Region}} -Cluster {{$Cluster}} -ActivationID {{$ActivationID}} -ActivationCode {{$ActivationCode}}
   ```

1. Verifica che l'agente del container Amazon ECS sia in esecuzione.

   ```
   Get-Service AmazonECS
   
   Status   Name               DisplayName
   ------   ----               -----------
   Running  AmazonECS          Amazon ECS
   ```

Utilizza la seguente procedura per registrare un'istanza esterna esistente con un cluster diverso.

**Come registrare un'istanza esterna esistente con un cluster diverso**

1. Arresta l'agente del container di Amazon ECS.

   ```
   Stop-Service AmazonECS
   ```

1. Modifica il parametro `ECS_CLUSTER` in modo che il nome del cluster corrisponda al nome del cluster con cui registrare l'istanza esterna.

   ```
   [Environment]::SetEnvironmentVariable("ECS_CLUSTER", $ECSCluster, [System.EnvironmentVariableTarget]::Machine)
   ```

1. Rimuovi i dati esistenti dell'agente Amazon ECS.

   ```
   Remove-Item -Recurse -Force $env:ProgramData\Amazon\ECS\data\*
   ```

1. Avvia l'agente del container di Amazon ECS.

   ```
   Start-Service AmazonECS
   ```

------

 AWS CLI Può essere utilizzato per creare un'attivazione di Systems Manager prima di eseguire lo script di installazione per completare il processo di registrazione dell'istanza esterna.