Erstelle ein Amazon GameLift Anywhere Flotte - Amazon GameLift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstelle ein Amazon GameLift Anywhere Flotte

In diesem Thema wird beschrieben, wie Sie einen Amazon erstellen GameLift Anywhere Flotte. Mit einer Anywhere-Flotte können Sie die wichtigsten Funktionen von Amazon für die Verwaltung von GameLift Spielesitzungen verwenden und gleichzeitig Spielesitzungen mit Ihren eigenen Rechenressourcen hosten. Erstellen Sie eine Anywhere-Flotte für Ihre lokale Hardware oder andere cloudbasierte Ressourcen.

Anywhere-Flotten werden häufig zusammen mit von Amazon GameLift verwalteten Flotten in einer Hybrid-Hosting-Lösung verwendet. Sie bieten auch nützliche Testumgebungen bei der Entwicklung eines Spiels für das Hosting bei Amazon GameLift. In diesen Themen erfahren Sie mehr darüber, wann und wie Sie Amazon integrieren können GameLift Anywhere Flotten in eine Game-Hosting-Lösung:

Da Anywhere-Flotten selbst verwaltet werden, erfordert die Einrichtung einer Flotte einige zusätzliche Arbeit. Um eine Anywhere-Flotte für die Ausrichtung von Spielsitzungen und Spielern vorzubereiten, müssen Sie die folgenden Aufgaben erledigen:

Bevor Sie beginnen

Bevor Sie eine Anywhere-Flotte erstellen, führen Sie die folgenden Aufgaben aus. Eine detailliertere Anleitung finden Sie unter Entwicklungs-Roadmap für das Hosting mit Amazon Anywhere GameLift oderEntwicklungs-Roadmap für Hybrid-Hosting mit Amazon GameLift.

  • Integrieren Sie Ihren Gameservercode in die GameLift SDK Amazon-Serverversion 5.x (oder höher). Sie müssen nicht alle Aufgaben zur Spieleintegration erledigen, sondern nur die, die für einen Spielserver-Build erforderlich sind. Es ist üblich, deinen lokalen Computer als Anywhere-Flotte einzurichten und deine Gameserver-Integration mithilfe einer Befehlszeilenschnittstelle zu testen (sieheRichten Sie lokale Tests mit Amazon ein GameLift Anywhere). Sie können bei der Entwicklung zusätzliche Komponenten (z. B. einen GameLift Amazon-fähigen Spieleclient) integrieren.

  • Package Sie Ihre Gameserver-Software für die Installation auf Ihren Anywhere-Flottencomputern. Das Paket sollte Ihren integrierten Gameserver-Build und die gesamte Support-Software enthalten, die Sie für den Betrieb Ihres Gameservers benötigen.

  • Entscheiden Sie, ob Sie den Amazon GameLift Agent mit Ihrer Anywhere-Flotte verwenden möchten. Der Agent ist ein computergestütztes Prozessmanagement-Tool, das einige der wichtigsten Aufgaben im Zusammenhang mit der Verwaltung von Serverprozessen und Berechnungen für die Verwendung mit Amazon automatisiert. GameLift Weitere Informationen finden Sie unter Arbeiten Sie mit dem GameLift Amazon-Agenten.

Erstellen Sie einen benutzerdefinierten Speicherort

Erstellen Sie einen benutzerdefinierten Standort, der den physischen Standort Ihrer Rechenressourcen darstellt. Wenn Sie eine Anywhere-Flotte erstellen, muss mindestens ein benutzerdefinierter Standort bereits definiert sein. Sie können jederzeit weitere benutzerdefinierte Standorte erstellen und diese zu einer vorhandenen Flotte hinzufügen.

Um einen benutzerdefinierten Standort zu erstellen

Verwenden Sie entweder die GameLift Amazon-Konsole oder die AWS Command Line Interface (AWS CLI), um einen benutzerdefinierten Standort zu erstellen.

Console

