Borra un clúster

En esta página, se explica cómo borrar un clúster de Game Servers.

Antes de comenzar

Antes de comenzar, te recomendamos que te familiarices con los conceptos clave en la Descripción general de servidores para juegos. Asegúrate de haber realizado las siguientes tareas:

  • Asegúrate de haber habilitado la API de los servicios de juego.
  • Habilita la API de servicios de juego
  • Elige una shell con el SDK de Cloud instalado o usa un cliente de la API:
  • Cloud Shell

    Para iniciar Cloud Shell, sigue estos pasos:

    1. Ve a Google Cloud Console

      Google Cloud Console

    2. Desde la esquina superior derecha de la consola, haz clic en el botón Activar Cloud Shell: .

    Se abrirá una sesión de Cloud Shell dentro de un marco en la parte inferior en la consola. Usa esta shell para ejecutar los comandos de gcloud.

    Shell local

    Para instalar gcloud, instala el SDK de Cloud, que incluye la herramienta de línea de comandos de gcloud.

    Verifica que hayas configurado el proyecto predeterminado deseado para la herramienta de línea de comandos de gcloud (de lo contrario, deberás especificar la marca --project de forma explícita para cada comando que se encuentra más adelante):

    gcloud config list project
    

    Si no puedes ejecutar el siguiente comando para configurar un proyecto predeterminado, reemplaza PROJECT_ID por el ID del proyecto deseado:

    gcloud config set project PROJECT_ID
    

    Ejecuta el siguiente comando para verificar tu versión del SDK de Google Cloud. Game Servers requiere la versión 306.0.0 o posterior del SDK.

    gcloud version
    

    Para actualizar la instalación, ejecuta el siguiente comando:

    gcloud components update
    

    curl / PowerShell

    Para usar la API de REST con curl o Windows PowerShell, haz lo siguiente:

    1. Crea una cuenta de servicio.
    2. Descarga una clave privada como un archivo JSON.
    3. Configura la variable de entorno GOOGLE_APPLICATION_CREDENTIALS en la ruta del archivo JSON que contiene la clave de tu cuenta de servicio. Esta variable solo se aplica a la sesión actual de shell. Por lo tanto, si abres una sesión nueva, deberás volver a configurar la variable.

    Biblioteca cliente

    Google Cloud Game Servers se puede controlar de manera programática mediante una biblioteca cliente. Consulta Descripción general de bibliotecas cliente a fin de obtener instrucciones para usar la biblioteca y la autenticación.

Borra un clúster

Si borras un clúster de Game Servers, no se borrarán los recursos del clúster.

Console

  1. En Cloud Console, ve a la página Dominios y clústeres.

    Ir a Game Servers

  2. Expande un dominio para ver los clústeres del servidor para videojuegos que le pertenecen.

  3. En la última columna de la tabla del clúster, haz clic en la elipsis y selecciona Remove game server cluster.

gcloud

Puedes borrar un clúster de Game Servers a nivel global o regional con la herramienta de línea de comandos de gcloud.

Para borrar un clúster global, sigue estos pasos:

  1. Ejecuta el siguiente comando y reemplaza los valores del marcador de posición, como clusterID y realmID, por los valores apropiados:

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

    El resultado muestra el targetState para que puedas obtener una vista previa de la operación antes de borrar el clúster.

  2. Para borrar el clúster, ejecuta el siguiente comando:

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

Para borrar un clúster regional, sigue estos pasos:

  1. Ejecuta el siguiente comando y reemplaza los valores del marcador de posición, como clusterID, con los valores apropiados:

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

    El resultado muestra el targetState para que puedas obtener una vista previa de la operación antes de borrar el clúster.

  2. Para borrar el clúster, ejecuta el siguiente comando:

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

Los marcadores de posición de variables corresponden a las siguientes descripciones:

  • clusterID es el identificador único que especificaste para este clúster.
  • realmID es el identificador único que especificaste para el dominio superior de este clúster.
  • region es la región del clúster, si corresponde. Elige la misma ubicación que el dominio superior.

LÍNEA DE REST Y CMD

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: El ID del proyecto de Google Cloud que aparece en la Configuración de IAM.
  • REALM_LOCATION: La región para el dominio o global
  • REALM_ID: El identificador definido por el usuario para el dominio
  • GS_CLUSTER_ID: El identificador definido por el usuario para el clúster

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "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
}

Comienza a usarlo

Para obtener información sobre cómo instalar y usar la biblioteca cliente de Game Servers, consulta Bibliotecas cliente de 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

Para obtener información sobre cómo instalar y usar la biblioteca cliente de Game Servers, consulta Bibliotecas cliente de 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

Para obtener información sobre cómo instalar y usar la biblioteca cliente de Game Servers, consulta Bibliotecas cliente de 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

Para obtener información sobre cómo instalar y usar la biblioteca cliente de Game Servers, consulta Bibliotecas cliente de 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)

Verifica que se borró tu clúster

Verifica que borraste correctamente el clúster mediante la enumeración de tus clústeres globales o regionales con la herramienta de línea de comandos de gcloud.

Para enumerar todos los clústeres, ejecuta el siguiente comando:

gcloud game servers clusters list

Para enumerar los clústeres en una región, ejecuta el siguiente comando y reemplaza region por la región en la que deseas enumerar los clústeres:

gcloud game servers clusters list --location=region

Para enumerar todos los clústeres en un dominio, ejecuta el comando siguiente y reemplaza realmID por el dominio superior y region por la región del clúster, si corresponde:

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

El clúster borrado ya no aparece en el resultado del comando.

¿Qué sigue?

Obtén información sobre los conceptos clave en la descripción general de Game Servers.