Supprimer un cluster

Cette page explique comment supprimer un cluster de Game Servers.

Avant de commencer

Avant de commencer, nous vous recommandons de vous familiariser avec les concepts clés de la page Présentation de Game Servers. Assurez-vous également que vous avez également effectué les tâches suivantes :

  • Assurez-vous d'avoir activé l'API des services de jeux.
  • Activer l'API des services de jeux
  • Choisissez une interface système sur laquelle le SDK Cloud est installé, ou utilisez un client API :
  • Cloud Shell

    Pour lancer Cloud Shell, procédez comme suit :

    1. Accédez à Google Cloud Console.

      Google Cloud Console

    2. Dans l'angle supérieur droit de la console, cliquez sur le bouton Activer Cloud Shell :

    Une session Cloud Shell s'ouvre dans un cadre situé en bas de la console. Cette interface système vous permet d'exécuter les commandes gcloud.

    Interface système locale

    Pour installer gcloud, installez le SDK Cloud, qui inclut l'outil de ligne de commande gcloud.

    Vérifiez que vous avez défini le projet par défaut souhaité pour l'outil de ligne de commande gcloud. Sinon, vous devrez spécifier explicitement l'option --project pour chaque commande ultérieurement :

    gcloud config list project
    

    Si non, vous pouvez exécuter la commande suivante pour définir un projet par défaut, en remplaçant PROJECT_ID par l'ID de projet souhaité :

    gcloud config set project PROJECT_ID
    

    Exécutez la commande suivante pour vérifier votre version du SDK Google Cloud. Game Servers nécessite la version 306.0.0 ou une version ultérieure du SDK.

    gcloud version
    

    Pour mettre à jour votre installation, exécutez la commande suivante :

    gcloud components update
    

    curl / PowerShell

    Pour utiliser l'API REST avec curl ou Windows PowerShell, procédez comme suit:

    1. Créer un compte de service
    2. Téléchargez une clé privée en tant que fichier JSON.
    3. Définissez la variable d'environnement GOOGLE_APPLICATION_CREDENTIALS pour qu'elle pointe vers le chemin du fichier JSON contenant la clé de votre compte de service. Cette variable ne s'applique qu'à la session de shell actuelle. Par conséquent, si vous ouvrez une nouvelle session, vous devez de nouveau la définir.

    Bibliothèque cliente

    Google Cloud Game Servers peut être contrôlé par programmation à l'aide d'une bibliothèque cliente. Pour obtenir des instructions sur l'utilisation de la bibliothèque et l'authentification, consultez la page Présentation des bibliothèques clientes.

Supprimer un cluster

La suppression d'un cluster Game Servers ne supprime aucune ressource du cluster.

Console

  1. Dans Cloud Console, accédez à la page Domaines et clusters.

    Accéder à Game Servers

  2. Développez un domaine pour afficher les clusters de serveurs de jeu qui lui appartiennent.

  3. Dans la dernière colonne du tableau concernant le cluster, cliquez sur les points de suspension , puis sélectionnez Supprimer le cluster de serveurs de jeu.

gcloud

Vous pouvez supprimer un cluster global ou régional de Game Servers à l'aide de l'outil de ligne de commande gcloud.

Pour supprimer un cluster global :

  1. Exécutez la commande suivante et remplacez les valeurs des espaces réservés tels que clusterID et realmID par des valeurs appropriées :

    gcloud game servers clusters delete clusterID --realm=realmID --dry-run
    

    Le résultat affiche targetState pour vous permettre de prévisualiser l'opération avant de supprimer le cluster.

  2. Pour supprimer le cluster, exécutez la commande suivante :

    gcloud game servers clusters delete clusterID --realm=realmID --no-dry-run
    

Pour supprimer un cluster régional, procédez comme suit :

  1. Exécutez la commande suivante et remplacez les valeurs des espaces réservés tels que clusterID par les valeurs appropriées :

    gcloud game servers clusters delete clusterID --realm=realmID --location=region --dry-run
    

    Le résultat affiche targetState pour vous permettre de prévisualiser l'opération avant de supprimer le cluster.

  2. Pour supprimer le cluster, exécutez la commande suivante :

    gcloud game servers clusters delete clusterID --realm=realmID --location=region --no-dry-run
    

Les espaces réservés de variables correspondent aux descriptions suivantes :

  • clusterID est l'identifiant unique que vous avez spécifié pour ce cluster.
  • realmID est l'identifiant unique que vous avez spécifié pour le domaine parent de ce cluster.
  • region est la région du cluster, le cas échéant. Choisissez le même lieu que le domaine parent.

API REST et ligne de commande

Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :

  • PROJECT_ID: ID de votre projet Google Cloud, répertorié dans les paramètres IAM.
  • REALM_LOCATION: région du domaine ou global
  • REALM_ID: identifiant défini par l'utilisateur pour le domaine
  • GS_CLUSTER_ID: identifiant défini par l'utilisateur pour le cluster

Pour envoyer votre requête, développez l'une des options suivantes :

Vous devriez recevoir une réponse JSON de ce type :

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.gaming.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/LOCATION/realms/REALM_ID/gameServerClusters/GS_CLUSTER_ID",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Go