Verwenden Sie in der GameLift Amazon-Konsole den Navigationsbereich, um die Seite Standorte zu öffnen. Wählen Sie Standort erstellen, um das Dialogfeld „Erstellen“ zu öffnen.

  1. Geben Sie im Dialogfeld einen Standortnamen ein. Es hat sich bewährt, einen Namen zu verwenden, der einen aussagekräftigen Standort für eine Reihe von Rechenressourcen beschreibt. Dabei kann es sich um geografische Standorte, den Namen eines Rechenzentrums oder eine andere Standortkennung handeln. Amazon GameLift hängt den Namen Ihres benutzerdefinierten Standorts mit custom- an.

  2. (Optional) Fügen Sie Ihrem benutzerdefinierten Standort Tags hinzu. Jeder Tag (Markierung) besteht aus einem Schlüssel und einem optionalen Wert, beides können Sie bestimmen. Weisen Sie AWS Ressourcen, die Sie sinnvoll kategorisieren möchten, Tags zu, z. B. nach Zweck, Eigentümer oder Umgebung. Wählen Sie für jedes Tag, das Sie hinzufügen möchten, die Option Neues Tag hinzufügen aus.

  3. Wählen Sie Create (Erstellen) aus.

AWS CLI

Erstellen Sie mit dem create-locationBefehl eine benutzerdefinierte Position. Geben Sie einen location-name Wert an, der mit beginnen musscustom-. Es hat sich bewährt, einen Namen zu verwenden, der einen aussagekräftigen Standort für eine Reihe von Rechenressourcen beschreibt. Dabei kann es sich um geografische Standorte, den Namen eines Rechenzentrums oder eine andere Standortkennung handeln.

aws gamelift create-location \ --location-name custom-location-1

Output

{ "Location": { "LocationName": "custom-location-1", "LocationArn": "arn:aws:gamelift:us-east-1:111122223333:location/custom-location-1" } }

Erstellen Sie eine Anywhere-Flotte

Erstellen Sie eine Anywhere-Flotte für eine Reihe von Rechenressourcen, die Sie besitzen. Eine neue Anywhere-Flotte ist zunächst leer. Sie fügen der Flotte Rechenleistung hinzu, indem Sie sie registrieren.

Bei der Erstellung ein neues Anywhere Die Flotte durchläuft schnell den Flottenstatus von NEW bisACTIVE. Sie können der Flotte Computer hinzufügen, nachdem sie erreicht hat. ACTIVE

Um eine Anywhere-Flotte zu erstellen

Verwenden Sie entweder die GameLift Amazon-Konsole oder die AWS Command Line Interface (AWS CLI), um eine Anywhere-Flotte zu erstellen.

Console

Verwenden Sie in der GameLift Amazon-Konsole den Navigationsbereich, um die Seite Fleets zu öffnen. Wählen Sie Flotte erstellen, um den Workflow zur Flottenerstellung zu starten.

Schritt 1: Wählen Sie den Berechnungstyp

Wählen Sie die Option Anywhere und dann Weiter.

Schritt 2 Definieren Sie die Flottendetails

In diesem Schritt geben Sie einige wichtige Einstellungen für die gesamte Flotte an.

  1. Füllen Sie den Abschnitt Flottendetails aus:

    1. Geben Sie einen Flottennamen ein. Wir empfehlen, ein Flottenbenennungsmuster zu verwenden, das die Identifizierung von Flottentypen bei der Anzeige von Flottenlisten erleichtert.

    2. Geben Sie eine kurze Beschreibung der Flotte an.

  2. Geben Sie diese optionalen zusätzlichen Details nach Bedarf ein. Sie können diese Flotteneinstellungen später aktualisieren.

    1. Wenn Sie eine Flotte für Produktionstests oder Tests vor der Produktion erstellen, verwenden Sie diese Einstellung, um einen Kostenwert pro Stunde für die Berechnungen der Flotte anzugeben. Amazon GameLift kann diese Informationen während des Platzierungsprozesses für Spielsitzungen verwenden, um Hosting-Ressourcen auf der Grundlage der Kosten auszuwählen.

    2. Wenn Sie Metrikdaten für diese Flotte und andere kombinieren möchten, geben Sie einen Metrikgruppennamen an. Verwenden Sie für alle Flotten, die Sie kombinieren möchten, denselben Metrikgruppennamen. Zeigen Sie die Metriken für die Metrikgruppe an, um die aggregierten Daten zu sehen.

  3. Fügen Sie optionale Tags zu Ihrem benutzerdefinierten Standort hinzu. Jeder Tag (Markierung) besteht aus einem Schlüssel und einem optionalen Wert, beides können Sie bestimmen. Weisen Sie AWS Ressourcen, die Sie sinnvoll kategorisieren möchten, Tags zu, z. B. nach Zweck, Eigentümer oder Umgebung. Wählen Sie für jedes Tag, das Sie hinzufügen möchten, die Option Neues Tag hinzufügen aus.

  4. Wählen Sie Weiter, um den Workflow fortzusetzen.

