Erstellen Sie eine Cloud-basierte Testumgebung - Amazon GameLift Servers

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

In diesem Thema werden iterative Tests für Spiele behandelt, die in das Server-SDK für Amazon GameLift Servers 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 Servers Local

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

Setze mit dem Amazon GameLift Servers Agenten eine Anywhere-Flotte ein

Wenn Ihr Gameserver-Build in Amazon GameLift Servers SDK 5.x oder höher integriert ist, können Sie ihn mit dem Amazon GameLift Servers Agenten auf einer cloudbasierten Anywhere-Flotte bereitstellen. Der Agent ist ein Hintergrundprozess, der die Lebenszyklen von Spieleservern und andere Aufgaben auf jedem Computer in einer Flotte verwaltet. Zu diesen Aufgaben gehören die Registrierung des Computers bei einer Anywhere-Flotte, der Erwerb eines Authentifizierungstokens und die Ausführung von starting/stopping 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 Amazon GameLift Servers GitHub Repository.

Richten Sie iterative Tests mit Amazon EC2 ein

Verwenden Sie den geführten Workflow in dieser Amazon GameLift ServersToolkit-Lösung, um eine cloudbasierte Hosting-Umgebung einzurichten, die das verwaltete Hosting-Erlebnis mit widerspiegelt. Amazon GameLift Servers

Das GitHub Repository bietet eine Reihe von Skripten, die die meisten Prozesse für die Einrichtung einer Testumgebung mit Amazon GameLift Servers Anywhere und dem Amazon GameLift Servers Agenten automatisieren. Es enthält auch Anleitungen zur Aktualisierung der Umgebung, wann immer Sie einen neuen Spieleserver zum Testen erstellen müssen. 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-Managementkonsole, AWS CloudShell um Skripts auszuführen und Befehlszeilenaufgaben zu erledigen.

Anmerkung

Für die Aufgaben in diesem Tutorial benötigen Sie einen AWS Kontobenutzer mit Berechtigungen für die folgenden Dienste:Amazon GameLift Servers, 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 Spieleserver, für den gebaut wurdeAmazon GameLift Servers.Der Workflow enthält ein Skript zum Erstellen eines C++-Beispielspielservers, der bereits in das Server-SDK für Amazon GameLift Servers Version 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 Spiele-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 Servers Agenten und erstellen Sie ihn. Der Agent verwaltet die Spielserverprozesse auf einer Hosting-Ressource auf der Grundlage Ihrer Konfiguration. Er verwendet dieselbe Logik und verhält sich genauso wie Amazon GameLift Servers verwaltetes EC2-Hosting.

  • Richten Sie eine Anywhere-Flotte für Ihre Hosting-Ressourcen ein. Mit einer Anywhere-Flotte können Sie den Amazon GameLift Servers Service zum Hosten von Ressourcen verwenden, die nicht von verwaltet werdenAmazon GameLift Servers. In diesem Schritt konfigurierst du auch die Laufzeitkonfiguration, die dem Amazon GameLift Servers Agenten mitteilt, wann und wie die Spielserverprozesse 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-Instanz anstelle einer vollständig verwalteten Amazon GameLift Servers Instanz (die für den Einsatz auf Produktionsebene optimiert ist) zu verwenden. Mit einer Standard-EC2-Instance können Sie den Spieleserver bei Bedarf schnell und kontinuierlich aktualisieren.

  • Stellen Sie Ihren Gameserver-Build und Ihren Amazon GameLift Servers Agenten 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 Amazon GameLift Servers Agent und der CloudWatch Agent.

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

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

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

    • Starte die Spielserverprozesse basierend auf den Anweisungen in der Laufzeitkonfiguration. In diesem Arbeitsablauf wird der Agent angewiesen, einen einzelnen Prozess der ausführbaren Datei des Spielservers 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. Verwende einen Spielclient, um eine Spielsitzung anzufordern, Verbindungsinformationen vom Amazon GameLift Servers Dienst 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 Amazon GameLift Servers 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 Amazon GameLift Servers verwaltete Flotten umzusteigen. Verwende verwaltete Flotten, um deine Spielhosting-Ressourcen zu optimieren und zu testen. Implementieren Sie Ihre Lösung für die 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 cloudbasierten Anywhere-Testflotte zu einer Amazon GameLift Servers 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 Amazon GameLift Servers Build-Ressource. Bei einer Anywhere-Testflotte musst du deinen Gameserver-Build und die Abhängigkeiten manuell für jeden Flottencomputer bereitstellen. Laden Sie bei einer verwalteten Flotte Ihr Game-Build-Paket hochAmazon GameLift Servers, wodurch es automatisch auf allen Flottencomputern bereitgestellt wird. Einzelheiten Erstelle einen Gameserver-Build für Amazon GameLift Servers 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 Amazon GameLift Servers verwaltete EC2 Flotte zur Erstellung einer verwalteten Flotte finden Sie unter.

  • Flottenaliase umleiten (optional). Wenn Sie Aliase zur Verwendung mit Ihren Anywhere-Flotten einrichten, können Sie dieselben Aliase für Ihre verwalteten Flotten wiederverwenden. Einzelheiten Erstelle eine Amazon GameLift Servers alias zum Erstellen oder Aktualisieren eines Alias finden Sie unter.