Creazione o aggiornamento di un'implementazione

Questa pagina spiega come creare, aggiornare e visualizzare i dettagli di un'implementazione di un Game Servers in un deployment. Un'implementazione configura le configurazioni dei server di gioco per scegliere come target le aree di autenticazione. Per un esempio end-to-end di come creare un deployment, aggiungere una configurazione, quindi implementarla, consulta la sezione Configurazione del comportamento di scalabilità dei cluster.


Figura 1. Implementazione della versione 1.0 nel regno statunitense, versione 1.1 nel regno di Europa e Giappone

Per ulteriori informazioni, consulta la panoramica sui server di gioco.

Prima di iniziare

Prima di iniziare, ti consigliamo di acquisire familiarità con i concetti principali nella panoramica dei server di gioco. Assicurati di aver eseguito anche le seguenti attività:

  • Assicurati di aver attivato l'API Game Services.
  • Abilita l'API Game Services
  • Scegli una shell con gcloud CLI installata o utilizza un client API:
  • Cloud Shell

    Per avviare Cloud Shell, esegui questi passaggi:

    1. Vai alla console Google Cloud.

      Console Google Cloud

    2. Nell'angolo in alto a destra della console, fai clic sul pulsante Attiva Cloud Shell:

    Una sessione di Cloud Shell si apre all'interno di un frame più in basso nella console. Utilizza questa shell per eseguire i comandi gcloud.

    Shell locale

    Installare l'interfaccia a riga di comando gcloud.

    Verifica di aver impostato il progetto predefinito desiderato per Google Cloud CLI (in caso contrario dovrai specificare il flag --project in modo esplicito per ogni comando in un secondo momento):

    gcloud config list project
    

    In caso contrario, puoi eseguire il seguente comando per impostare un progetto predefinito, sostituendo PROJECT_ID con l'ID progetto desiderato :

    gcloud config set project PROJECT_ID
    

    Esegui il comando seguente per verificare la tua versione di Google Cloud CLI. Game Servers richiede la versione 306.0.0 o successiva dellgcloud CLI.

    gcloud version
    

    Per aggiornare l'installazione, esegui il comando seguente:

    gcloud components update
    

    curl / PowerShell

    Per utilizzare l'API REST con curl o Windows PowerShell, segui questi passaggi:

    1. Crea un account di servizio.
    2. Scarica una chiave privata come file JSON.
    3. Imposta la variabile di ambiente GOOGLE_APPLICATION_CREDENTIALS sul percorso del file JSON che contiene le tue credenziali. Questa variabile si applica solo alla sessione di shell attuale. Pertanto, se apri una nuova sessione, imposta di nuovo la variabile.

    Libreria client

    I server di gioco Google Cloud possono essere controllati in modo programmatico utilizzando una libreria client. Per istruzioni sull'utilizzo della libreria e l'autenticazione, consulta la panoramica sulle librerie client.

Aggiornamento di un'implementazione

La procedura di aggiornamento di un'implementazione è uguale a quella per creare un'implementazione. Innanzitutto, assicurati di aver creato una Game Servers gioco. Se vuoi scegliere come target specifiche aree di autenticazione con una configurazione diversa, crea una configurazione di override separata.

Aggiornamento della configurazione predefinita di un'implementazione

La configurazione predefinita del server di gioco è implementata per tutti i domini. Per scegliere come target aree specifiche con una configurazione diversa, consulta la pagina Override della configurazione per alcune aree.

Console

  1. Nella console Google Cloud, vai alla pagina Deployment di server di giochi.

    Vai a Game Servers

  2. Individua un deployment nella tabella. Nell'ultima colonna della tabella, fai clic sui puntini di sospensione e seleziona Elenca configurazioni. In questa pagina puoi visualizzare le configurazioni attive e inattive per il deployment.

  3. Fai clic su Gestisci implementazione.

  4. (Facoltativo) Nell'elenco Seleziona una configurazione, scegli una configurazione predefinita che verrà applicata a tutti i realm.

  5. Fai clic su Salva.

gcloud

Per aggiornare la configurazione predefinita di un'implementazione di Game Servers utilizzando Google Cloud CLI:

  1. Esegui il comando seguente dopo aver sostituito i seguenti valori segnaposto:

    • deploymentID è l'identificatore univoco del deployment.
    • configID è un identificatore univoco della configurazione.
    gcloud game servers deployments update-rollout deploymentID --default-config configID --dry-run
    

    L'output restituisce targetState in modo da poter visualizzare l'anteprima delle modifiche.

  2. Per applicare le modifiche, esegui il comando seguente:

    gcloud game servers deployments update-rollout deploymentID --default-config configID --no-dry-run
    

REST

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_ID: il tuo ID progetto Google Cloud elencato nelle impostazioni IAM
  • DEPLOYMENT_ID: un identificatore definito dall'utente per il deployment
  • CONFIG_ID: un identificatore definito dall'utente per la configurazione

Corpo JSON richiesta:

{
  "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
  "defaultGameServerConfig": "CONFIG_ID"
}

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/PROJECT_ID/locations/global/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.gaming.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Cancellazione della configurazione predefinita di un'implementazione

