Debuggen von Amazon GameLift Servers-Flottenproblemen - 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.

Debuggen von Amazon GameLift Servers-Flottenproblemen

Dieses Thema enthält Anleitungen zur Lösung von Problemen mit Ihren Amazon GameLift Servers verwalteten EC2 Flotten.

Probleme bei der Erstellung von Flotten

Wenn Sie eine verwaltete EC2 Flotte erstellen, initiiert der Amazon GameLift Servers Service einen Workflow, der die Flotte erstellt, EC2 Instances bereitstellt, auf denen Ihr Spieleserver-Build installiert ist, und Spieleserver-Prozesse auf jeder Instanz startet. Eine ausführliche Beschreibung finden Sie unter. Eine Flotte kann erst dann Spielsitzungen und Spieler hosten, wenn sie den Status Aktiv erreicht hat.

Sie können Probleme beheben, die verhindern, dass Flotten aktiv werden, indem Sie die Phase der Flottenerstellung identifizieren, in der das Problem aufgetreten ist, und die Ereignisse und Protokolle zur Flottenerstellung überprüfen. Wenn die Protokolle keine nützlichen Informationen enthalten, ist das Problem möglicherweise auf einen internen Servicefehler zurückzuführen. Versuchen Sie in diesem Fall erneut, die Flotte zu erstellen. Wenn das Problem weiterhin besteht, versuchen Sie, den Spiel-Build erneut hochzuladen, um eine mögliche Dateibeschädigung zu beheben). Sie können sich auch an den Amazon GameLift Servers-Support wenden oder im Forum eine Frage stellen.

Den Build herunterladen und validieren

Amazon GameLift ServersRuft während dieser Phase den hochgeladenen Spieleserver-Build ab, extrahiert die Dateien und führt alle Installationsskripte aus. Wenn die Flottenerstellung in diesen Phasen fehlschlägt, schauen Sie sich die Flottenereignisse und -protokolle an, um das Problem zu lokalisieren. Mögliche Gründe hierfür sind:

  • Amazon GameLift Serverskann die komprimierte Build-Datei (EreignisFLEET_BINARY_DOWNLOAD_FAILED) nicht abrufen. Stellen Sie sicher, dass auf den Speicherort des Builds zugegriffen werden kann, dass Sie eine Flotte erstellen, die dem Build entspricht AWS-Region , und dass Sie Amazon GameLift Servers über die richtigen Zugriffsberechtigungen verfügen.

  • Amazon GameLift Serverskann die Build-Dateien nicht extrahieren (EreignisFLEET_CREATION_EXTRACTING_BUILD).

  • Ein Installationsskript in den Build-Dateien konnte nicht erfolgreich abgeschlossen werden (EreignisFLEET_CREATION_FAILED_INSTALLER).

Ressourcen für die Flotte aufbauen

Probleme in dieser Phase betreffen in der Regel die Zuweisung und den Einsatz von Flottenressourcen. Mögliche Gründe hierfür sind:

  • Der angeforderte Instance-Typ ist nicht verfügbar.

  • Der angeforderte Flottentyp (Spot oder On-Demand) ist nicht verfügbar.

Gameserver-Prozesse aktivieren

In dieser Phase werden eine Reihe von Aufgaben durchgeführt und wichtige Elemente getestet, darunter die Funktionsfähigkeit des Spielservers, die Einstellungen für die Laufzeitkonfiguration und die Fähigkeit des Spielservers, mithilfe des Server-SDK eine Verbindung zum Amazon GameLift Servers Dienst herzustellen. Amazon GameLift Servers

Anmerkung

In dieser Phase können Sie remote auf eine Flotteninstanz zugreifen, um Probleme weiter zu untersuchen. Siehe Stellen Sie eine Remoteverbindung zu Amazon GameLift Servers Flotteninstanzen her.

