View a markdown version of this page

Creare una definizione di gruppo di contenitori per un GameLift Server Amazon flotta di container - GameLift Server Amazon

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

Creare una definizione di gruppo di contenitori per un GameLift Server Amazon flotta di container

Una definizione di gruppo di container descrive come distribuire le applicazioni del server di gioco containerizzate su un parco di container. È un progetto che indica Amazon GameLift Servers quali immagini dei container distribuire nella flotta e come eseguirle. Quando si crea una flotta di container, si specificano le definizioni dei gruppi di container da distribuire nella flotta. Per ulteriori informazioni sui gruppi di container, vedereComponenti della flotta di container.

Prima di iniziare

Suggerimenti su cosa fare prima di iniziare a creare una definizione di gruppo di contenitori:

  • Finalizza le immagini del contenitore e inviale a un repository Amazon Elastic Container Registry (Amazon ECR) nello stesso in Regione AWS cui intendi creare il gruppo di contenitori. Amazon GameLift Serversacquisisce un'istantanea di ogni immagine al momento della creazione della definizione del gruppo di container e la utilizza durante la distribuzione in una flotta di container. Consulta Crea un'immagine del contenitore per GameLift Server Amazon.

  • Crea le definizioni dei container come file JSON. Una definizione di gruppo di contenitori include una o più definizioni di contenitori. È possibile utilizzare i file JSON se si crea una definizione di gruppo di contenitori utilizzando la AWS CLI per. Amazon GameLift Servers

  • Verifica che il tuo AWS utente disponga delle autorizzazioni IAM per accedere al repository Amazon ECR. Consulta Esempi di autorizzazioni IAM per Amazon GameLift Servers.

Crea una definizione di gruppo di contenitori per server di gioco

Il software del server di gioco è gestito da un gruppo di contenitori per server di gioco. Un gruppo di contenitori di server di gioco ha un contenitore di server di gioco, che esegue l'eseguibile del server di gioco. Può anche avere uno o più contenitori di supporto per eseguire software aggiuntivo a supporto del server di gioco. (A volte vengono definiti contenitori «sidecar»).

Questo argomento descrive come creare una semplice definizione di gruppo di contenitori per server di gioco utilizzando la Amazon GameLift Servers console o gli strumenti AWS CLI. Per informazioni più dettagliate sulle funzionalità opzionali, consultaPersonalizza un GameLift Server Amazon flotta di container.

Nota

È possibile modificare la maggior parte delle definizioni dei gruppi di contenitori e delle impostazioni di definizione dei contenitori dopo averle create. Se si apportano modifiche alla definizione di un contenitore, Amazon GameLift Servers acquisisce una nuova istantanea delle immagini aggiornate del contenitore.

Per creare una semplice definizione di gruppo di contenitori del server di gioco:

Le seguenti istruzioni descrivono come creare una definizione di gruppo di contenitori con i parametri minimi richiesti e utilizzando i valori Amazon GameLift Servers predefiniti.

Console

Nella Amazon GameLift Servers console, seleziona il Regione AWS punto in cui desideri creare il gruppo di contenitori.

Apri la barra di navigazione sinistra della console e scegli Contenitori gestiti: definizioni di gruppo. Nella pagina di definizione dei gruppi di contenitori, scegli Crea definizione di gruppo.

Passo 1: Definisci i dettagli della definizione del gruppo di contenitori
  1. Inserisci un nome per la definizione del gruppo di contenitori. Il nome deve essere univoco per la regione Account AWS and.

  2. Seleziona il tipo di gruppo di contenitori del server di gioco.

  3. Per Limite di memoria totale, inserisci le risorse di memoria massime da rendere disponibili per tutti i contenitori del gruppo di contenitori. Per informazioni sul calcolo di questo valore, consultaImposta i limiti delle risorse.

  4. Per Limite totale di vCPU, inserite la potenza di calcolo massima da rendere disponibile per tutti i contenitori del gruppo di contenitori. Per informazioni sul calcolo di questo valore, consulta. Imposta i limiti delle risorse

Fase 2: Aggiungere le definizioni dei contenitori

