

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

# Accesso remoto alle risorse della flotta
<a name="remote-access-intro"></a>

Puoi connetterti a qualsiasi istanza delle tue flotte di container gestite o EC2 attiveAmazon GameLift Servers. Per le flotte di container, puoi anche connetterti a singoli contenitori in esecuzione su un'istanza per risolvere le sessioni di gioco, ispezionare i log ed eseguire il debug dei problemi di runtime. I motivi più comuni per accedere in remoto a un'istanza includono:
+ Risolvi i problemi relativi all'integrazione del server di gioco.
+ Perfeziona la configurazione di runtime e altre impostazioni specifiche del parco veicoli.
+ Monitora l'attività dei server di gioco in tempo reale, ad esempio il tracciamento dei log.
+ Esegui strumenti di benchmarking utilizzando il traffico effettivo dei giocatori.
+ Esamina problemi specifici relativi a una sessione di gioco o a un processo del server.

Quando ti connetti a un'istanza, tieni presente quanto segue:
+ Puoi connetterti a qualsiasi istanza in un parco istanze attivo. In genere, non è possibile connettersi a flotte non attive, ad esempio flotte in fase di attivazione o in stato di errore. (Queste flotte potrebbero avere una disponibilità limitata per un breve periodo di tempo.) Per assistenza con i problemi di attivazione della flotta, consulta[Debug dei problemi del parco istanze di Amazon GameLift Servers](fleets-creating-debug.md).
+ La connessione a un'istanza attiva non influisce sull'attività di hosting dell'istanza. L'istanza continua ad avviare e arrestare i processi del server in base alla configurazione di runtime. Attiva ed esegue sessioni di gioco. L'istanza potrebbe chiudersi in risposta a un evento di ridimensionamento o a un altro evento.
+ Qualsiasi modifica apportata ai file o alle impostazioni sull'istanza potrebbe influire sulle sessioni di gioco attive dell'istanza e sui giocatori connessi.

# Connect a flotte di istanze
<a name="fleets-remote-access"></a>

Puoi connetterti in remoto a qualsiasi istanza EC2 Amazon GameLift Servers gestita attiva o gestita di una flotta di container per risolvere i problemi dei server di gioco, ispezionare i log ed eseguire il debug del comportamento di runtime. Connect tramite la Amazon GameLift Servers console o la AWS CLI.

## Accesso remoto tramite la console
<a name="fleets-remote-access-console"></a>

Puoi connetterti alle istanze del parco istanze direttamente dalla Amazon GameLift Servers console utilizzando Amazon EC2 Systems Manager (SSM). Questo metodo fornisce un accesso sicuro senza richiedere configurazioni o gestione delle credenziali aggiuntive. Per le flotte di container, dopo la connessione all'istanza, è possibile accedere ai singoli contenitori in esecuzione su di essa. Per ulteriori informazioni, consulta [Connect ai container](containers-remote-access.md).

1. **Nella Amazon GameLift Servers console, scegli **Managed EC2** o **Managed containers** dal pannello di navigazione, quindi Fleets.**

1. Scegli l'ID della flotta che contiene l'istanza a cui desideri accedere.

1. Nella pagina dei dettagli del parco istanze, scegli la scheda **Istanze** per visualizzare tutte le istanze di calcolo del parco istanze.

1. Seleziona l'istanza a cui desideri connetterti, quindi scegli **Connetti**. Viene visualizzata la finestra di dialogo Connetti all'istanza che fornisce informazioni sui dettagli della connessione e consente di visualizzare lo script che verrà utilizzato per connettersi all'istanza. Conferma selezionando nuovamente **Connect**.

1. Nella finestra di dialogo di connessione, scegli **Esegui** per creare una nuova sessione SSM. Il sistema autentica la sessione tramite AWS Key Management Service (AWS KMS) e apre un terminale nel browser.

**Nota**  
L'accesso remoto basato sulla console è disponibile per le flotte che eseguono la versione 5.x del server SDK. Per le flotte che eseguono versioni SDK precedenti, utilizzate il metodo AWS CLI descritto nella sezione seguente.

## Accesso remoto con la AWS CLI
<a name="fleets-remote-access-cli"></a>

