Auf dieser Seite wird erläutert, wie Sie eine Game Servers-Konfiguration in einer Bereitstellung registrieren, bearbeiten, auflisten und Details dazu aufrufen. Diese Konfiguration definiert die Agones Fleet-Spezifikation, die Informationen zur Anzahl der Gameserver, zum Puffer und zur Gameserver-Version enthält. Diese Konfiguration definiert auch die Skalierungskonfiguration, die angibt, wie die Flotte automatisch und nach Bedarf skaliert wird.
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 installierter gcloud-CLI aus oder verwenden Sie einen API-Client:
Rufen Sie die Google Cloud Console auf.
Klicken Sie in der oberen rechten Ecke der Console auf die Schaltfläche Cloud Shell aktivieren:
- Erstellen Sie ein Dienstkonto:
- Laden Sie einen privaten Schlüssel als JSON-Datei herunter.
-
Set the environment variable
GOOGLE_APPLICATION_CREDENTIALS
to the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again.
Cloud Shell
So starten Sie Cloud Shell:
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 die gcloud CLI.
Prüfen Sie, ob Sie das gewünschte Standardprojekt für die Google Cloud CLI festgelegt haben. Andernfalls müssen Sie das Flag --project
später für jeden Befehl 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 der Google Cloud CLI zu prüfen.
Für Game Servers ist mindestens die Version 306.0.0
der gcloud CLI 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:
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.
Konfiguration erstellen
Sie müssen ein Game Servers Deployment erstellt haben.
Console
Rufen Sie in der Google Cloud Console die Seite Bereitstellungen von Game Server auf.
Suchen Sie ein Deployment in der Tabelle. Klicken Sie in der letzten Tabellenspalte auf die drei Punkte more_vert und wählen Sie Konfigurationen auflisten aus. Auf dieser Seite können Sie die aktiven und inaktiven Konfigurationen für das Deployment aufrufen.
Klicken Sie auf Konfiguration erstellen, um eine neue Konfiguration für das Deployment zu erstellen.
Geben Sie im Feld Name der Konfiguration eine eindeutige ID für diese Konfiguration ein.
(Optional) Geben Sie im Feld Beschreibung eine Beschreibung für diese Konfiguration ein.
Geben Sie im Feld Name der Flex-Konfiguration eine eindeutige ID für diese Flotte-Konfiguration ein.
Geben Sie im Feld Fleet specification die Flotten-Spezifikation ein.
(Optional) Unter Skalierungskonfiguration können Sie eine oder mehrere Konfigurationen angeben, die den Gerätepool automatisch nach oben oder unten skalieren. Klicken Sie auf Hinzufügen, um eine Skalierungskonfiguration hinzuzufügen.
- Geben Sie im Feld Skalierungsname eine eindeutige ID für diese Skalierungskonfiguration ein.
- Optional: Legen Sie in den Feldern Startzeit und Endzeit den Zeitraum fest, in dem diese Skalierungskonfiguration aktiviert werden soll. Weitere Informationen finden Sie unter Skalierungspläne erstellen.
- Geben Sie im Feld Autoscaper-Spezifikation die Skalierungsspezifikation ein.
gcloud
Sie können eine Game Servers-Konfiguration in einer Bereitstellung mit der Google Cloud CLI erstellen.
So erstellen Sie eine Game Servers-Konfiguration:
Kopieren Sie diese Fleet-Spezifikation in eine Datei.
- name: fleet-spec-1 fleetSpec: replicas: 10 scheduling: Packed strategy: type: RollingUpdate rollingUpdate: maxSurge: 25% maxUnavailable: 25% template: metadata: labels: gameName: udp-server spec: ports: - name: default portPolicy: Dynamic containerPort: 7654 protocol: UDP health: initialDelaySeconds: 30 periodSeconds: 60 sdkServer: logLevel: Info grpcPort: 9357 httpPort: 9358 template: spec: containers: - name: dedicated image: gcr.io/agones-images/udp-server:0.21 imagePullPolicy: Always resources: requests: memory: 200Mi cpu: 500m limits: memory: 200Mi cpu: 500m
Führen Sie den folgenden Befehl aus und ersetzen Sie die Platzhalterwerte wie deploymentID und configID durch die entsprechenden Werte:
gcloud game servers configs create configID --deployment deploymentID --fleet-configs-file fleetSpecFile
Die Variablenplatzhalter entsprechen den folgenden Beschreibungen:
- configID ist eine eindeutige Kennung, die Sie für diese Konfiguration angeben können.
- deploymentID ist die eindeutige Kennung für die Bereitstellung.
- fleetSpecFile ist der Pfad zur Datei mit der Agones Fleet-Spezifikation.
REST UND BEFEHLSZEILE
Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:
- PROJECT_ID: Ihre Google Cloud-Projekt-ID, die unter IAM-Einstellungen aufgeführt ist
- DEPLOYMENT_ID: die benutzerdefinierte Kennung für das Deployment
- CONFIG_ID: eine benutzerdefinierte Kennung für die Konfiguration
JSON-Text der Anfrage:
{ "fleetConfigs": [ { "name": "fleet-spec-1", "fleetSpec": "{ \"replicas\": 10, \"scheduling\": \"Packed\", \"template\": { \"metadata\": { \"labels\": { \"gameName\": \"udp-server\" } }, \"spec\": { \"ports\": [ { \"name\": \"default\", \"portPolicy\": \"Dynamic\", \"containerPort\": 7654, \"protocol\": \"UDP\" } ], \"health\": { \"periodSeconds\": 60, \"initialDelaySeconds\": 30 }, \"sdkServer\": { \"logLevel\": \"Info\", \"grpcPort\": 9357, \"httpPort\": 9358 }, \"template\": { \"spec\": { \"containers\": [ { \"name\": \"dedicated\", \"image\": \"gcr.io/agones-images/udp-server:0.21\", \"imagePullPolicy\": \"Always\", \"resources\": { \"requests\": { \"memory\": \"200Mi\", \"cpu\": \"500m\" }, \"limits\": { \"memory\": \"200Mi\", \"cpu\": \"500m\" } } } ] } } } } }" } ] }
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/configs/CONFIG_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Konfigurationen bearbeiten
Sie können eine Game Servers-Konfiguration nicht bearbeiten, da Konfigurationen unveränderlich sind. Wenn Sie eine Konfiguration bearbeiten möchten, kopieren Sie die Konfiguration (Konfigurationsdetails anzeigen), bearbeiten Sie sie lokal und verwenden Sie die aktualisierte Version, um eine neue Konfiguration zu erstellen.
Konfigurationen auflisten
Console
Rufen Sie in der Google Cloud Console die Seite Bereitstellungen von Game Server auf.
Suchen Sie ein Deployment in der Tabelle. Klicken Sie in der letzten Tabellenspalte auf die drei Punkte more_vert und wählen Sie Konfigurationen auflisten aus. Auf dieser Seite können Sie die aktiven und inaktiven Konfigurationen für das Deployment aufrufen.
gcloud
Sie können Konfigurationen über die Google Cloud CLI auflisten.
Führen Sie den folgenden Befehl aus, um alle Konfigurationen aufzulisten:
gcloud game servers configs list
Um alle Konfigurationen in einem Deployment aufzulisten, führen Sie den folgenden Befehl aus und ersetzen Sie deploymentID durch das übergeordnete Deployment, für das Sie die Konfigurationen auflisten möchten:
gcloud game servers configs list --deployment=deploymentID
REST UND BEFEHLSZEILE
Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:
- PROJECT_ID: Ihre Google Cloud-Projekt-ID, die unter 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:
{ "gameServerConfigs": [ { "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID/configs/MY-CONFIG-1", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME, "fleetConfigs": [ { "fleetSpec": ... "name": "MY-CONFIG-1" } ], "description": "Config 1" }, { "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID/configs/MY-CONFIG-2", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME, "fleetConfigs": [ { "fleetSpec": ... "name": "MY-CONFIG-2" } ], "description": "Config 2" }, ] }
Konfigurationsdetails ansehen
Console
Rufen Sie in der Google Cloud Console die Seite Bereitstellungen von Game Server auf.
Suchen Sie ein Deployment in der Tabelle. Klicken Sie in der letzten Tabellenspalte auf die drei Punkte more_vert und wählen Sie Konfigurationen auflisten aus. Auf dieser Seite können Sie die aktiven und inaktiven Konfigurationen für das Deployment aufrufen.
Suchen Sie in der Tabelle nach einer Konfiguration. Klicken Sie in der letzten Tabellenspalte auf die drei Punkte more_vert und wählen Sie Konfiguration anzeigen aus.
gcloud
Details zu einer Konfiguration, z. B. den Erstellungszeitpunkt, finden Sie über die Google Cloud CLI:
Führen Sie den folgenden Befehl aus, um die Details einer Konfiguration aufzurufen, und ersetzen Sie die Platzhalterwerte wie deploymentID und configID durch die entsprechenden Werte:
gcloud game servers configs describe configID --deployment deploymentID
Die Ausgabe enthält die Details der Konfiguration.
Die Variablenplatzhalter entsprechen den folgenden Beschreibungen:
- configID ist die eindeutige Kennung, die Sie für diese Gameserver-Konfiguration angegeben haben.
- deploymentID ist eine eindeutige Kennung für die übergeordnete Bereitstellung.
REST UND BEFEHLSZEILE
Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:
- PROJECT_ID: Ihre Google Cloud-Projekt-ID, die unter IAM-Einstellungen aufgeführt ist
- DEPLOYMENT_ID: die benutzerdefinierte Kennung für das Deployment
- CONFIG_ID: die benutzerdefinierte Kennung für die Konfiguration
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/gameServerDeployments/DEPLOYMENT_ID/configs/CONFIG_ID", "createTime": CREATE_TIME, "updateTime": UPDATE_TIME, "fleetConfigs": [ { "fleetSpec": ... "name": "CONFIG_ID" } ], "description": "My config" }