Erstellen Sie eine Cloud-basierte Testumgebung - 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.

Erstellen Sie eine Cloud-basierte Testumgebung

Anmerkung

Dieses Thema behandelt iterative Tests für Spiele, die in das Amazon GameLift Server SDK Version 5.x integriert sind. Wenn Ihr Spiel das Server-SDK Version 4.x oder früher verwendet, finden Sie weitere Informationen unter. Testen Sie Ihre Integration mit Amazon GameLift Local

Verwenden Sie eine GameLift Anywhere Amazon-Flotte, um Ihre Spielkomponenten iterativ in einer Cloud-basierten, gehosteten Umgebung zu erstellen und zu testen. Erstellen Sie eine Anywhere Flotte mit Hosting-Ressourcen und einer Verbindung zum GameLift Amazon-Service, führen Sie Ihre Spieleserver darauf aus und testen Sie die Spielfunktionen nach Bedarf.

Stellen Sie eine Anywhere Flotte mit dem Amazon GameLift Agent bereit

Wenn Ihr Spieleserver-Build in Amazon GameLift SDK 5.x oder höher integriert ist, können Sie ihn mit dem Amazon GameLift Agent auf einer Cloud-basierten Anywhere Flotte bereitstellen. Der Agent ist ein Hintergrundprozess, der den Lebenszyklus des Spieleservers und andere Aufgaben auf jedem Computer in einer Flotte verwaltet. Zu diesen Aufgaben gehören die Registrierung der Rechenleistung bei Amazon GameLift, der Erwerb eines Authentifizierungstokens und das Starten/Stoppen von Spielserverprozessen auf der Grundlage einer Reihe von Anweisungen. Der Agent wird durch die Laufzeitkonfiguration einer Flotte gesteuert, die Sie während der Lebensdauer der Flotte jederzeit aktualisieren können. (Der Agent wird automatisch für verwaltete EC2-Flotten bereitgestellt.) Weitere Informationen und die Möglichkeit, den Agenten herunterzuladen, finden Sie im GameLift GitHubAmazon-Repository.

Richten Sie iterative Tests mit Amazon EC2 ein

Verwenden Sie den geführten Arbeitsablauf in dieser GameLift Amazon-Toolkit-Lösung, um eine Cloud-basierte Hosting-Umgebung einzurichten, die das verwaltete Hosting-Erlebnis mit Amazon GameLift widerspiegelt.

Das GitHub Repository bietet eine Reihe von Skripten, die die meisten Prozesse für die Einrichtung einer Testumgebung mit Amazon GameLift Anywhere und dem Amazon GameLift Agent automatisieren. Es bietet auch Anleitungen zur Aktualisierung der Umgebung, wann immer Sie einen neuen Spieleserver zum Testen haben. Sie können ein einzelnes Skript ausführen, das eine Testumgebung mit einem Beispiel-Spieleserver-Build bereitstellt, oder Sie können die einzelnen Schritte durchgehen, um sie mit Ihrem eigenen Gameserver-Build einzurichten.

In diesem Arbeitsablauf arbeiten Sie ausschließlich im AWS Management Console, AWS CloudShell um Skripts auszuführen und Befehlszeilenaufgaben auszuführen.

Anmerkung

Für die Aufgaben in diesem Tutorial benötigen Sie einen AWS Kontobenutzer mit Berechtigungen für die folgenden Dienste: Amazon GameLift AWS CloudShell, Amazon S3 AWS Systems Manager, Amazon EC2 und AWS Identity and Access Management. Benutzer mit Administratorzugriff auf das AWS Konto verfügen bereits über die erforderlichen Berechtigungen.

