Deployment löschen

Auf dieser Seite wird gezeigt, wie Sie ein Game Servers-Deployment löschen.

Hinweis

Bevor Sie beginnen, sollten Sie sich mit den wichtigsten Konzepten in der Übersicht über Game Servers vertraut machen. Führen Sie außerdem die folgenden Aufgaben aus:

  • Prüfen Sie, ob die Game Services API aktiviert ist.
  • Game Services API aktivieren
  • Wählen Sie entweder eine Shell mit installiertem Cloud SDK aus oder verwenden Sie einen API-Client:
  • Cloud Shell

    So starten Sie Cloud Shell:

    1. Öffnen Sie die Google Cloud Console.

      Google Cloud Console

    2. Klicken Sie in der oberen rechten Ecke der Console auf die Schaltfläche Cloud Shell aktivieren:

    In einem Frame im unteren Teil der Console wird eine Cloud Shell-Sitzung geöffnet. Mit dieser Shell führen Sie gcloud-Befehle aus.

    Lokale Shell

    Installieren Sie zur Installation von gcloud das Cloud SDK. Darin ist das gcloud-Befehlszeilentool enthalten.

    Prüfen Sie, ob Sie das gewünschte Standardprojekt für das gcloud-Befehlszeilentool festgelegt haben. Andernfalls müssen Sie das Flag --project für jeden Befehl später explizit angeben:

    gcloud config list project
    

    Wenn Sie den folgenden Befehl nicht ausführen können, um ein Standardprojekt festzulegen, ersetzen Sie PROJECT_ID durch Ihre gewünschte Projekt-ID:

    gcloud config set project PROJECT_ID
    

    Führen Sie den folgenden Befehl aus, um Ihre Version des Google Cloud SDK zu prüfen. Für Game Servers ist Version 306.0.0 oder höher des SDK erforderlich.

    gcloud version
    

    Aktualisieren Sie Ihre Installation mit dem folgenden Befehl:

    gcloud components update
    

    curl / PowerShell

    So verwenden Sie die REST API mit curl oder Windows PowerShell:

    1. Erstellen Sie ein Dienstkonto:
    2. Laden Sie einen privaten Schlüssel als JSON-Datei herunter.
    3. Legen Sie für die Umgebungsvariable GOOGLE_APPLICATION_CREDENTIALS den Pfad der JSON-Datei fest, die Ihren Dienstkontoschlüssel enthält. Diese Variable gilt nur für Ihre aktuelle Shellsitzung. Wenn Sie eine neue Sitzung öffnen, müssen Sie die Variable noch einmal festlegen.

    Clientbibliothek

    Google Cloud Game Servers können mithilfe einer Clientbibliothek programmatisch gesteuert werden. Wie Sie die Bibliothek und die Authentifizierung verwenden, erfahren Sie in der Übersicht zu Clientbibliotheken.

Deployment löschen

Bevor Sie eine Game Servers-Bereitstellung löschen, müssen Sie alle Konfigurationen löschen.

Console

  1. Rufen Sie in der Cloud Console die Seite Game Server Deployment auf.

    Zu Game Servers

  2. Mit dem Filterfeld können Sie die Deploymentliste nach unterschiedlichen Attributen filtern.

  3. Klicken Sie in der letzten Tabellenspalte auf die drei Punkte und wählen Sie Deployment entfernen aus.

gcloud

Mit dem gcloud-Befehlszeilentool können Sie eine Bereitstellung löschen.

Führen Sie den folgenden Befehl aus, um eine Bereitstellung zu löschen und ersetzen Sie deploymentID durch die ID einer Bereitstellung, die Sie zuvor erstellt haben:

gcloud game servers deployments delete deploymentID

REST UND BEFEHLSZEILE

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: Ihre Google Cloud-Projekt-ID, die in den IAM-Einstellungen aufgeführt ist
  • DEPLOYMENT_ID: die benutzerdefinierte Kennung für das Deployment

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