Cancella la configurazione predefinita per rimuovere la configurazione del parco risorse per questo deployment da tutti i cluster di Game Servers.

Console

  1. Nella console Google Cloud, vai alla pagina Deployment di server di giochi.

    Vai a Game Servers

  2. Individua un deployment nella tabella. Nell'ultima colonna della tabella, fai clic sui puntini di sospensione e seleziona Elenca configurazioni. In questa pagina puoi visualizzare le configurazioni attive e inattive per il deployment.

  3. Fai clic su Gestisci implementazione.

  4. Nell'elenco Seleziona una configurazione, seleziona (nessuna configurazione predefinita).

  5. Fai clic su Salva.

gcloud

Per cancellare la configurazione predefinita di un'implementazione di Game Servers utilizzando Google Cloud CLI:

  1. Esegui il comando seguente dopo aver sostituito il seguente valore segnaposto:

    • deploymentID è l'identificatore univoco del deployment.
    gcloud game servers deployments update-rollout deploymentID --clear-default-config --dry-run
    

    L'output restituisce targetState in modo da poter visualizzare l'anteprima delle modifiche.

  2. Per applicare le modifiche, esegui il comando seguente:

    gcloud game servers deployments update-rollout deploymentID --clear-default-config --no-dry-run
    

REST

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_ID: il tuo ID progetto Google Cloud elencato nelle impostazioni IAM
  • DEPLOYMENT_ID: un identificatore definito dall'utente per il deployment

Corpo JSON richiesta:

{
  "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
  "defaultGameServerConfig": ""
}

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/PROJECT_ID/locations/global/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.gaming.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Override della configurazione per alcuni aree di autenticazione

Se vuoi scegliere come target specifiche aree di autenticazione con una configurazione diversa, crea una configurazione di override separata e seleziona una o più aree di autenticazione che riceveranno la configurazione di override (e non la configurazione predefinita).

Console

  1. Nella console Google Cloud, vai alla pagina Deployment di server di giochi.

    Vai a Game Servers

  2. Individua un deployment nella tabella. Nell'ultima colonna della tabella, fai clic sui puntini di sospensione e seleziona Elenca configurazioni. In questa pagina puoi visualizzare le configurazioni attive e inattive per il deployment.

  3. Fai clic su Gestisci implementazione.

  4. (Facoltativo) Nell'elenco Seleziona una configurazione, scegli una configurazione predefinita che verrà applicata a tutti i realm che non corrispondono a una configurazione di override.

  5. In Override configs, puoi specificare una o più configurazioni di override e le aree di autenticazione a cui associarle.

    1. Seleziona una configurazione di override dall'elenco Config e l'area di autenticazione da associare dall'elenco Realm.
    2. Utilizza i pulsanti freccia per modificare l'ordine di priorità delle configurazioni di sostituzione nell'elenco.
    3. Fai clic su Add (Aggiungi).
  6. Fai clic su Salva.

gcloud

Per applicare override della configurazione a determinati regni utilizzando Google Cloud CLI:

  1. Copia il seguente codice in un file e sostituisci i seguenti valori segnaposto:

    • realmID è l'identificatore completo di un'area di autenticazione, come projects/<projectID>/locations/<region>/realms/<realmID2>.
    • configID è un identificatore univoco della configurazione.
    - realmsSelector:
        realms:
            - realmID
      configVersion: configID
    
  2. Esegui il comando seguente dopo aver sostituito i seguenti valori segnaposto:

    • deploymentID è l'identificatore univoco del deployment.
    • configOverrideFile è il percorso del file con la configurazione di override.
    gcloud game servers deployments update-rollout deploymentID --config-overrides-file configOverrideFile --dry-run
    

    L'output restituisce targetState in modo da poter visualizzare l'anteprima delle modifiche.

  3. Per applicare le modifiche, esegui il comando seguente:

    gcloud game servers deployments update-rollout deploymentID --config-overrides-file configOverrideFile  --no-dry-run
    

REST

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_ID: il tuo ID progetto Google Cloud elencato nelle impostazioni IAM
  • LOCATION: l'area geografica per l'area di autenticazione (o global)
  • DEPLOYMENT_ID: un identificatore definito dall'utente per il deployment
  • REALM_ID: l'identificatore definito dall'utente per l'area di autenticazione
  • OVERRIDE_CONFIG_ID: un identificatore definito dall'utente per la configurazione di override

Corpo JSON richiesta:

{
  "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
  "gameServerConfigOverrides": [
  {
    "realmsSelector": {
      "realms": [
        "projects/PROJECT_ID/locations/LOCATION/realms/REALM_ID"
      ]
    },
    "configVersion": "OVERRIDE_CONFIG_ID"
  }
  ]
}

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/PROJECT_ID/locations/global/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.gaming.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Cancellazione override configurazione

Cancella la configurazione di override per rimuovere la configurazione del parco risorse per questo deployment dalle aree di destinazione.