Der Workflow umfasst die folgenden Aufgaben:

  • Verpacke einen Gameserver-Build für Amazon GameLift.Der Workflow bietet ein Skript zum Erstellen eines C++-Beispielspielservers, der bereits in das Amazon GameLift Server SDK 5.x integriert wurde und bereit für das Hosting ist. Alternativ können Sie mit Ihrem eigenen Spielprojekt arbeiten, wenn Sie die Integration abgeschlossen haben.

  • Richten Sie einen Amazon Simple Storage Service-Bucket ein, um Spielserver-Builds und Abhängigkeiten zu speichern. Wenn Sie neue Versionen Ihrer Spiel-Builds erstellen, können Sie diese in S3 speichern und die Skripts verwenden, um die Anywhere Flotte für Spieletests zu aktualisieren.

  • Holen Sie sich den Amazon GameLift Agent und erstellen Sie ihn. Der Agent verwaltet die Spieleserverprozesse auf einer Hosting-Ressource auf der Grundlage Ihrer Konfiguration. Es verwendet dieselbe Logik und verhält sich identisch mit Amazon GameLift Managed EC2-Hosting.

  • Richten Sie eine Anywhere Flotte für Ihre Hosting-Ressourcen ein. Mit einer Anywhere Flotte können Sie den GameLift Amazon-Service zum Hosten von Ressourcen nutzen, die nicht von Amazon verwaltet werden GameLift. In diesem Schritt konfigurieren Sie auch die Laufzeitkonfiguration, die Amazon GameLift Agent anweist, wann und wie die Spieleserverprozesse gestartet werden sollen.

  • Richten Sie eine Amazon EC2 EC2-Instance ein. Dies ist Ihre Testumgebung für iteratives Testen. Es ist viel schneller, eine Standard-EC2-Instance anstelle einer vollständig verwalteten GameLift Amazon-Instance zu verwenden (die für die Nutzung auf Produktionsebene optimiert ist). Mit einer Standard-EC2-Instance können Sie den Spieleserver bei Bedarf schnell und kontinuierlich aktualisieren.

  • Stellen Sie Ihren Gameserver-Build und Amazon GameLift Agent auf der Amazon EC2 EC2-Instance bereit.Der Workflow stellt ein Skript bereit, das die neueste Version Ihres Spiel-Builds und aller Abhängigkeiten abruft und auf Ihrer EC2-Instance installiert. In diesem Workflow gehören zu den Abhängigkeiten der GameLift Amazon-Agent und der CloudWatch Agent.

  • Starten Sie den Amazon GameLift Agent. Nach der Installation startet der Agent automatisch und beginnt mit der Ausführung von Anweisungen. Dazu zählen:

    • Registrieren Sie die EC2-Instance als Recheneinheit in der GameLift Anywhere Amazon-Flotte.

    • Stellen Sie eine WebSocket Verbindung mit dem GameLift Amazon-Service her und rufen Sie die neueste Laufzeitkonfiguration ab.

    • Starte die Spieleserverprozesse basierend auf den Anweisungen in der Laufzeitkonfiguration. In diesem Arbeitsablauf wird der Agent angewiesen, einen einzelnen Prozess der ausführbaren Datei des Spieleservers zu starten.

  • Testen Sie Ihre Spielszenarien. Sobald die Testumgebung eingerichtet und dein neuester Spieleserver-Build installiert ist, kannst du mit dem Testen beginnen. Der Workflow durchläuft mehrere Testschritte, einschließlich des Startens einer Spielsitzung. Greifen Sie auf die CloudWatch Spielserverprotokolle zu, um den Fortschritt zu verfolgen, während die Spielsitzung beginnt und sich darauf vorbereitet, Spieler aufzunehmen.

    Bei der Entwicklung Ihrer Spielkomponenten, einschließlich eines Spielclients und eines clientseitigen Backend-Dienstes, können Sie diese in Ihre Testszenarien einbeziehen. Verwenden Sie einen Spielclient, um eine Spielsitzung anzufordern, Verbindungsinformationen vom GameLift Amazon-Service abzurufen und dann eine direkte Verbindung zur Spielsitzung herzustellen.

  • Stellen Sie einen neuen Spieleserver bereit, bauen Sie ihn auf und wiederholen Sie die Tests. Während Sie Ihr Spiel entwickeln, können Sie neue Spieleserver-Builds generieren und diese dann schnell zum Testen in der EC2-Testumgebung bereitstellen. Laden Sie sie in den Amazon S3 S3-Bucket hoch und verwenden Sie dann die Workflow-Skripte, um die Testumgebung zu aktualisieren.

Stelle dein Spiel auf von Amazon GameLift verwaltete Flotten um

Nachdem Sie die Entwicklungstests abgeschlossen haben und bereit sind, sich auf die Markteinführung vorzubereiten, ist dies ein guter Zeitpunkt, um auf von Amazon GameLift verwaltete Flotten umzusteigen. Verwende verwaltete Flotten, um deine Spielhosting-Ressourcen zu optimieren und zu testen. Implementieren Sie Ihre Lösung zur Platzierung von Spielsitzungen (Warteschlangen und Matchmaker), wählen Sie die optimale Hosting-Hardware (einschließlich Spot-Flotten) und Standorte aus und wählen Sie eine Strategie zur Kapazitätsskalierung. Vielleicht möchtest du auch damit beginnen, die Lebenszyklen all deiner Spielhosting-Ressourcen, einschließlich Flotten, Warteschlangen und Matchmaker, effizienter zu verwalten. AWS CloudFormation

Der Übergang von einer Cloud-basierten Anywhere Testflotte zu einer von Amazon GameLift verwalteten Flotte erfordert nur minimalen Aufwand. Sie müssen keinen Spielcode ändern und können dieselben Warteschlangen und Matchmaker wiederverwenden. Führe die folgenden Aufgaben aus:

  • Erstellen Sie eine GameLift Amazon-Build-Ressource. Bei einer Anywhere Testflotte musst du deinen Spielserver-Build und die Abhängigkeiten manuell für jeden Flottencomputer bereitstellen. Laden Sie mit einer verwalteten Flotte Ihr Game-Build-Paket auf Amazon hoch GameLift, wo es automatisch auf allen Flottencomputern bereitgestellt wird. Einzelheiten Laden Sie einen benutzerdefinierten Server-Build auf Amazon hoch GameLift zum Verpacken Ihrer Spiele-Build-Dateien und zum Erstellen einer Build-Ressource mit Dateien in einem Amazon S3 S3-Bucket finden Sie unter.

  • Erstellen Sie eine verwaltete Flotte. Erstellen Sie mithilfe der Konsole oder AWS CLI eine Flotte und geben Sie eine von EC2 verwaltete Flotte an. Für diese Art von Flotte sind zusätzliche Konfigurationseinstellungen erforderlich, einschließlich der Angabe der Build-Ressourcen und der Instance-Typen. Du kannst dieselbe Laufzeitkonfiguration verwenden, um den Lebenszyklus des Spielservers auf jedem Flottencomputer zu verwalten. Einzelheiten Erstellen Sie eine von Amazon GameLift verwaltete Flotte zur Erstellung einer verwalteten Flotte finden Sie unter.

  • Flottenaliase umleiten (optional). Wenn Sie Aliase für Ihre Anywhere Flotten einrichten, können Sie dieselben Aliase für Ihre verwalteten Flotten wiederverwenden. Einzelheiten Einer GameLift Amazon-Flotte einen Alias hinzufügen zur Erstellung oder Aktualisierung eines Alias finden Sie unter.