{
  "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": "delete",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Go

Informationen zum Installieren und Verwenden der Clientbibliothek für Game Servers finden Sie unter Game Servers-Clientbibliotheken.


import (
	"context"
	"fmt"
	"io"

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

// deleteGameServerDeployment deletes a game server deployment.
func deleteGameServerDeployment(w io.Writer, projectID, deploymentID string) error {
	// projectID := "my-project"
	// deploymentID := "mydeployment"
	ctx := context.Background()
	client, err := gaming.NewGameServerDeploymentsClient(ctx)
	if err != nil {
		return fmt.Errorf("NewGameServerDeploymentsClient: %v", err)
	}
	defer client.Close()

	req := &gamingpb.DeleteGameServerDeploymentRequest{
		Name: fmt.Sprintf("projects/%s/locations/global/gameServerDeployments/%s", projectID, deploymentID),
	}

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

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

Java

Informationen zum Installieren und Verwenden der Clientbibliothek für Game Servers finden Sie unter Game Servers-Clientbibliotheken.


import com.google.api.gax.longrunning.OperationFuture;
import com.google.cloud.gaming.v1.GameServerDeploymentsServiceClient;
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 DeleteDeployment {
  public static void deleteGameServerDeployment(String projectId, String deploymentId)
      throws InterruptedException, ExecutionException, TimeoutException, IOException {
    // String projectId = "your-project-id";
    // String deploymentId = "your-game-server-deployment-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 (GameServerDeploymentsServiceClient client = GameServerDeploymentsServiceClient.create()) {
      String parent = String.format("projects/%s/locations/global", projectId);
      String deploymentName = String.format("%s/gameServerDeployments/%s", parent, deploymentId);

      OperationFuture<Empty, OperationMetadata> call =
          client.deleteGameServerDeploymentAsync(deploymentName);
      call.get(1, TimeUnit.MINUTES);
      System.out.println("Game Server Deployment deleted: " + deploymentName);
    }
  }
}

Node.js

Informationen zum Installieren und Verwenden der Clientbibliothek für Game Servers finden Sie unter Game Servers-Clientbibliotheken.

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

const client = new GameServerDeploymentsServiceClient();

async function deleteGameServerDeployment() {
  /**
   * TODO(developer): Uncomment these variables before running the sample.
   */
  // const projectId = 'Your Google Cloud Project ID';
  // const deploymentId = 'A unique ID for the Game Server Deployment';
  const request = {
    // The full resource name
    name: client.gameServerDeploymentPath(projectId, 'global', deploymentId),
  };

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

  console.log(`Deployment with name ${request.name} deleted.`);
}

deleteGameServerDeployment();

Python

Informationen zum Installieren und Verwenden der Clientbibliothek für Game Servers finden Sie unter Game Servers-Clientbibliotheken.

def delete_deployment(project_id, deployment_id):
    """Deletes a game server deployment."""

    client = gaming.GameServerDeploymentsServiceClient()

    # Location is hard coded as global, as game server deployments can
    # only be created in global.  This is done for all operations on
    # game server deployments, as well as for its child resource types.
    request = game_server_deployments.DeleteGameServerDeploymentRequest(
        name=f"projects/{project_id}/locations/global/gameServerDeployments/{deployment_id}",
    )

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

Prüfen, ob die Bereitstellung gelöscht wurde

Wenn Sie prüfen möchten, ob die Bereitstellung erfolgreich gelöscht wurde, können Sie Ihre Bereitstellungen mit dem gcloud-Befehlszeilentool auflisten.

Führen Sie den folgenden Befehl aus, um alle Bereitstellungen aufzulisten:

gcloud game servers deployments list

Ihre gelöschte Bereitstellung wird nicht mehr in der Ausgabe des Befehls angezeigt.

Nächste Schritte

Informationen zum Audit-Logging in Game Servers