Zu den möglichen Problemen gehören:

  • Serverprozesse werden nicht gestartet. Dies deutet auf ein Problem mit den Laufzeitkonfigurationseinstellungen der Flotte hin (Ereignisse FLEET_VALIDATION_LAUNCH_PATH_NOT_FOUND oderFLEET_VALIDATION_EXECUTABLE_RUNTIME_FAILURE. Stellen Sie sicher, dass Sie den Startpfad und die optionalen Startparameter korrekt eingestellt haben.

  • Serverprozesse werden gestartet, aber die Flotte kann nicht aktiviert werden. Wenn Serverprozesse erfolgreich gestartet und ausgeführt werden, die Flotte jedoch nicht in den Status Aktiv wechselt, liegt das wahrscheinlich daran, dass der Serverprozess nicht mit dem Amazon GameLift Servers Dienst kommunizieren kann. Vergewissere dich, dass dein Spieleserver die richtigen Server-SDK-Aufrufe durchführt (sieheInitialisieren Sie den Serverprozess):

    • Der Serverprozess kann nicht initialisiert werden (EreignisSERVER_PROCESS_SDK_INITIALIZATION_TIMEOUT). Der Serverprozess ruft InitSdk() nicht erfolgreich auf.

    • Der Serverprozess benachrichtigt nicht, Amazon GameLift Servers wenn er bereit ist, eine Spielsitzung (ein EreignisSERVER_PROCESS_PROCESS_READY_TIMEOUT) zu veranstalten. Der Serverprozess wurde initialisiert, aber nicht ProcessReady() rechtzeitig aufgerufen.

  • Eine VPC-Peering-Verbindungsanfrage ist fehlgeschlagen. Für Flotten, die mit einer VPC-Peering-Verbindung erstellt werden (siehe So richten Sie VPC-Peering mit einer neuen Flotte ein), erfolgt das VPC-Peering während dieser Activating (Aktivierung) Phasen. Wenn ein VPC-Peering aus irgendeinem Grund fehlschlägt, kann die neue Flotte nicht in den Status Active (Aktiv) wechseln. Sie können den Erfolg oder Misserfolg der Peering-Anfrage nachverfolgen, indem Sie anrufen. describe-vpc-peering-connections Stellen Sie sicher, dass eine gültige VPC-Peering-Autorisierung vorhanden ist (describe-vpc-peering-authorizations, da Autorisierungen nur für 24 Stunden gültig sind.

Probleme mit dem Serverprozess

Die Serverprozesse starten, werden jedoch nach kurzer Zeit wieder beendet oder laufen nicht richtig rund.

Ein solches Systemverhalten muss nicht zwangsläufig auf Probleme mit Ihrem Spiele-Build hinweisen, sondern es kann sich auch ergeben, wenn auf der Instance zu viele Serverprozesse gleichzeitig ausgeführt werden. Die optimale Anzahl an gleichzeitigen Prozessen hängt gleichermaßen von den Instance-Typ und den Ressourcenanforderungen Ihrer Spiel-Server ab. Verringern Sie die Anzahl der gleichzeitigen Prozesse, die in der Laufzeitkonfiguration der Flotte eingestellt wird, um zu prüfen, ob sich die Leistung verbessert. Sie können die Laufzeitkonfiguration einer Flotte entweder über die Amazon GameLift Servers Konsole ändern (bearbeiten Sie die Einstellungen für die Kapazitätszuweisung der Flotte) oder indem Sie den Befehl aufrufen. AWS CLI update-runtime-configuration

Probleme bei der Flottenlöschung

Die Flotte kann aufgrund der maximalen Anzahl von Instances nicht beendet werden.

Die Fehlermeldung zeigt an, dass die zu löschende Flotte noch aktive Instances hat, was nicht zulässig ist. Sie müssen zunächst eine Flotte auf null aktive Instances reduzieren. Dies geschieht, indem Sie die gewünschte Anzahl der Instances der Flotte manuell auf "0" festlegen und dann darauf warten, dass die Skalierung greift. Stellen Sie sicher, dass Sie die auto Skalierung ausschalten, da dies manuellen Einstellungen entgegenwirkt.

VPC-Aktionen sind nicht autorisiert.

Dieses Problem gilt nur für Flotten, für die Sie speziell VPC-Peering-Verbindungen erstellt haben (siehe. VPC-Peering einrichten für Amazon GameLift Servers Dieses Szenario tritt auf, weil das Löschen einer Flotte auch das Löschen der VPC der Flotte und aller VPC-Peering-Verbindungen umfasst. Sie müssen zuerst eine Autorisierung einholen, indem Sie die Service-API for Amazon GameLift Servers CreateVpcPeeringAuthorization() aufrufen oder den AWS CLI-Befehl verwendencreate-vpc-peering-authorization. Sobald Sie die Berechtigung haben, können Sie die Flotte löschen.