Schritt 3: Wählen Sie benutzerdefinierte Speicherorte

Identifizieren Sie in diesem Schritt den physischen Standort der Computer, die Sie zu dieser Flotte hinzufügen möchten. Sie können jetzt einen oder mehrere Standorte angeben und später nach Bedarf Standorte hinzufügen oder entfernen.

  1. Wählen Sie unter Benutzerdefinierte Standorte einen oder mehrere Standorte für die Berechnungen der Flotte aus. Die Liste enthält alle benutzerdefinierten Standorte, die an Ihren aktuell ausgewählten AWS-Region Standorten definiert wurden. Um einen neuen benutzerdefinierten Standort zu definieren, den Sie der Flotte hinzufügen möchten, wählen Sie Standort erstellen.

  2. Wählen Sie Weiter, um den Workflow fortzusetzen.

Schritt 4 Überprüfen und erstellen

Überprüfen Sie Ihre Einstellungen, bevor Sie die Flotte erstellen.

Wenn Sie bereit sind, die neue Flotte einzusetzen, wählen Sie Create. Amazon beginnt GameLift sofort mit der Flottenaktivierung, weist eine eindeutige ID zu und versetzt die Flotte in den NEW Status. Sie können den Fortschritt der Flotte auf der Seite Flotten verfolgen.

AWS CLI

Verwenden Sie den create-fleetBefehl, um eine Flotte vom Typ ANYWHERE Compute zu erstellen. Geben Sie einen Namen und mindestens einen benutzerdefinierten Speicherort an. Amazon GameLift erstellt die Anywhere-Flottenressource in Ihrem aktuellen Standard AWS-Region (oder Sie können ein --region-Tag hinzufügen, um ein anderes anzugeben AWS-Region).

Die folgende Beispielanforderung erstellt eine neue Flotte mit den minimal erforderlichen Einstellungen. Ersetzen Sie FleetName und custom-location durch Ihre eigenen Informationen.

aws gamelift create-fleet \ --name FleetName \ --compute-type ANYWHERE \ --locations "Location=custom-location"

Beispielantwort

{ "FleetAttributes": { "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "FleetArn": "arn:aws:gamelift:us-west-2:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "Name": "HardwareAnywhere", "CreationTime": "2023-02-23T17:57:42.293000+00:00", "Status": "ACTIVE", "MetricGroups": [ "default" ], "CertificateConfiguration": { "CertificateType": "DISABLED" }, "ComputeType": "ANYWHERE" } }

Über die Schöpfung ein neues Anywhere Die Flotte wechselt schnell in den FlottenstatusACTIVE. Sie können der Flotte Computer hinzufügen, wenn sie den Wert erreicht hatACTIVE.

Beachten Sie, dass die Antwort die Standorte der Flotte nicht beinhaltet. Sie können die vollständigen Flottendetails abrufen, indem Sie describe-fleet-attributesund anrufen describe-fleet-location-attributes.

Fügen Sie der Flotte einen Computer hinzu

Um einer Flotte eine Rechenressource hinzuzufügen und sie für die Ausrichtung von Spielsitzungen vorzubereiten, führen Sie die folgenden Aufgaben aus:

  • Registrieren Sie die Rechenleistung bei der Flotte. Durch die Registrierung wird Amazon GameLift darüber informiert, welche physischen Hosting-Ressourcen Teil der Flotte sind.

  • Fordern Sie ein Authentifizierungstoken für die Berechnung an. Jeder Spieleserver, der auf dem Computer läuft, benötigt dieses Token, um eine Verbindung zum GameLift Amazon-Service herzustellen. Authentifizierungstoken sind temporär und müssen regelmäßig aktualisiert werden.

