Bereitstellen von Builds mithilfe von Game Manager
In diesem Artikel werden die allgemeinen Schritte zum Bereitstellen/Erstellen von Builds für VMs mit Game Manager aufgeführt.
Wenn Sie einen Build zum ersten Mal bereitstellen, empfiehlt es sich, einen Build mithilfe des Windows Runner C#-Beispiels oder wrapper-Beispiels bereitzustellen. Beide enthalten alle Ressourcen, die Sie zum tatsächlichen Bereitstellen von Servern benötigen.
Notiz
Um die PlayFab Multiplayer-Server verwenden und anzeigen zu können, müssen Sie das Feature über Game Manager aktivieren. Anweisungen finden Sie unter Aktivieren des PlayFab Server-Features.
Ausführliche Informationen zu den Werten, die Sie für jeden Parameter verwenden können, finden Sie unter Builddefinition.
Schritte für die Bereitstellung über Game Manager
Melden Sie sich beim Game Manager an.
Wechseln Sie zur Seite Meine Studios und Titel, und wählen Sie Ihren Spieltitel aus, um die Dashboard
Wechseln Sie zur Seite "Multiplayerserver>", wählen Sie oben rechts "Neuer Build" aus, um einen neuen Build zu erstellen.
Verwenden Sie ab den Builddetails eine beschreibende Zeichenfolge als Buildnamen.
Wählen Sie einen Server mit eingeschränkter kostenloser Nutzung aus, z. B. Dasv4 während der Entwicklung. Weitere Informationen zu den Preisen finden Sie unter Abrechnung für PlayFab Multiplayer-Server.
Festlegen eines gewünschten Werts für Server pro Computer
Abbildung unten zeigt werte, die im Infoabschnitt verwendet werden.
Als Nächstes haben wir den Teil mit den Serverdetails, in dem Sie einen Betriebssystemtyp auswählen müssen, entweder Windows oder Linux. Anschließend wählen Sie Ihren Servertyp aus, entweder Prozess oder Container basierend auf dem von Ihnen ausgewählten Betriebssystem.
Notiz
Für die Linux-Plattform müssen Sie Ein eigenes Containerimage erstellen. Weitere Anweisungen finden Sie unter Erstellen und Bereitstellen von Linux-Containerimages. Wenn Sie bereits ein Containerimage hochgeladen haben, wird es in der Dropdownliste Image angezeigt. Um es zu verwenden, wählen Sie das Bild aus.
Nachdem Sie Ihren Betriebssystemtyp ausgewählt haben, können Sie den Servertyp auswählen. Basierend auf dem Betriebssystem-/Servertyp verfügen Sie über die folgenden Features, die Sie aktivieren können.
- Vorschau von VM-Metriken: Durch Aktivieren der Metriken können Sie Metriken auf Systemebene wie CPU, Arbeitsspeicher, Netzwerk usw. anzeigen. Weitere Informationen finden Sie im Artikel VM-Leistungsmetriken (Vorschauversion).
- Windows Core Preview: Ermöglicht es Ihnen, die neuesten Versionen des Windows-Betriebssystems in Testbuilds zu testen, um zu sehen, wie Ihr Spiel mit dem neueren Betriebssystem ausgeführt wird. Weitere Informationen finden Sie unter Updates auf Betriebssystempatchebene für Windows.
- Automatische Absturzabbildsammlung: Ermöglicht ihnen, die automatische Absturzabbildsammlung für Ihre Windows Container-Servertypen zu aktivieren. Sie können zwischen einem vollständigen, mini- oder benutzerdefinierten Speicherabbild wählen. Weitere Informationen finden Sie unter Aktivieren der automatischen Sammlung von Absturzabbildern.
Serverdetails für den Prozessmodus
Die folgende Abbildung zeigt werte, die im Abschnitt Betriebssystem verwendet werden, wenn Sie Windows als Plattform auswählen, aber prozessbasierten Servertyp verwenden. Es gibt auch die Möglichkeit, prozessbasierte Linux-Server zu verwenden.
Serverdetails für den Containermodus
Die folgende Abbildung zeigt werte, die im Abschnitt "Betriebssystem" verwendet werden, wenn Sie Linux als Plattform auswählen, aber containerbasierten Servertyp verwenden. Es gibt auch die Möglichkeit, auf Windows-Containern basierende Server zu verwenden.
Ressourcen für Builds
- Wählen Sie unter Medienobjekte die Option Hochladen aus. Navigieren Sie zum Ordner mit dem kompilierten PlayFab Multiplayer Server Build, und wählen Sie dann das hochzuladende .zip Paket aus.
Ressourcen für Windows-Server
- Für die Windows-Plattform müssen Sie einen PlayFab Game Server-Build als Ressource hochladen. Informationen zum Erstellen eines PlayFab Game Server-Builds finden Sie unter Erstellen eines Spieleserverbuilds. Laden Sie Ressourcen hoch, um das Windows-Containerimage zu ändern und anzupassen. Der Einbindungspfad für die Ressourcen in Windows-Servern sollte sich auf Laufwerk C befinden.
Ressourcen für Windows-Containerserver
Ressourcen für Windows-Server müssen sich auf Laufwerk C befinden, andernfalls gibt die API möglicherweise einen Fehler zurück. Der Einbindungspfad ist nur für Container erforderlich.
Notiz
Geben Sie keinen Einbindungspfad für prozessbasierte Server an.
Ressourcen für Linux-Server
- Für die Linux-Plattform ist das Hochladen eines Medienobjekts optional, da Game Server als Teil des Containerimages enthalten sein kann. Sie müssen jedoch weiterhin über einen Game Server verfügen. Stellen Sie sicher, dass der Einbindungspfad innerhalb des Containers gültig ist, den Sie hochladen.
Wenn Sie Ressourcen hochladen:
- Legen Sie C:\Assets fest, oder wählen Sie einen anderen Pfad als Einbindungspfad aus.
- Legen Sie C:\Assets\YourGameServerBuild.exe als Startbefehl fest.
Netzwerkeinstellungen
- Legen Sie für netzwerk die Portnummer, den Namen und das Protokoll fest.
Festlegen des Ports für Containerservertypen
Wenn Sie einen Containerservertyp verwenden, sollten Sie die Portnummer angeben.
Beispielsweise können Sie in Game Manager für einen Containerservertyp Folgendes angeben:
- Portname: "gameServerPort"
- Portnummer: 7777
- Protokoll: UDP
Dann würden Sie in Ihrem Code folgendes tun:
int port = 7777; // since you already know the port
GameServer gs = new GameServer(port);
gs.start();
Notiz
Im Containermodus wird jeder Spielserver in einem eigenen Netzwerknamespace ausgeführt. Dies ist der Grund, warum jeder Spielserver denselben Port hören kann. Der Containerport wird dynamisch einem eindeutigen Port auf dem virtuellen Computer zugeordnet. Im Prozessmodus werden jedoch alle Spielserver im gleichen Netzwerknamespace ausgeführt. Wenn alle Spielserver an demselben Port lauschen, würde dies zu Konflikten führen. Aus diesem Grund müssen Sie den ServerListeningPort aus dem GSDK abrufen.
Festlegen des Ports für Prozessservertypen
Für den Prozessservertyp sollten Sie das GSDK verwenden, um Ihre Portnummer abzurufen. Fügen Sie keine Portnummer als Teil der Builddefinition ein.
Dann würden Sie in Ihrem Code folgendes tun:
var gsc = GameServerSDK.GetConnectionInfo();
var gp = gsc.Where(x=>x.Name=="gameServerPort").Single();
GameServer gs = new GameServerPort(gp.ServerListeningPort);
Um den vollständigen Beispielcode anzuzeigen, wechseln Sie zu GameServerConnectionInfo.cs in GSDK/CSharp/GSDK_CSharp_Standard Das obige Codebeispiel, das den Port aus dem GSDK abruft, funktioniert auch im Containermodus.
Befehl zum Starten des Spiels
Startbefehl für containerbasierte Server
Ihr Startbefehl sollte der absolute Pfad (einschließlich des Einbindungspfads) zu Ihrer ausführbaren Spieldatei sein, die alle erforderlichen Argumente enthalten sollte. Ihr Startbefehl könnte beispielsweise wie C:\Assets\wrapper.exe -g C:\Assets\fakegame.exe arg1 arg2 aussehen. Das Hinzufügen des Teils "C:\Assets" zu Ihrem absoluten Pfad für Ihren Startbefehl ist nur erforderlich, wenn es sich um einen windows-containerbasierten Server handelt. Dies liegt daran, dass dies das Verzeichnis ist, aus dem Ihr Spielobjekt extrahiert werden würde.
Startbefehl für prozessbasierte Windows-Server
Ihr Startbefehl ist der relative Pfad innerhalb des hochgeladenen Medienobjekts. Wenn sich die ausführbare Datei direkt im Ressourcenordner befindet, können Sie einfachyourGameServerBuild.exe>verwenden < . Wenn es sich in einem anderen Ordner (z. B. GameDirectory) befindet, lautet der Startbefehl gameDirectory/YourGameServerBuild.exe.
- Wählen Sie unter Regionen die Region aus, in der Sie die Server bereitstellen möchten. Geben Sie dann die Anzahl der Standbyserver und die maximale Anzahl an Servern an.
- Wählen Sie Speichern aus, um den Bereitstellungsprozess zu starten. Sie gelangen zur Startseite des Builds. Der Build zeigt die status bereitstellen an, wie in der folgenden Abbildung dargestellt.
In wenigen Minuten sollte sich Ihr Build im Zustand Bereitgestellt befinden. Dies bedeutet, dass Server bereitgestellt werden und zugeordnet werden können. Weitere Informationen zum Zuordnen von Spielservern finden Sie hier , während Sie mpsAllocatorSample verwenden können, um mit der Serverzuordnung zu experimentieren.
Konfigurieren von Regionsinformationen
Nach der Bereitstellung von Builds können Sie die folgenden Parameter weiterhin ändern.
- Regionen
- Standby-Server
- Maximale Server
So konfigurieren Sie regionale Einstellungen:
- Wechseln Sie zur SeiteServerbuilds>.
- Wählen Sie den Build aus, den Sie ändern möchten.
- Wechseln Sie auf der Registerkarte Regionen zum Abschnitt Server nach Region .
- Hinzufügen/Entfernen einer Region und Ändern der Servernummern
Tipp
Schließen Sie während der Entwicklung alle nicht verwendeten oder fehlerhaften Regionen, um die Nutzung von VM-Kernstunden zu vermeiden. Die Nutzung der Kernstunde beginnt beim Starten des virtuellen Computers und wird fortgesetzt, bis die VM heruntergefahren wird. VMs in einer Region werden nicht automatisch heruntergefahren, es sei denn, die Ziel-Standbyserver der Region erreichen 0 oder eine Region wird gelöscht.
Herunterfahren von VMs
Es gibt drei Möglichkeiten zum Herunterfahren von VMs
- Legen Sie den Ziel-Standbymodus einer Region auf 0 fest. Dadurch werden VMs nur für diese Region heruntergefahren.
- Löschen einer bestimmten Region aus einem Build.
- Löschen Sie den gesamten Build. Dadurch werden VMs in allen Regionen für diesen Build heruntergefahren.