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.
  • Habilitar la API de Game Services
  • Elige una shell con la CLI de gcloud instalada o usa un cliente de API:
  • Cloud Shell

    Para iniciar Cloud Shell, sigue estos pasos:

    1. Ve a la consola de Google Cloud.

      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

    Instala la CLI de gcloud

    Verifica si configuraste el proyecto predeterminado deseado para la CLI de Google Cloud (de lo contrario, deberás especificar la marca --project de forma explícita para cada comando 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
    

    Ejecute el siguiente comando para verificar su versión de la CLI de Google Cloud. Game Servers requiere la versión 306.0.0 o una posterior de la CLI de gcloud.

    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 Google Cloud Console, ve a la página Clústeres y dominios.

    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 global o regional de Game Servers con la CLI de Google Cloud.

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 CMD Y REST

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

  • PROJECT_ID: Es el ID de tu proyecto de Google Cloud que aparece en Configuración de IAM.
  • REALM_LOCATION: Es la región para el dominio o global.
  • REALM_ID: Es el identificador definido por el usuario para el dominio.
  • GS_CLUSTER_ID: Es 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
}

C#

Si deseas obtener información para instalar y usar la biblioteca cliente de Game Servers, consulta las bibliotecas cliente de Game Servers.


using Google.Cloud.Gaming.V1;
using Google.LongRunning;
using Google.Protobuf.WellKnownTypes;

public class DeleteClusterSample
{
    public void DeleteCluster(
        string projectId, string regionId, string realmId, string clusterId)
    {
        // Create the client.
        GameServerClustersServiceClient client = GameServerClustersServiceClient.Create();

        DeleteGameServerClusterRequest request = new DeleteGameServerClusterRequest
        {
            GameServerClusterName = GameServerClusterName.FromProjectLocationRealmCluster(projectId, regionId, realmId, clusterId)
        };

        // Make the request.
        Operation<Empty, OperationMetadata> response = client.DeleteGameServerCluster(request);

        // Poll until the returned long-running operation is complete.
        response.PollUntilCompleted();
    }
}

Go

Si deseas obtener información para instalar y usar la biblioteca cliente de Game Servers, consulta las 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

Si deseas obtener información para instalar y usar la biblioteca cliente de Game Servers, consulta las 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

Si deseas obtener información para instalar y usar la biblioteca cliente de Game Servers, consulta las 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

Si deseas obtener información para instalar y usar la biblioteca cliente de Game Servers, consulta las 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

Para verificar que borraste correctamente el clúster, enumere los clústeres globales o regionales con la CLI de Google Cloud.

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.