Come minimo, un gruppo di contenitori di server di gioco ha un contenitore di server di gioco. Nella console, la prima definizione di contenitore che crei è il contenitore del server di gioco. Questo passaggio descrive come definire le impostazioni minime richieste per la definizione del contenitore di un server di gioco.

  1. Inserisci un nome per la definizione del contenitore. Ogni contenitore definito per il gruppo deve avere un valore di nome univoco.

  2. Collegati a un'immagine del contenitore con la build del tuo server di gioco. Inserisci l'URI dell'immagine Amazon ECR per un'immagine del contenitore in un repository pubblico o privato. Puoi utilizzare uno dei seguenti formati:

    • Solo URI dell'immagine: [Account AWS].dkr.ecr.[Regione AWS].amazonaws.com/[repository ID]

    • URI dell'immagine + digest: [Account AWS].dkr.ecr.[Regione AWS].amazonaws.com/[repository ID]@[digest]

    • URI dell'immagine + tag: [Account AWS].dkr.ecr.[Regione AWS].amazonaws.com/[repository ID]:[tag]

  3. Specifica la versione Amazon GameLift Servers Server SDK utilizzata dalla build del server di gioco. Per una flotta di container, questo valore deve essere 5.2.0 o superiore.

  4. In Intervallo di porte del contenitore interno, imposta il protocollo e definisci un intervallo di porte. La dimensione dell'intervallo deve essere maggiore del numero di processi simultanei del server di gioco che verranno eseguiti in questo contenitore. Se il contenitore del server di gioco esegue solo un processo server per contenitore, questo intervallo di porte richiede solo poche porte. Per ulteriori dettagli, consultare Configurare le connessioni di rete.

  5. Se necessario, aggiungi altri contenitori per eseguire software di supporto aggiuntivo. I contenitori aggiuntivi vengono designati automaticamente come contenitori di supporto. Un gruppo di contenitori di server di gioco può avere un solo contenitore di server di gioco e fino a otto contenitori di supporto. Fornisci le seguenti impostazioni minime richieste:

    • Definizione del contenitore: Nome

    • URI dell'immagine ECR.

    • Porte interne del contenitore (includetelo solo se il contenitore ha processi che richiedono l'accesso alla rete).

Fase 3: Configurazione delle dipendenze
  • Se la definizione del gruppo di contenitori ha più di un contenitore, è possibile impostare facoltativamente le dipendenze tra i contenitori. Per ulteriori informazioni, consulta Imposta le dipendenze del container.

Fase 3: Revisione e creazione
  1. Rivedi tutte le impostazioni di definizione del gruppo di contenitori. Usa Modifica per apportare modifiche a qualsiasi sezione, inclusa ciascuna delle definizioni dei contenitori per il gruppo.

  2. Al termine della revisione, scegli Crea.

    Se la richiesta ha esito positivo, la console visualizza la pagina dei dettagli della nuova risorsa di definizione del gruppo di contenitori. Inizialmente lo stato èCOPYING, as Amazon GameLift Servers inizia a scattare istantanee di tutte le immagini dei contenitori per il gruppo. Al termine di questa fase, lo stato della definizione del gruppo di contenitori cambia inREADY. Una definizione di gruppo di container deve essere READY presente prima di poter creare una flotta di container con essa.

AWS CLI

Quando utilizzi la AWS CLI per creare una definizione di gruppo di container, mantieni le configurazioni delle definizioni dei container in un file separatoJSON. Puoi fare riferimento al file nel tuo comando CLI. Vedi Crea un file JSON di definizione del contenitore per alcuni esempi di schema.

Crea una definizione di gruppo di contenitori

Per creare una nuova definizione di gruppo di contenitori, utilizzate il comando create-container-group-definition CLI. Per ulteriori informazioni su questo comando, vedere https://docs.aws.amazon.com/cli/latest/reference/gamelift/create-container-group-definition.html create-container-group-definition nel CLI Command Reference. AWS

Questo esempio illustra una richiesta di definizione di un gruppo di contenitori per server di gioco. Presuppone che tu abbia creato un file JSON con le definizioni dei contenitori per questo gruppo.

aws gamelift create-container-group-definition \ --name MyAdventureGameContainerGroup \ --operating-system AMAZON_LINUX_2023 \ --container-group-type GAME_SERVER \ --total-memory-limit-mebibytes 4096 \ --total-vcpu-limit 1 \ --game-server-container-definition file://MyAdventureGameContainers.json

Crea un file JSON di definizione del contenitore

Quando si crea una definizione di gruppo di contenitori, si definiscono anche i contenitori per il gruppo. Una definizione di contenitore specifica il repository Amazon ECR in cui è archiviata l'immagine del contenitore e le configurazioni opzionali per le porte di rete, i limiti per l'utilizzo di CPU e memoria e altre impostazioni. Consigliamo di creare un singolo JSON file con le configurazioni per tutti i contenitori di un gruppo di contenitori. La gestione di un file è utile per archiviare, condividere e tenere traccia delle versioni di queste configurazioni critiche. Se si utilizza la AWS CLI per creare le definizioni dei gruppi di contenitori, è possibile fare riferimento al file nel comando.

Per creare una definizione di contenitore
  1. Creare e aprire un nuovo .JSON file. Ad esempio:

    [~/work/glc]$ vim SimpleServer.json
  2. Crea una definizione di contenitore separata per ciascuno dei contenitori del gruppo. Copia il seguente contenuto di esempio e modificalo secondo necessità per i tuoi contenitori. Per i dettagli sulla sintassi della definizione di un contenitore, consulta ContainerDefinitionInput l'Amazon GameLift ServersAPI Reference.

  3. Salvate il file localmente in modo da potervi fare riferimento in un comando AWS CLI.

Esempio

Questo esempio descrive il contenitore essenziale per il gruppo di contenitori del server di gioco. Il contenitore di replica essenziale include l'applicazione del server di gioco, l'Amazon GameLift ServersAgent, e può includere altro software di supporto per l'hosting del gioco. La definizione deve includere un nome, un URI dell'immagine e una configurazione della porta. Questo esempio imposta anche alcuni limiti di risorse specifici del contenitore.

{ "ContainerName": "MyAdventureGameServer", "ImageUri": "111122223333.dkr.ecr.us-east-1.amazonaws.com/gl-containers:myadventuregame-server", "PortConfiguration": { "ContainerPortRanges": [ { "FromPort": 2000, "Protocol": "TCP", "ToPort": 2010 } ] }, "ServerSdkVersion": "5.2.0" }