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 GameLift Amazon-Server verwaltete EC2-Flotte
In diesem Thema wird beschrieben, wie eine Amazon GameLift Servers verwaltete EC2-Flotte erstellt wird. Verwaltete Flotten verwenden Amazon Elastic Compute Cloud (Amazon EC2) -Recheninstanzen, die für das Hosting von Multiplayer-Spielen optimiert sind. Sie können verwaltete Flotten erstellen, die Computer global in lokalen Zonen bereitstellen, die von AWS-Regionen unterstützt werden. Amazon GameLift Servers
Wenn Sie eine neue verwaltete EC2-Flottenressource erstellen, leiten Sie sofort die erste Phase der Flottenerstellung ein. Die verwaltete Flottenerstellung durchläuft mehrere Phasen: Amazon GameLift Servers Sie stellen eine EC2-Instance bereit, installieren eine Laufzeitumgebung und Ihr Spieleserver baut auf der Instance auf und beginnt mit dem Starten der Spieleserver. Abhängig von der Laufzeitumgebung, die Ihr Spieleserver-Build Amazon GameLift Servers benötigt, stellt er zum Zeitpunkt der Flottenerstellung die neueste Version des Amazon Machine Image (AMI) bereit (und alle zukünftigen Instances in der Flotte verwenden dieselbe Version). Du kannst den Status einer Flotte in der Konsole oder mit AWS Command Line Interface (AWS CLI) überwachen. Wenn eine Flotte bereit ist, Spielsitzungen zu veranstalten, ändert sich der Status inACTIVE. Weitere Informationen zur verwalteten Flottenerstellung findest du in den folgenden Themen:
Anmerkung
Als bewährte Methode empfehlen wir, deine Flotten alle 30 Tage auszutauschen, um eine sichere und aktuelle Laufzeitumgebung für deine gehosteten Spielserver zu gewährleisten. Dazu musst du eine neue Flotte erstellen und den Spielerverkehr dorthin migrieren. Weitere Anleitungen finden Sie unter Bewährte Sicherheitsmethoden für GameLift Amazon-Server.
Um eine verwaltete EC2-Flotte zu erstellen
Verwenden Sie entweder die Amazon GameLift Servers Konsole oder die AWS Command Line Interface (AWS CLI), um eine verwaltete EC2-Flotte zu erstellen.
- Console
-
Öffnen Sie in der Amazon GameLift Servers Konsole
im Navigationsbereich die Seite Managed EC2, Fleets. Wählen Sie Verwaltete EC2-Flotte erstellen, um den Arbeitsablauf zur Flottenerstellung zu starten. - Schritt 1 Definieren Sie die Details der verwalteten EC2-Flotte
-
Für eine minimale Flottenkonfiguration:
-
Geben Sie einen Flottennamen ein.
-
Wählen Sie den Binärtyp: Build. Wählen Sie einen Build aus der Liste der Server-Builds aus, in die Sie zuvor hochgeladen habenAmazon GameLift Servers.
-
Überspringen Sie die Abschnitte Zusätzliche Details und Tags, um die Standardeinstellungen zu verwenden.
-
Füllen Sie den Abschnitt mit den Flottendetails aus:
-
Geben Sie einen Flottennamen ein. Flottennamen dienen nur zur Beschreibung und sind nützlich, um eine Liste von Flotten zu sortieren oder zu filtern. Sie müssen nicht eindeutig sein.
-
Geben Sie eine kurze Flottenbeschreibung ein, die alle benutzerdefinierten Informationen über die Flotte enthält, die Sie erfassen möchten.
-
Wähle Binärtyp, Build und wähle mithilfe der Dropdownliste einen Gameserver-Build aus, auf den du zuvor hochgeladen hast. Amazon GameLift Servers
-
-
Lege nach Bedarf zusätzliche Details fest.
-
Wenn die Programmdatei Ihres Spielservers auf andere AWS Ressourcen in Ihrem Konto zugreifen muss, geben Sie eine IAM-Instance-Rolle mit den erforderlichen Berechtigungen an. Weitere Informationen, einschließlich der Autorisierung anderer serverseitiger Anwendungen (wie CloudWatch Agenten), finden Sie unter. Verbinde deine GameLift Amazon-Server gehosteter Spieleserver auf anderen AWS Ressourcen Diese Einstellung kann nicht mehr geändert werden, nachdem Sie die Flotte erstellt haben.
Sie müssen die Rolle erstellen, bevor Sie eine Flotte erstellen, die sie verwendet. Um eine Flotte mit einer Instance-Rolle zu erstellen, muss Ihr AWS Benutzer außerdem über eine
PassRoleIAM-Berechtigung verfügen (sieheBeispiele für IAM-Berechtigungen für Amazon GameLift Servers). -
Aktiviere die Option TLS-Zertifikat generieren, um die Authentifizierung und Verschlüsselung für dein Spiel einzurichten. Spielclients verwenden dieses Zertifikat, um einen Spieleserver beim Herstellen einer Verbindung zu authentifizieren und die gesamte client/server Kommunikation zu verschlüsseln. Für jede Instanz in einer TLS-enabled Flotte. Amazon GameLift Serverserstellt außerdem einen neuen DNS-Eintrag mit dem Zertifikat. Diese Einstellung kann nicht mehr geändert werden, nachdem Sie die Flotte erstellt haben.
-
Amazon GameLift Serversgibt Metrikdaten für jede einzelne Flotte aus. Wenn Sie metrische Daten für mehrere Flotten kombinieren möchten, geben Sie einen Metrikgruppennamen an. Verwenden Sie denselben Metrikgruppennamen für alle Flotten, für die Sie Metriken kombinieren möchten. Wird verwendet CloudWatch , um die aggregierten Metrikgruppendaten anzuzeigen.
-
-
Fügen Sie der Flottenressource 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 kategorisieren möchten, Stichwörter zu, z. B. nach Zweck, Besitzer oder Umgebung. Wählen Sie für jedes Schlagwort, das Sie hinzufügen möchten, Neues Tag hinzufügen aus.
-
Wählen Sie Weiter, um den Workflow fortzusetzen.
-
- Schritt 2 Definieren Sie die Instanzdetails
-
Wählen Sie in diesem Schritt die Art der Hardwareressourcen aus, die Sie für Ihre Spieleserver verwenden möchten, und geben Sie an, wo Sie sie bereitstellen möchten. Indem Sie mehrere Standorte auswählen, können Sie Ihren Spieleserver an einem größeren geografischen Standort bereitstellen, wodurch er näher an Ihren Spielern ist und die Latenz minimiert wird. Alle EC2-Instances in einer Flotte müssen vom gleichen Typ sein. Nicht alle Instance-Typen sind an allen Standorten verfügbar.
Für eine minimale Flottenkonfiguration:
-
Beginnen Sie mit der Bereitstellung ausschließlich am Heimatstandort. Für die erste Entwicklung und das Testen müssen Sie keine Remote-Standorte hinzufügen.
-
Stellen Sie den Flotten-Typ auf "On-Demand“ ein. Spot-Flotten erfordern zusätzliche Einrichtungsarbeiten.
-
Setzen Sie den Instanztyp auf „c5.large“. Dieser häufig verwendete Instanztyp ist in allen verfügbar. AWS-Regionen Sie können Ihre Hardwarenutzung später optimieren.
-
Geben Sie unter Instance-Bereitstellung die Standorte und den Typ der Flotte an.
-
Wählen Sie einen oder mehrere zusätzliche Standorte aus, an denen Sie Flotteninstanzen bereitstellen möchten. Diese Remote-Standorte werden zum Heimatstandort der Flotte hinzugefügt (der vorausgewählt ist), AWS-Region an dem Sie diese Flotte erstellen. Sie können entfernte Standorte aus allen AWS-Regionen und lokalen Zonen auswählen, die Amazon GameLift Servers unterstützt werden.
Weitere Informationen zu unterstützten Standorten, einschließlich der Verwendung von Standorten AWS-Region , die standardmäßig nicht aktiviert sind, findest du unter GameLift Amazon-Server Servicestandorte Managed Hosting. Überprüfe auch die Amazon GameLift Servers https://docs.aws.amazon.com/general/latest/gr/gamelift.html#limits_gamelift Kontingente für Standorte pro Flotte.
-
Wählen Sie, ob Sie eine On-demand oder Spot-Instances für diese Flotte verwenden möchten. Weitere Informationen zu Flottenarten finden Sie unterOn-Demand Instanzen im Vergleich zu Spot-Instances.
-
-
Wählen Sie eine Amazon EC2-Instance-Konfiguration, die Ihren Anforderungen entspricht und an allen von Ihnen ausgewählten Standorten verfügbar ist. Diese Liste wird auf der Grundlage Ihres aktuellen Standorts und Ihrer Auswahl an Flottenarten gefiltert. Sie können sie weiter nach anderen Faktoren wie Instance-Typ, Familie und Architektur filtern. Nachdem Sie die Flotte erstellt haben, können Sie den Instance-Typ nicht mehr ändern.
An einigen Standorten sind die Optionen für den Instance-Typ eingeschränkt. Wenn Ihr bevorzugter Instance-Typ nicht für alle Standorte verfügbar ist, wählen Sie den Wert für die Standortverfügbarkeit, um alle Details anzuzeigen. Um allen Standorten gerecht zu werden, müssen Sie möglicherweise separate Flotten mit unterschiedlichen Instance-Typen erstellen.
Weitere Informationen zur Auswahl eines Instance-Typs finden Sie unterInstance-Typen. Weitere Informationen zu Amazon EC2 Arm-Architekturen finden Sie unter AWS Graviton-Prozessor
- und Amazon EC2-Instance-Typen. Eine vollständige Liste der von Amazon GameLift Servers unterstützten Instance-Typen finden Sie in der API-Referenz für (). EC2InstanceType CreateFleet()Anmerkung
Graviton Arm-Instances erfordern einen Server-Build für ein Linux-AMI. Server-SDK 5.1.1 oder neuer ist für C++ und C# erforderlich. Server-SDK 5.0 oder neuer ist für Go erforderlich. Diese Instances bieten keine standardmäßige Unterstützung für die Mono-Installation in Amazon Linux 2023 (AL2023) oder Amazon Linux 2 (AL2).
Anmerkung
Wenn Sie eine ARM-Architekturinstanz auswählen, stellen Sie sicher, dass der von Ihnen gewählte Build auf der ARM-Architektur ausgeführt wird. Andernfalls schlägt die Bereitstellung der Flotte fehl.
-
Wählen Sie Weiter, um den Arbeitsablauf fortzusetzen.
-
- Schritt 4: Runtime konfigurieren
-
Beschreiben Sie in diesem Schritt, wie jede Instanz in der Flotte Ihre Spieleserversoftware ausführen soll. Definiere eine separate Serverprozesszeile für jede ausführbare Datei, die auf einer Instance ausgeführt werden soll, und entscheide, wie viele Serverprozesse gleichzeitig ausgeführt werden sollen. Öffne Ports auf jeder Instanz, damit Spieler eine direkte Verbindung zu den Spielservern herstellen können. Du kannst diese Flotteneinstellungen jederzeit aktualisieren.
Für eine minimale Flottenkonfiguration:
-
Definieren Sie ein einzelnes Serverprozess-Einzelelement für die Programmdatei Ihres Spielservers. Wenn auf Ihrem Spieleserver andere Prozesse ausgeführt werden müssen, erstellen Sie auch für jeden dieser Prozesse eine Definition.
-
Verwende die Standardanzahl gleichzeitiger Prozesse (1) für jedes Einzelelement.
-
Überspringe die Einstellungen für die Aktivierung der Spielsitzung.
-
Geben Sie eine einzelne Portnummer an.
-
Überspringe die Ressourceneinstellungen für Spielsitzungen.
-
Erstellen Sie eine Runtime-Konfiguration, um zu Amazon GameLift Servers erfahren, wie Serverprozesse auf jeder Instance in der Flotte ausgeführt werden. Sie können die Laufzeitkonfiguration einer Flotte jederzeit nach der Bereitstellung ändern.
-
Geben Sie den Startpfad zu einer ausführbaren Datei in Ihrem Build ein. Auf Windows-Instanzen werden die ausführbaren Dateien des Spielservers in diesem Pfad erstellt.
C:\gameAuf Linux-Instances sind Spieleserver für/local/gameausgelegt. Beispiele:C:\game\MyGame\server.exeoder/local/game/MyGame/server.exe. -
Geben Sie optionale Startparameter ein, um sie an die ausführbare Datei Ihres Spiels zu übergeben. Beispiel:
+sv_port 33435 +start_lobby. -
Geben Sie die Anzahl der gleichzeitigen Prozesse an, die auf jeder Instanz ausgeführt werden sollen. Bei einer ausführbaren Spieleserver-Datei kann jeder Prozess eine Spielsitzung hosten. Gleichzeitige Prozesse bestimmen also die Anzahl der Spielsitzungen, die die Instanz gleichzeitig hosten kann.
Prüfen Sie die Amazon GameLift Servers https://docs.aws.amazon.com/general/latest/gr/gamelift.html#limits_gamelift Kontingente für Serverprozesse pro Instanz. Diese Kontingente gelten für die Gesamtzahl der gleichzeitigen Prozesse für alle Konfigurationen. Wenn Sie die Flotte so konfigurieren, dass sie sie überschreitet, kann die Flotte nicht aktiviert werden.
-
-
Verwende die Standardeinstellungen für die Aktivierung der Spielsitzung oder passe sie an dein Spiel an. Wenn die Laufzeitkonfiguration mehrere gleichzeitige Spielserverprozesse pro Instanz erfordert, bestimmen diese Einstellungen, wie schnell neue Spielsitzungen gestartet werden können.
-
Stellen Sie Max. Aktivierung gleichzeitiger Spielsitzungen ein, um die Anzahl der Spielserver auf einer Instanz zu begrenzen, die eine neue Spielsitzung vorbereiten. Diese Einstellung ist nützlich, wenn das Starten mehrerer neuer Spielsitzungen ressourcenintensiv ist und sich auf die Leistung anderer laufender Spielsitzungen auswirken kann.
-
Stellen Sie das Timeout „Neue Aktivierung“ so ein, dass es die maximale Zeit angibt, die eine neue Spielsitzung benötigen sollte, um die Aktivierung abzuschließen und Spieler als bereit zu melden. Amazon GameLift Serversbeendet die Aktivierung einer Spielsitzung, wenn sie diesen Wert überschreitet.
-
-
Öffnen Sie die EC2-Port-Einstellungen, damit eingehender Datenverkehr auf die Serverprozesse in der Flotte zugreifen kann. Diese Einstellungen sind nicht erforderlich, um eine Flotte zu erstellen, aber du musst sie einrichten, bevor Spieler eine Verbindung zu Spielsitzungen auf der Flotte herstellen können.
Wähle für jede Porteinstellung den Typ des Datenübertragungsprotokolls aus, das für die Kommunikation zwischen deinem Spielclient und dem Spielserver verwendet werden soll. Gib einen Portbereich (im Format
nnnnn[-nnnnn]) und einen IP-Adressbereich in CIDR-Notation an (z. B. der0.0.0.0/0, der allen Zugriff ermöglicht).Wenn Sie mehrere nicht aufeinanderfolgende Bereiche festlegen müssen, erstellen Sie mehrere Porteinstellungen.
-
Geben Sie optionale Ressourceneinstellungen für Spielesitzungen an. Sie können diese Einstellungen jederzeit nach der Bereitstellung aktualisieren.
-
Aktiviere oder deaktiviere die Richtlinie zum Schutz vor Spielskalierung für alle Instances in der Flotte. Während eines Scale-Down-Events werden geschützte Flotten-Instances Amazon GameLift Servers nicht beendet, wenn sie aktive Spielsitzungen veranstalten.
-
Lege ein maximales Limit für die Erstellung von Ressourcen fest, wenn du die Anzahl der Spielsitzungen, die ein Spieler in einem bestimmten Zeitraum erstellen kann, einschränken möchtest.
-
-
Wählen Sie Weiter, um den Arbeitsablauf fortzusetzen.
-
- Schritt 5 Prüfen und erstellen
-
Überprüfe deine Einstellungen, bevor du die Flotte erstellst. Einige Einstellungen können zwar später aktualisiert werden (sieheEine Amazon GameLift Servers Flottenkonfiguration aktualisieren), Änderungen an den folgenden Einstellungen sind jedoch nicht zulässig, nachdem die Flotte erstellt wurde:
-
Berechnungstyp: Sie können eine verwaltete EC2-Flotte nicht in eine Anywhere-Flotte konvertieren.
-
Gameserver-Binärdatei: Um ein Update für Ihren Spieleserver-Build bereitzustellen, müssen Sie eine neue Flotte erstellen.
-
Zusätzliche Optionen, einschließlich Instanzrolle und Generierung von TLS-Zertifikaten.
-
Instanzdetails, einschließlich des Flottentyps (Spot oder On-Demand) und des EC2-Instance-Typs.
Wenn Sie bereit sind, die neue Flotte bereitzustellen, wählen Sie Create. Amazon GameLift Serversbeginnt sofort mit der Aktivierung der Flotte, weist eine eindeutige ID zu und versetzt die Flotte in den
NEWStatus. Verfolgen Sie den Fortschritt der Flotte auf der Flottenseite. Sehen Sie sich die Detailseite der Flotte an und wechseln Sie zum Tab Ereignisse.Du kannst die Hosting-Kapazität einer Flotte anpassen, sobald die Flotte den Status AKTIV erreicht hat. Amazon GameLift Serversstellt zunächst eine Flotte mit einer einzigen Instance an jedem Flottenstandort bereit, und Sie passen die Kapazität an, indem Sie jedem Standort Instances hinzufügen. Weitere Informationen finden Sie unter Skalierung der Game-Hosting-Kapazität mit Amazon GameLift Servers.
-
- AWS CLI
-
Verwenden Sie den
create-fleetBefehl, um eine Flotte vom Typ Compute zu erstellen EC2. Amazon GameLift Serverserstellt die Flottenressource in Ihrer aktuellen Standardeinstellung AWS-Region (oder Sie können ein --region-Tag hinzufügen, um ein anderes anzugeben AWS-Region).Erstellen Sie eine minimale verwaltete Flotte
Die folgende Beispielanfrage erstellt eine neue Flotte mit den Mindesteinstellungen, die erforderlich sind, um eine Flotte mit laufenden Spielservern bereitzustellen, mit denen Spielclients eine Verbindung herstellen können. Die neue Flotte hat folgende Eigenschaften:
-
Sie spezifiziert einen Gameserver-Build, der hochgeladen wurde Amazon GameLift Servers und sich im
READYStatus befindet. -
Es verwendet c5.large On-Demand Instances mit einem Betriebssystem, das dem ausgewählten Spiel-Build entspricht.
-
Es legt das Zuhause AWS-Region der Flotte fest
us-west-2und stellt Instances nur in dieser Region bereit. -
Basierend auf der Laufzeitkonfiguration läuft auf jedem Computer in der Flotte ein Spielserverprozess, was bedeutet, dass jeder Computer jeweils nur eine Spielsitzung hosten kann. Das Timeout für die Aktivierung der Spielsitzung ist auf den Standardwert von 300 Sekunden festgelegt, und die Anzahl gleichzeitiger Aktivierungen ist unbegrenzt.
-
Spieler können über eine einzelne Porteinstellung von eine Verbindung zu Spieleservern herstellen.
33435 -
Alle anderen Funktionen sind entweder deaktiviert oder verwenden die Standardeinstellungen.
aws gamelift create-fleet \ --name MinimalFleet123 \ --description "A basic test fleet" \ --region us-west-2 \ --ec2-instance-type c5.large \ --fleet-type ON_DEMAND \ --build-id build-1111aaaa-22bb-33cc-44dd-5555eeee66ff \ --runtime-configuration "ServerProcesses=[{LaunchPath=C:\game\Bin64.dedicated\MultiplayerSampleProjectLauncher_Server.exe, ConcurrentExecutions=10}]" \ --ec2-inbound-permissions "FromPort=33435,ToPort=33435,IpRange=0.0.0.0/0,Protocol=UDP"Erstellen Sie eine vollständig konfigurierte verwaltete Flotte
Die folgende Beispielanforderung erstellt eine Produktionsflotte mit Einstellungen für alle optionalen Funktionen. Die neue Flotte weist die folgenden Eigenschaften auf:
-
Sie spezifiziert einen Gameserver-Build, der hochgeladen wurde Amazon GameLift Servers und sich im
READYStatus befindet. -
Es verwendet c5.large On-Demand Instances mit dem Betriebssystem, das dem ausgewählten Spiel-Build entspricht.
-
Es legt das Zuhause AWS-Region der Flotte fest
us-west-2und verteilt Instances in der Heimatregion und an einem entfernten Standort.sa-east-1 -
Basierend auf der Laufzeitkonfiguration:
-
Auf jedem Computer in der Flotte werden 10 Spieleserverprozesse mit denselben Startparametern ausgeführt, was bedeutet, dass jeder Computer bis zu 10 Spielsitzungen gleichzeitig hosten kann.
-
Auf jedem Computer können nur zwei Spielsitzungen gleichzeitig aktiviert werden. Spielsitzungen, die aktiviert werden, müssen innerhalb von 300 Sekunden (5 Minuten) bereit sein, um Spieler zu empfangen, oder sie müssen beendet werden.
-
-
Spieler können über einen Port im folgenden Bereich eine Verbindung zu Spieleservern herstellen
33435 to 33535. -
Es generiert ein TLS-Zertifikat für die verschlüsselte Kommunikation zwischen Spielclient und Server.
-
Bei allen Spielsitzungen in der Flotte ist der Spielsitzungsschutz aktiviert.
-
Einzelne Spieler können innerhalb von 15 Minuten nur drei neue Spielsitzungen erstellen.
-
Die Metriken für diese Flotte sind in der Metrikgruppe enthalten
AMERfleets, in der (für dieses Beispiel) die Metriken für eine Gruppe von Flotten in Nord-, Mittel- und Südamerika zusammengefasst werden.
aws gamelift create-fleet \ --name ProdFleet123 \ --description "A fully configured prod fleet" \ --ec2-instance-type c5.large \ --region us-west-2 \ --locations "Location=sa-east-1" \ --fleet-type ON_DEMAND \ --build-id build-1111aaaa-22bb-33cc-44dd-5555eeee66ff \ --certificate-configuration "CertificateType=GENERATED" \ --runtime-configuration "GameSessionActivationTimeoutSeconds=300, MaxConcurrentGameSessionActivations=2, ServerProcesses=[{LaunchPath=C:\game\Bin64.dedicated\MultiplayerSampleProjectLauncher_Server.exe, Parameters=+sv_port 33435 +start_lobby, ConcurrentExecutions=10}]" \ --new-game-session-protection-policy "FullProtection" \ --resource-creation-limit-policy "NewGameSessionsPerCreator=3, PolicyPeriodInMinutes=15" \ --ec2-inbound-permissions "FromPort=33435,ToPort=33535,IpRange=0.0.0.0/0,Protocol=UDP" \ --metric-groups "AMERfleets"Wenn die Anfrage zum Erstellen einer Flotte erfolgreich ist, wird eine Reihe von Flottenattributen Amazon GameLift Servers zurückgegeben, die die von Ihnen angeforderten Konfigurationseinstellungen und eine neue Flotten-ID enthalten. Amazon GameLift Serversleitet dann den Flottenaktivierungsprozess ein und setzt den Flottenstatus und den Standortstatus auf Neu. Sie können den Status der Flotte nachverfolgen und andere Informationen zu der Flotte über die folgenden CLI-Befehle anzeigen:
Mit diesen Befehlen können Sie die Kapazität der Flotte und andere Konfigurationseinstellungen nach Bedarf ändern:
-