Anmerkung

Wenn Sie Ihre Gameserver-Software mit dem Amazon GameLift Agent bereitstellen, können Sie diesen Schritt überspringen. Der Agent registriert automatisch jede Berechnung und verwaltet ein gültiges Authentifizierungstoken für die Berechnung. Siehe Arbeiten Sie mit dem GameLift Amazon-Agenten.

Sie können eine Berechnung registrieren und ein Authentifizierungstoken anfordern, indem Sie das verwenden AWS CLI oder programmatische Aufrufe an AWS SDK Amazon GameLift tätigen. Diese Aktionen sind nicht über die GameLift Amazon-Konsole verfügbar.

Als bewährte Methode empfehlen wir, diese beiden Aufgaben zu automatisieren, indem jeder Berechnung ein Startskript hinzugefügt wird. Das Startskript ruft automatisch sowohl die get-compute-auth-token Befehle als register-compute auch auf. Sie können auch Aufgaben automatisieren, um das Authentifizierungstoken während der gesamten Lebensdauer des Computers regelmäßig zu aktualisieren und den Computer beim Herunterfahren abzumelden.

Jede der Startaktionen gibt rechenspezifische Werte zurück, die Sie auf dem Computer speichern müssen. Wenn ein Spieleserverprozess auf dem Computer gestartet wird, muss er diese Werte als Serverparameter übergeben, wenn er eine Verbindung mit dem GameLift Amazon-Service initialisiert (siehe ServerParameters in der SDK Serverreferenz). Wir empfehlen, dass Sie diese rechenspezifischen Werte (oder ihre Speicherorte) als Umgebungsvariablen festlegen. Wenn Sie den GameLift Amazon-Agenten verwenden, wird diese Aufgabe für Sie erledigt. Die berechnungsspezifischen Werte lauten wie folgt:

  • register-computegibt einen Wert für zurück. GameLiftServiceSdkEndpoint Setzen Sie diesen Wert auf den webSocketUrl Serverparameter.

  • compute-auth-tokengibt das Authentifizierungstoken zurück. Setzen Sie diesen Wert auf den authToken Serverparameter.

AWS CLI

In den folgenden Anweisungen wird beschrieben, wie jede Anfrage manuell mit dem gesendet wird AWS CLI.

Um einen Computer zu registrieren

Rufen Sie register-computean, um einen Computer zu registrieren. Identifizieren Sie die ID der Flotte, zu der die Rechenleistung hinzugefügt werden soll. Geben Sie die folgenden Recheninformationen an: einen aussagekräftigen Namen, eine IP-Adresse und einen Standort. Der Standort des Computers muss ein benutzerdefinierter Standort sein, der bereits mit der Flotte verknüpft ist. Wenn Sie einen anderen benutzerdefinierten Standort verwenden möchten, verwenden Sie die GameLift Amazon-Konsole, um die Flotte zu aktualisieren, oder rufen Sie den AWS CLI Befehl create-fleet-locationsauf, um der Flotte einen benutzerdefinierten Standort hinzuzufügen.

Ersetzen Sie im folgenden Beispiel die Platzhalterwerte für Ihre Rechenleistung und Flotte. Der fleet-id Wert wird zurückgegeben, wenn Sie eine Anywhere-Flotte erstellen. Sie können die vollständigen Flottendetails abrufen, indem Sie describe-fleet-attributesund anrufen describe-fleet-location-attributes.

aws gamelift register-compute \ --compute-name HardwareAnywhere \ --fleet-id arn:aws:gamelift:us-east-1:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \ --ip-address 10.1.2.3 \ --location custom-location-1

Beispielausgabe

{ "Compute": { "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "FleetArn": "arn:aws:gamelift:us-west-2:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "ComputeName": "HardwareAnywhere", "ComputeArn": "arn:aws:gamelift:us-west-2:111122223333:compute/HardwareAnywhere", "IpAddress": "10.1.2.3", "ComputeStatus": "Active", "Location": "custom-location-1", "CreationTime": "2023-02-23T18:09:26.727000+00:00", "GameLiftServiceSdkEndpoint": "wss://us-west-2.api.amazongamelift.com" } }