Pour savoir comment installer et utiliser la bibliothèque cliente pour Game Servers, consultez la section Bibliothèques clientes Game Servers.


import (
	"context"
	"fmt"
	"io"

	gaming "cloud.google.com/go/gaming/apiv1"
	gamingpb "google.golang.org/genproto/googleapis/cloud/gaming/v1"
)

// deleteCluster unregisters a game server cluster.
func deleteCluster(w io.Writer, projectID, location, realmID, clusterID string) error {
	// projectID := "my-project"
	// location := "global"
	// realmID := "myrealm"
	// clusterID := "mycluster"
	ctx := context.Background()
	client, err := gaming.NewGameServerClustersClient(ctx)
	if err != nil {
		return fmt.Errorf("NewGameServerClustersClient: %v", err)
	}
	defer client.Close()

	req := &gamingpb.DeleteGameServerClusterRequest{
		Name: fmt.Sprintf("projects/%s/locations/%s/realms/%s/gameServerClusters/%s", projectID, location, realmID, clusterID),
	}

	op, err := client.DeleteGameServerCluster(ctx, req)
	if err != nil {
		return fmt.Errorf("DeleteGameServerCluster: %v", err)
	}
	err = op.Wait(ctx)
	if err != nil {
		return fmt.Errorf("Wait: %v", err)
	}

	fmt.Fprintf(w, "Cluster deleted.")
	return nil
}

Java

Pour savoir comment installer et utiliser la bibliothèque cliente pour Game Servers, consultez la section Bibliothèques clientes Game Servers.


import com.google.api.gax.longrunning.OperationFuture;
import com.google.cloud.gaming.v1.GameServerClustersServiceClient;
import com.google.cloud.gaming.v1.OperationMetadata;
import com.google.protobuf.Empty;
import java.io.IOException;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;

public class DeleteCluster {

  public static void deleteGameServerCluster(
      String projectId, String regionId, String realmId, String clusterId)
      throws IOException, InterruptedException, ExecutionException, TimeoutException {
    // String projectId = "your-project-id";
    // String regionId = "us-central1-f";
    // String clusterId = "your-game-server-cluster-id";
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (GameServerClustersServiceClient client = GameServerClustersServiceClient.create()) {
      String parent =
          String.format("projects/%s/locations/%s/realms/%s", projectId, regionId, realmId);
      String clusterName = String.format("%s/gameServerClusters/%s", parent, clusterId);

      OperationFuture<Empty, OperationMetadata> call =
          client.deleteGameServerClusterAsync(clusterName);

      call.get(1, TimeUnit.MINUTES);
      System.out.println("Game Server Cluster deleted: " + clusterName);
    }
  }
}

Node.js

Pour savoir comment installer et utiliser la bibliothèque cliente pour Game Servers, consultez la section Bibliothèques clientes Game Servers.

const {
  GameServerClustersServiceClient,
} = require('@google-cloud/game-servers');

const client = new GameServerClustersServiceClient();

async function deleteGameServerCluster() {
  /**
   * TODO(developer): Uncomment these variables before running the sample.
   */
  // const projectId = 'Your Google Cloud Project ID';
  // const location = 'A Compute Engine region, e.g. "us-central1"';
  // const realmId = 'The ID of the realm to locate this cluster in';
  // const gameClusterId = 'The unique ID for this Game Server Cluster';
  const request = {
    // Provide full resource name of a Game Server Realm
    name: client.gameServerClusterPath(
      projectId,
      location,
      realmId,
      gameClusterId
    ),
  };

  const [operation] = await client.deleteGameServerCluster(request);
  await operation.promise();

  console.log('Game Server cluster deleted');
}

deleteGameServerCluster();

Python

Pour savoir comment installer et utiliser la bibliothèque cliente pour Game Servers, consultez la section Bibliothèques clientes Game Servers.

def delete_cluster(project_id, location, realm_id, cluster_id):
    """Deletes a game server cluster."""

    client = gaming.GameServerClustersServiceClient()

    request = game_server_clusters.DeleteGameServerClusterRequest(
        name=f"projects/{project_id}/locations/{location}/realms/{realm_id}/gameServerClusters/{cluster_id}",
    )

    operation = client.delete_game_server_cluster(request)
    print(f"Delete cluster operation: {operation.operation.name}")
    operation.result(timeout=120)

Vérifiez que votre cluster a bien été supprimé

Vérifiez que le cluster a bien été supprimé en répertoriant vos clusters globaux ou régionaux à l'aide de l'outil de ligne de commande gcloud.

Pour répertorier tous les clusters, exécutez la commande suivante :

gcloud game servers clusters list

Pour répertorier les clusters d'une région, exécutez la commande suivante et remplacez region par la région dans laquelle vous souhaitez répertorier les clusters :

gcloud game servers clusters list --location=region

Pour répertorier tous les clusters d'un domaine, exécutez la commande suivante et remplacez realmID par le domaine parent et region par la région du cluster, le cas échéant :

gcloud game servers clusters list --realm=realmID --location=region

Le cluster supprimé n'apparaît plus dans le résultat de la commande.

Étape suivante

Découvrez les concepts clés dans la présentation de Game Servers.