Console

  1. Nella console Google Cloud, vai alla pagina Deployment di server di giochi.

    Vai a Game Servers

  2. Individua un deployment nella tabella. Nell'ultima colonna della tabella, fai clic sui puntini di sospensione e seleziona Elenca configurazioni. In questa pagina puoi visualizzare le configurazioni attive e inattive per il deployment.

  3. Fai clic su Gestisci implementazione.

  4. In Override configurazioni, fai clic sull'icona del cestino accanto alle configurazioni di override che vuoi cancellare.

  5. Fai clic su Salva.

gcloud

Per cancellare le sostituzioni di configurazione di un'implementazione di Game Servers utilizzando Google Cloud CLI:

  1. Esegui il comando seguente dopo aver sostituito il seguente valore segnaposto:

    • deploymentID è l'identificatore univoco del deployment.
    gcloud game servers deployments update-rollout deploymentID --clear-config-overrides --dry-run
    

    L'output restituisce targetState in modo da poter visualizzare l'anteprima delle modifiche.

  2. Per applicare le modifiche, esegui il comando seguente:

    gcloud game servers deployments update-rollout deploymentID --clear-config-overrides --no-dry-run
    

REST

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_ID: il tuo ID progetto Google Cloud elencato nelle impostazioni IAM
  • DEPLOYMENT_ID: un identificatore definito dall'utente per il deployment

Corpo JSON richiesta:

{
  "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
  "gameServerConfigOverrides": []
}

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/PROJECT_ID/locations/global/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.gaming.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Visualizzazione dei dettagli di un'implementazione

Console

  1. Nella console Google Cloud, vai alla pagina Deployment di server di giochi.

    Vai a Game Servers

  2. Individua un deployment nella tabella. Nell'ultima colonna della tabella, fai clic sui puntini di sospensione e seleziona Elenca configurazioni. In questa pagina puoi visualizzare le configurazioni attive e inattive per il deployment.

  3. Fai clic su Gestisci implementazione.

gcloud

Puoi visualizzare i dettagli di un'implementazione, ad esempio le configurazioni in uso, utilizzando Google Cloud CLI:

Per visualizzare i dettagli di un'implementazione, esegui questo comando dopo aver sostituito il seguente valore segnaposto:

  • deploymentID è l'identificatore univoco del deployment padre.
gcloud game servers deployments describe-rollout deploymentID

L'output mostra i dettagli dell'implementazione.

Puoi anche visualizzare lo stato dei cluster di server di gioco dopo l'applicazione dell'implementazione, utilizzando Google Cloud CLI:

gcloud game servers deployments fetch-state deploymentID

L'output mostra le modifiche applicate dall'implementazione su ciascun cluster del server di gioco.

REST

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_ID: il tuo ID progetto Google Cloud elencato nelle impostazioni IAM
  • DEPLOYMENT_ID: un identificatore definito dall'utente per il deployment

Per inviare la richiesta, espandi una delle seguenti opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID/rollout",
  "createTime": CREATE_TIME,
  "updateTime": UPDATE_TIME,
  "defaultGameServerConfig": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID/configs/CONFIG_ID",
  "gameServerConfigOverrides": [
    {
      "realmsSelector": {
        "realms": [
          "projects/PROJECT_ID/locations/LOCATION/realms/REALM_ID"
        ]
      },
      "configVersion": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID/configs/OVERRIDE_CONFIG_ID"
    }
  ],
  "etag": "cN31kxa6fWHtaZWUnUZ7LfamUN7Ggz13DWS58Sc5jIQ"
}

Risoluzione dei problemi relativi alle implementazioni

In questa sezione viene spiegato perché Game Servers potrebbero non riuscire ad aggiornare i cluster di server di gioco. Una causa comune può essere dovuta alla configurazione errata dei Game Servers o dei cluster di server di gioco. Puoi utilizzare il seguente elenco di controllo per diagnosticare i potenziali problemi riscontrati:

  • Verifica che siano soddisfatti i seguenti prerequisiti per un cluster Agones:
    1. Assicurati che il cluster sia in esecuzione e che Agones sia installato. Per verificare che il pod agones-controller sia nello stato Running, esegui questo comando:
      kubectl get pods -n agones-system -l agones.dev/role=controller
      
    2. Assicurati che lo spazio dei nomi del server di gioco disponga delle autorizzazioni richieste per i controlli dell'accesso basati sui ruoli (RBAC) per il controller Agones.
    3. Assicurati che la versione installata di Agones sia supportata da Game Servers.
  • Consulta la guida alla risoluzione dei problemi di Agones.
  • Verifica che la risorsa di deployment di Game Servers sia configurata correttamente:
    1. Se utilizzi una configurazione di override, assicurati che il deployment venga applicato all'area di autenticazione con il cluster di destinazione.
    2. Assicurati che la specifica del parco risorse sia configurata correttamente. Per convalidare le specifiche del tuo parco risorse, prova a visualizzare manualmente un server di gioco.
    3. Se non è stata apportata una modifica pianificata, assicurati che la pianificazione sia configurata correttamente. Il fuso orario di una pianificazione segue il fuso orario del realm.

Passaggi successivi

Scopri come eliminare una configurazione.