Um ein Authentifizierungstoken anzufordern

Rufen Sie an get-compute-auth-token, um ein gültiges Authentifizierungstoken anzufordern. Registrieren Sie einen Computer. Identifizieren Sie die Flotten-ID und den Computernamen.

Ersetzen Sie im folgenden Beispiel die Platzhalterwerte für Ihre Rechenleistung und Ihren Fuhrpark. Der fleet-id Wert wird zurückgegeben, wenn Sie eine Anywhere-Flotte erstellen. Sie können die vollständigen Flottendetails telefonisch abrufen describe-fleet-attributes. Um Recheninformationen zu erhalten, rufen Sie list-computemit der Flotten-ID an, um alle Computer zu sehen, die für die Flotte registriert sind.

aws gamelift get-compute-auth-token \ --fleet-id arn:aws:gamelift:us-east-1:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa \ --compute-name HardwareAnywhere

Beispielausgabe

{ "FleetId": "fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "FleetArn": "arn:aws:gamelift:us-east-1:111122223333:fleet/fleet-2222bbbb-33cc-44dd-55ee-6666ffff77aa", "ComputeName": "HardwareAnywhere", "ComputeArn": "arn:aws:gamelift:us-east-1:111122223333:compute/HardwareAnywhere", "AuthToken": "0c728041-3e84-4aaa-b927-a0fb202684c0", "ExpirationTimestamp": "2023-02-23T18:47:54+00:00" }

Starte einen Spieleserver

Nachdem du eine Anywhere-Flotte erstellt und der Flotte einen oder mehrere Computer hinzugefügt hast, kannst du mit dem Betrieb deiner Spieleserver beginnen.

Schritt 1: Installiere deine Gameserver-Software

Installieren Sie Ihren Gameserver-Build und die gesamte abhängige Software auf jedem Computer in Ihrer Anywhere-Flotte. Der Spielserver-Build muss in die GameLift SDK Amazon-Serverversion 5.x (oder höher) integriert sein und über die mindestens erforderlichen Funktionen für die Kommunikation mit dem GameLift Amazon-Service verfügen.

Schritt 2 Bereite deine Computer für den Betrieb eines Spieleservers vor

Stellen Sie sicher, dass jeder Computer registriert ist und über ein gültiges Authentifizierungstoken verfügt. Wenn du Skripte zur Verwaltung dieser Aufgaben verwendest, stelle sicher, dass die Skripte auf jedem Computer ausgeführt werden, bevor du irgendwelche Spielserverprozesse startest.

Wenn Sie den Amazon GameLift Agent mit Ihrer Gameserver-Software installiert haben, stellen Sie sicher, dass die ausführbare Agent-Datei gestartet wird.

Schritt 3: Starten Sie einen Gameserver-Prozess

Führen Sie eine ausführbare Instanz Ihres Spieleservers auf einem Computer aus. Wenn Ihr Spieleserver-Build ordnungsgemäß integriert ist, ruft der Gameserver-Prozess die SDK Serveraktion InitSDK() mit einer Reihe gültiger Serverparameter auf. Wenn der Serverprozess bereit ist, eine Spielsitzung zu hosten, ruft er aufProcessReady().

Anmerkung

Wenn Sie Ihre Gameserver-Software mit dem Amazon GameLift Agent bereitgestellt haben, können Sie diesen Schritt überspringen. Der Agent startet automatisch Gameserverprozesse auf der Grundlage der von Ihnen angegebenen Laufzeitanweisungen.

Sie können den Fortschritt überwachen, indem Sie sich die Serverprozess-Metriken für aktivierende und aktive Serverprozesse ansehen. Siehe GameLiftAmazon-Metriken für Flotten. Wenn dein Spieleserverprozess nicht initialisiert werden kann, vergewissere dich, dass der Prozess die richtigen Serverparameterwerte für den Computer abruft, auf dem er läuft.