Le seguenti istruzioni descrivono come connettersi in remoto a un'istanza utilizzando l'interfaccia a riga di AWS comando (CLI). [Puoi anche effettuare chiamate programmatiche utilizzando l' AWS SDK, come documentato nel riferimento all'API di servizio per. Amazon GameLift Servers](https://docs.aws.amazon.com/gamelift/latest/apireference/)

### Raccogli dati delle istanze
<a name="fleets-remote-access-getinfo"></a>

Per connetterti a un'istanza Amazon GameLift Servers gestita di un parco istanze EC2, hai bisogno delle seguenti informazioni: 
+ L'ID dell'istanza a cui desideri connetterti. È possibile utilizzare l'ID dell'istanza o l'ARN.
+ l'SDK del server per la Amazon GameLift Servers versione utilizzata sull'istanza. L'SDK del server è integrato con la build del gioco in esecuzione sull'istanza. 

Le seguenti istruzioni descrivono come completare queste attività utilizzando la AWS CLI. Devi conoscere l'ID della flotta per l'istanza a cui desideri connetterti.

1. **Ottieni il nome del computer.** Ottieni un elenco di tutti i computer attivi della flotta. [Calcola l'elenco](https://docs.aws.amazon.com/cli/latest/reference/gamelift/list-compute.html) delle chiamate con un Fleet ID o ARN. Per una flotta con una sola sede, specifica solo l'identificatore della flotta. Per una flotta con più sedi, specifica l'identificatore della flotta e una posizione. Con le flotte EC2 gestite, `list-compute` restituisce un elenco di istanze del parco istanze e la proprietà `ComputeName` è l'ID dell'istanza. Trova l'elaborazione a cui desideri accedere. 

   **Richiesta**

   ```
   aws gamelift list-compute \
     --fleet-id  fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \
     --location sa-east-1
   ```

   **Risposta**

   ```
   {
     "ComputeList": [
       {
         "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
         "FleetArn": "arn:aws:gamelift:us-west-2::fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
         "ComputeName": "i-0abc12d3e45fa6b78",
         "IpAddress": "00.00.000.00",
         "DnsName": "b08444ki909kvqu6zpw3is24x5pyz4b6m05i3jbxvpk9craztu0lqrbbrbnbkks.uwp57060n1k6dnlnw49b78hg1rw4rcz7.us-west-2.amazongamelift.com",
         "ComputeStatus": "Active",
         "Location": "sa-east-1",
         "CreationTime": "2023-07-09T22:51:45.931000-07:00",
         "OperatingSystem": "AMAZON_LINUX_2023",
         "Type": "c4.large"
       }
     ]
   }
   ```

1. **Trova la versione SDK del server.** Per queste informazioni devi cercare la build implementata nella flotta. La versione Server SDK è una proprietà di compilazione.

   1. Chiama [describe-fleet-attributes](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-fleet-attributes.html)con un ID flotta o un ARN per ottenere l'ID di build e l'ARN della flotta.

   1. Chiama [describe-build](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-build.html) con l'ID di build o l'ARN per ottenere la versione SDK del server della build. 

      Esempio:

      **Richiesta**

   ```
   aws gamelift describe-fleet-attributes \
     --fleet-ids  fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa
   ```

   **Risposta**

   ```
   {
     "FleetAttributes": [
       {
         "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
         "ComputeType": "EC2",
         "BuildId": "build-3333cccc-44dd-55ee-66ff-00001111aa22",
         . . .
       }
     ]
   }
   ```

   **Richiesta**

   ```
   aws gamelift describe-build \
     --build-id build-3333cccc-44dd-55ee-66ff-00001111aa22
   ```

   **Risposta**

   ```
   "Build": {
     "BuildId": "build-1111aaaa-22bb-33cc-44dd-5555eeee66ff",
     "Name": "My_Game_Server_Build_One",
     "OperatingSystem": "AMAZON_LINUX_2023",
     "ServerSdkVersion": "5.1.1",
     . . .
   }
   ```

## Connect a un'istanza (server SDK 5)
<a name="fleets-remote-access-connect-5"></a>

Se l'istanza a cui desideri connetterti esegue una build di gioco con server SDK versione 5.x, connettiti all'istanza utilizzando Amazon EC2 Systems Manager (SSM). Puoi accedere alle istanze remote in esecuzione su Windows o Linux. Per le flotte di container, dopo la connessione all'istanza, puoi accedere ai singoli container in esecuzione su di essa. Per ulteriori informazioni, consulta [Connect ai container](containers-remote-access.md).

**Prima di iniziare:**  
Completa i passaggi di configurazione SSM e installa il plug-in SSM sul tuo computer locale. Per ulteriori informazioni, consulta [Configurazione di SSM](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started.html) e [Installazione del plug-in Session Manager per la AWS CLI](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html) nella Guida per *l'utente di Amazon EC2* Systems Manager.

1. **Richiedere le credenziali di accesso all'istanza.** Chiama [get-compute-access](https://docs.aws.amazon.com/cli/latest/reference/gamelift/get-compute-access.html)con l'ID della flotta e il nome di calcolo dell'istanza a cui desideri connetterti. Amazon GameLift Serversrestituisce un set di credenziali temporanee per accedere all'istanza. Esempio: 

   **Richiesta**

   ```
   aws gamelift get-compute-access \
   --compute-name i-11111111a222b333c \
   --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa
   --region us-west-2
   ```

   **Risposta**

   ```
   {
     "ComputeName": "i-11111111a222b333c",
     "Credentials": {
       "AccessKeyId": "ASIAIOSFODNN7EXAMPLE",
       "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
       "SessionToken": "AQoDYXdzEJr...<remainder of session token>"
     },
     "FleetArn": "arn:aws:gamelift:us-west-2::fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
     "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa"
   }
   ```

1. **Esporta le credenziali di accesso (opzionale).** È possibile esportare le credenziali in variabili di ambiente e utilizzarle per configurare la AWS CLI per l'utente predefinito. Per maggiori dettagli, consulta [Variabili di ambiente per configurare la AWS CLI nella Guida](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html) per l' AWS Command Line Interface utente.

   ```
   export AWS_ACCESS_KEY_ID=ASIAIOSFODNN7EXAMPLE
   export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   export AWS_SESSION_TOKEN=AQoDYXdzEJr...<remainder of session token>
   ```

1. **Connect all'istanza fleet.** Avvia una sessione SSM con l'istanza a cui desideri connetterti. Includi la AWS regione o la posizione dell'istanza. Per ulteriori informazioni, tra cui come configurare SSM e il plug-in SSM, consulta [Avvio di una sessione (AWS CLI)](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-sessions-start.html#sessions-start-cli) nella Guida per l'utente di *Amazon EC2 Systems Manager*. 

   La richiesta di avvio della sessione utilizzerà automaticamente le credenziali acquisite nella fase 1. 

   ```
   aws ssm start-session \
   --target i-11111111a222b333c \
   --region us-west-2 \
   ```
**Nota**  
Se viene visualizzato un errore di accesso negato, è possibile che una variabile di `AWS_PROFILE` ambiente sia impostata AWS su un profilo, il che fa sì che AWS CLI utilizzi le credenziali errate per l'accesso remoto. Per risolvere, disattiva temporaneamente la variabile di ambiente`AWS_PROFILE`. In alternativa, è possibile creare un AWS profilo personalizzato per le credenziali di accesso remoto e aggiungere il parametro della riga di `--profile` comando alla richiesta`start-session`. 

## Connect a un'istanza (server SDK 4.x o precedente)
<a name="fleets-remote-access-connect"></a>

Se l'istanza a cui vuoi connetterti esegue una build di gioco con server SDK versione 4 o precedente, usa le seguenti istruzioni. Puoi connetterti a istanze che eseguono Windows o Linux. Connect a un'istanza Windows utilizzando un client RDP (Remote Desktop Protocol). Connect a un'istanza Linux utilizzando un client SSH. 

1. **Richiedere le credenziali di accesso all'istanza.** Se disponi di un ID di istanza, usa il comando [get-instance-access](https://docs.aws.amazon.com/cli/latest/reference/gamelift/get-instance-access.html)per richiedere le credenziali di accesso. Se la richiesta va a buon fine, Amazon GameLift Servers restituisce il sistema operativo, l'indirizzo IP e un insieme di credenziali (nome utente e chiave segreta) dell'istanza. Il formato delle credenziali dipende dal sistema operativo dell'istanza. Utilizzare le istruzioni seguenti per recuperare le credenziali per RDP o SSH. 
   + **Per le istanze Windows**: per connettersi a un'istanza Windows, RDP richiede un nome utente e una password. La richiesta `get-instance-access` restituisce tali valori come stringhe semplici, pertanto è possibile utilizzare i valori restituiti così come sono. Credenziali di esempio: 

     ```
     "Credentials": {
         "Secret": "aA1bBB2cCCd3EEE",
         "UserName": "gl-user-remote"
     }
     ```
   + **Per le istanze Linux**: per connettersi a un'istanza Linux, SSH richiede un nome utente e una chiave privata. Amazon GameLift Serversemette chiavi private RSA e le restituisce come una singola stringa, con il carattere newline (`\n`) che indica le interruzioni di riga. Per rendere utilizzabile la chiave privata, procedi nel seguente modo: (1) converti la stringa in un `.pem` file e (2) imposta le autorizzazioni per il nuovo file. Credenziali di esempio restituite: 

     ```
     "Credentials": {
         "Secret": "-----BEGIN RSA PRIVATE KEY-----nEXAMPLEKEYKCAQEAy7WZhaDsrA1W3mRlQtvhwyORRX8gnxgDAfRt/gx42kWXsT4rXE/b5CpSgie/\nvBoU7jLxx92pNHoFnByP+Dc21eyyz6CvjTmWA0JwfWiW5/akH7iO5dSrvC7dQkW2duV5QuUdE0QW\nZ/aNxMniGQE6XAgfwlnXVBwrerrQo+ZWQeqiUwwMkuEbLeJFLhMCvYURpUMSC1oehm449ilx9X1F\nG50TCFeOzfl8dqqCP6GzbPaIjiU19xX/azOR9V+tpUOzEL+wmXnZt3/nHPQ5xvD2OJH67km6SuPW\noPzev/D8V+x4+bHthfSjR9Y7DvQFjfBVwHXigBdtZcU2/wei8D/HYwIDAQABAoIBAGZ1kaEvnrqu\n/uler7vgIn5m7lN5LKw4hJLAIW6tUT/fzvtcHK0SkbQCQXuriHmQ2MQyJX/0kn2NfjLV/ufGxbL1\nmb5qwMGUnEpJaZD6QSSs3kICLwWUYUiGfc0uiSbmJoap/GTLU0W5Mfcv36PaBUNy5p53V6G7hXb2\nbahyWyJNfjLe4M86yd2YK3V2CmK+X/BOsShnJ36+hjrXPPWmV3N9zEmCdJjA+K15DYmhm/tJWSD9\n81oGk9TopEp7CkIfatEATyyZiVqoRq6k64iuM9JkA3OzdXzMQexXVJ1TLZVEH0E7bhlY9d8O1ozR\noQs/FiZNAx2iijCWyv0lpjE73+kCgYEA9mZtyhkHkFDpwrSM1APaL8oNAbbjwEy7Z5Mqfql+lIp1\nYkriL0DbLXlvRAH+yHPRit2hHOjtUNZh4Axv+cpg09qbUI3+43eEy24B7G/Uh+GTfbjsXsOxQx/x\np9otyVwc7hsQ5TA5PZb+mvkJ5OBEKzet9XcKwONBYELGhnEPe7cCgYEA06Vgov6YHleHui9kHuws\nayav0elc5zkxjF9nfHFJRry21R1trw2Vdpn+9g481URrpzWVOEihvm+xTtmaZlSp//lkq75XDwnU\nWA8gkn6O3QE3fq2yN98BURsAKdJfJ5RL1HvGQvTe10HLYYXpJnEkHv+Unl2ajLivWUt5pbBrKbUC\ngYBjbO+OZk0sCcpZ29sbzjYjpIddErySIyRX5gV2uNQwAjLdp9PfN295yQ+BxMBXiIycWVQiw0bH\noMo7yykABY7Ozd5wQewBQ4AdSlWSX4nGDtsiFxWiI5sKuAAeOCbTosy1s8w8fxoJ5Tz1sdoxNeGs\nArq6Wv/G16zQuAE9zK9vvwKBgF+09VI/1wJBirsDGz9whVWfFPrTkJNvJZzYt69qezxlsjgFKshy\nWBhd4xHZtmCqpBPlAymEjr/TOlbxyARmXMnIOWIAnNXMGB4KGSyl1mzSVAoQ+fqR+cJ3d0dyPl1j\njjb0Ed/NY8frlNDxAVHE8BSkdsx2f6ELEyBKJSRr9snRAoGAMrTwYneXzvTskF/S5Fyu0iOegLDa\nNWUH38v/nDCgEpIXD5Hn3qAEcju1IjmbwlvtW+nY2jVhv7UGd8MjwUTNGItdb6nsYqM2asrnF3qS\nVRkAKKKYeGjkpUfVTrW0YFjXkfcrR/V+QFL5OndHAKJXjW7a4ejJLncTzmZSpYzwApc=\n-----END RSA PRIVATE KEY-----",
         "UserName": "gl-user-remote"
     }
     ```

     Quando si utilizza la AWS CLI, è possibile generare automaticamente un `.pem` file includendo i parametri *--query* e *--output nella* richiesta. `get-instance-access` 

     Per impostare le autorizzazioni sul file `.pem`, eseguire il comando seguente:

     ```
     $ chmod 400 MyPrivateKey.pem
     ```

1. **Aprire una porta per la connessione remota.** È possibile accedere alle istanze delle Amazon GameLift Servers flotte tramite qualsiasi porta autorizzata nella configurazione del parco veicoli. È possibile visualizzare le impostazioni di porta del parco istanze tramite il comando [https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-fleet-port-settings.html](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-fleet-port-settings.html). 

   Come best practice, si consiglia di aprire le porte per l'accesso remoto solo quando necessario e di chiuderle al termine dell'operazione. Non puoi aggiornare le impostazioni delle porte dopo aver creato una flotta ma prima che sia attiva. Se rimani bloccato, ricrea la flotta con le impostazioni del porto aperte.

   Utilizzare il comando [https://docs.aws.amazon.com/cli/latest/reference/gamelift/update-fleet-port-settings.html](https://docs.aws.amazon.com/cli/latest/reference/gamelift/update-fleet-port-settings.html) per aggiungere un'impostazione di porta per la connessione remota (ad esempio `22` per SSH o `3389` per RDP). Per il valore di intervallo IP, specificare gli indirizzi IP dei dispositivi che si intende utilizzare per la connessione (convertiti in formato CIDR). Esempio: 

   ```
   $ AWS gamelift update-fleet-port-settings
       --fleet-id  "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa"
       --inbound-permission-authorizations "FromPort=22,ToPort=22,IpRange=54.186.139.221/32,Protocol=TCP"
   ```

   L'esempio seguente apre la porta 3389 su una flotta di Windows

   ```
   $ AWS gamelift update-fleet-port-settings
   --fleet-id  "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa"
       --inbound-permission-authorizations "FromPort=3389,ToPort=3389,IpRange=54.186.139.221/32,Protocol=TCP"
   ```

1. **Aprire un client di connessione remota.** Utilizzare Desktop remoto per le istanze Windows o SSH per le istanze Linux. Connettersi all'istanza utilizzando l'indirizzo IP, l'impostazione di porta e le credenziali di accesso.

   Esempio SSH: 

   ```
   ssh -i MyPrivateKey.pem gl-user-remote@192.0.2.0
   ```

## Visualizza i file su istanze remote
<a name="fleets-remote-access-permissions"></a>

Una volta connesso a un'istanza del parco istanze, hai accesso utente e amministrativo completo. Ciò significa che hai anche la possibilità di causare errori o guasti con l'hosting dei giochi. Se l'istanza ospita giochi con giocatori attivi, potresti correre il rischio di interrompere le sessioni di gioco e far cadere i giocatori, oppure di interrompere i processi di chiusura del gioco, il che potrebbe causare errori nei dati e nei registri di gioco salvati.

Per le flotte di container, dopo l'accesso al container (vedi[Connect ai container](containers-remote-access.md)), le seguenti posizioni di file si applicano all'interno del filesystem del contenitore. Per le flotte EC2, queste posizioni di file si applicano direttamente all'istanza.

Cerca queste risorse su un'istanza di hosting:
+ **File della build di gioco.** Questi file sono la build del gioco su cui hai caricatoAmazon GameLift Servers. Includono uno o più file eseguibili, risorse e dipendenze del server di gioco. I file di build del gioco si trovano in una directory principale chiamata: `game` 
  + Su Windows: `c:\game`
  + In Linux: `/local/game`
+ **File di log del gioco.** Trova i file di registro generati dal tuo server di gioco nella directory `game` principale in qualsiasi percorso di directory che hai designato.
+ **Risorse di hosting di Amazon GameLift Servers.** La directory principale `Whitewater` contiene i file utilizzati dal Amazon GameLift Servers servizio per gestire l'attività di hosting dei giochi. Non modificate questi file per nessun motivo. 
+ **Configurazione di runtime.** Non accedete alla configurazione di runtime per le singole istanze. Per apportare modifiche a una proprietà di configurazione di runtime, aggiorna la configurazione di runtime della flotta (vedi il funzionamento dell' AWS SDK [UpdateRuntimeConfiguration](https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateRuntimeConfiguration.html)o il AWS CLI [update-runtime-configuration](https://docs.aws.amazon.com/cli/latest/reference/gamelift/update-runtime-configuration.html)).
+ **Dati sulla flotta.** Un file JSON contiene informazioni sulla flotta a cui appartiene l'istanza, utilizzabili dai processi del server in esecuzione sull'istanza. Il file JSON si trova nella seguente posizione:
  + Su Windows: `C:\GameMetadata\gamelift-metadata.json`
  + In Linux: `/local/gamemetadata/gamelift-metadata.json`
+ **Certificati TLS.** Se l'istanza fa parte di una flotta in cui è abilitata la generazione di certificati TLS, cerca i file di certificato, tra cui il certificato, la catena di certificati, la chiave privata e il certificato principale nella seguente posizione:
  + Su Windows: `c:\\GameMetadata\Certificates`
  + In Linux: `/local/gamemetadata/certificates/`

# Connect ai container
<a name="containers-remote-access"></a>

Per le flotte di Amazon GameLift Servers container, puoi accedere ai container dei server di gioco in esecuzione su un'istanza della flotta. Usa l'accesso ai container per risolvere i problemi delle sessioni di gioco, controllare i log ed eseguire il debug dei problemi di runtime.

## Connect a un container
<a name="containers-remote-access-connect"></a>

**Prima di iniziare:**  
Connect all'istanza fleet. Per istruzioni, consulta [Connect a flotte di istanze](fleets-remote-access.md).

Esegui il comando seguente per elencare i contenitori in esecuzione sull'istanza:

```
sudo docker ps
```

L'output elenca tutti i contenitori in esecuzione sull'istanza, inclusi i contenitori del server di gioco e Amazon GameLift Servers i contenitori interni. Cerca contenitori con l'immagine del tuo server di gioco per identificare i contenitori del server di gioco.

**Output di esempio:**

```
CONTAINER ID   IMAGE                  COMMAND                  CREATED      STATUS
b9676e9489f5   game-server-container  "/bin/sh -c ./$GAME_…"   2 days ago   Up 2 days
1d1c8443efe2   support-container      "/bin/sh -c ./$SUPPO…"   2 days ago   Up 2 days
```

Per connetterti a un contenitore del server di gioco, usa l'ID breve del contenitore nella `CONTAINER ID` colonna. Questo ti dà l'accesso completo in lettura e scrittura al filesystem del contenitore.

```
sudo docker exec -it container-short-id sh
```

## Connect a un container tramite la console
<a name="containers-remote-access-console"></a>

Puoi connetterti ai contenitori dei server di gioco dalla Amazon GameLift Servers console utilizzando Amazon EC2 Systems Manager (SSM). Questo metodo fornisce un accesso sicuro senza richiedere configurazioni o gestione delle credenziali aggiuntive. Puoi connetterti a un container dalla scheda **Computer** o dalla scheda **Sessioni di gioco** nella pagina dei dettagli della flotta.

1. Nella Amazon GameLift Servers console, scegli **Contenitori gestiti** dal pannello di navigazione, quindi **Fleets**.

1. Scegli l'ID della flotta che contiene il container o la sessione di gioco a cui desideri accedere.

1. Nella pagina dei dettagli della flotta, scegli una delle seguenti schede:
   + **Calcola**: elenca i container in circolazione nella flotta. Seleziona il contenitore a cui desideri connetterti.
   + **Sessioni di gioco**: elenca le sessioni di gioco per la flotta. Seleziona la sessione di gioco per connetterti al contenitore che la ospita.

1. Scegli **Connetti**. Copia il comando visualizzato per connetterti al contenitore, quindi scegli nuovamente **Connetti**.

1. Nella finestra di dialogo di connessione, scegli **Esegui** per creare una nuova sessione SSM. Il sistema autentica la sessione tramite AWS Key Management Service (AWS KMS) e apre un terminale nel browser.

1. Dopo esserti connesso all'istanza, incolla il comando docker dal passaggio 4 ed eseguilo sull'istanza per accedere al contenitore.

## Connect al container che ospita una sessione di gioco
<a name="containers-remote-access-game-session"></a>

Per connetterti al contenitore del server di gioco che ospita una sessione di gioco specifica, segui questi passaggi.

1. **Ottieni il nome del computer.** Chiama [describe-game-sessions](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-game-sessions.html)per ricevere il programma `ComputeName` per la sessione di gioco.

   **Richiesta**

   ```
   aws gamelift describe-game-sessions \
       --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \
       --game-session-id arn:aws:gamelift:us-west-2::gamesession/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa/gs-1111aaaa-2222-3333-4444-5555bbbb66cc
   ```

   **Risposta**

   ```
   {
     "GameSessions": [
       {
         "GameSessionId": "arn:aws:gamelift:us-west-2::gamesession/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa/gs-1111aaaa-2222-3333-4444-5555bbbb66cc",
         "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
         "ComputeName": "62c5ff7f7a9a445d84877074c80aeafc",
         "Status": "ACTIVE",
         . . .
       }
     ]
   }
   ```

   Annota il `ComputeName` valore della risposta (ad esempio,`62c5ff7f7a9a445d84877074c80aeafc`).

1. **Ottieni l'accesso al calcolo e gli attributi del contenitore.** Chiama [get-compute-access](https://docs.aws.amazon.com/cli/latest/reference/gamelift/get-compute-access.html)con l'ID della flotta e il nome del calcolo.

   La risposta include i seguenti campi:
   + `ContainerIdentifiers`— La `ContainerName` e `ContainerRuntimeId` per ogni contenitore.
   + `GameServerContainerGroupDefinitionArn`— L'ARN della definizione del gruppo di contenitori.
   + `Credentials`— Credenziali temporanee per la connessione all'istanza.

   **Richiesta**

   ```
   aws gamelift get-compute-access \
       --fleet-id fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \
       --compute-name 62c5ff7f7a9a445d84877074c80aeafc
   ```

   **Risposta**

   ```
   {
     "ComputeName": "62c5ff7f7a9a445d84877074c80aeafc",
     "ContainerIdentifiers": [
       {
         "ContainerName": "game-server",
         "ContainerRuntimeId": "02accb92cd9bef3373300e7151d5c2b3dcca3b06eff1bb4e345085fc008d4678"
       }
     ],
     "Credentials": {
       "AccessKeyId": "ASIAIOSFODNN7EXAMPLE",
       "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
       "SessionToken": "AQoDYXdzEJr...<remainder of session token>"
     },
     "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa",
     "GameServerContainerGroupDefinitionArn": "arn:aws:gamelift:us-west-2::containergroupdefinition/MyGameServerGroup"
   }
   ```

1. **Collegati all'istanza.** Utilizza le credenziali del passaggio 2 per connetterti all'istanza della flotta. Per istruzioni dettagliate, vedi [Connect a flotte di istanze](fleets-remote-access.md).

1. **Trova il nome del contenitore del server di gioco.** Chiama [describe-container-group-definition](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-container-group-definition.html)utilizzando il `GameServerContainerGroupDefinitionArn` metodo del passaggio 2 per identificare il nome del contenitore del server di gioco.

   **Richiesta**

   ```
   aws gamelift describe-container-group-definition \
       --name arn:aws:gamelift:us-west-2::containergroupdefinition/MyGameServerGroup
   ```

   **Risposta**

   ```
   {
     "ContainerGroupDefinition": {
       "ContainerGroupDefinitionArn": "arn:aws:gamelift:us-west-2:123456789012:containergroupdefinition/MyGameServerGroup:3",
       "Name": "MyGameServerGroup",
       "ContainerGroupType": "GAME_SERVER",
       "GameServerContainerDefinition": {
         "ContainerName": "game-server",
         . . .
       },
       . . .
     }
   }
   ```

   Nota il `GameServerContainerDefinition.ContainerName` valore (ad esempio,`game-server`).

1. **Identifica l'ID di runtime del contenitore del server di gioco.** Utilizzando il nome del contenitore del server di gioco del passaggio precedente, trova la `ContainerIdentifiers` voce corrispondente nella `get-compute-access` risposta del passaggio 2. Annotare il valore `ContainerRuntimeId`.

1. **Connect al container.** Utilizzate il `ContainerRuntimeId` come ID del contenitore ed eseguite il seguente comando:

   ```
   sudo docker exec -it 02accb92cd9bef3373300e7151d5c2b3dcca3b06eff1bb4e345085fc008d4678 sh
   ```