= Basic Game Server Hosting auf Azure = Diese Referenzarchitektur beschreibt die Schritte zum Einrichten eines grundlegenden Azure-Back-Ends, das einen Spieleserver unter Windows oder Linux hosten wird **Minecraft-Server** als Beispiel. ![ Minecraft-Server läuft auf einer virtuellen Azure-Maschine](media/multiplayer/multiplayer-minecraft-server.png) == Architekturdiagramm == ![ Hosten eines einzelnen Spielservers auf einer virtuellen Azure-Maschine](media/multiplayer/multiplayer-basic-game-server-hosting.png) == Relevante Dienste == – Azure Windows Virtual Machines und Azure Linux Virtual Machines – Die einfachste Möglichkeit, Rechenleistung auf Azure zu erhalten. – Azure Disk Storage – Einfacher dauerhafter Speicher. == Schritt für Schritt == Die Zusammenfassung der auszuführenden Schritte lautet: - Richten Sie eine Ressourcengruppe ein. - Richten Sie eine virtuelle Azure-Maschine ein, hängen Sie eine persistente Festplatte an und öffnen Sie Ports. - Greifen Sie remote über den Wartungsport auf die neue Azure Virtual Machine zu. - Richten Sie die Firewall des Betriebssystems ein. - Initialisieren und formatieren Sie die persistente Datenfestplatte. - Installieren Sie die Gameserver-Abhängigkeiten. - Installieren Sie den Gameserver selbst. - Konfigurieren Sie den Spielserver. - Führen Sie den Spielserver aus und überprüfen Sie, ob die Ports offen sind. Richten Sie eine Ressourcengruppe ein Eine Ressourcengruppe ist eine logische Sammlung von Azure-Ressourcen. Alle Ressourcen werden in einer Ressourcengruppe bereitgestellt und verwaltet. Gehen Sie wie folgt vor, um eine Ressourcengruppe zu erstellen: – Wenn Sie kein Azure-Abonnement haben, erstellen Sie ein kostenloses Konto, bevor Sie beginnen. – Melden Sie sich beim Azure-Portal an. - Klicken Sie in der linken Navigation auf Ressourcengruppen. Klicken Sie dann auf Hinzufügen. - Geben Sie einen eindeutigen Namen für die Ressourcengruppe ein. Das System prüft sofort, ob der Name im aktuell ausgewählten Azure-Abonnement verfügbar ist. - In Abonnement auf den Namen des Azure-Abonnements, in dem Sie die Ressourcengruppe erstellen möchten. - Wählen Sie einen geografischen Standort für die Ressourcengruppe aus. - Klicken Schaffen. Richten Sie eine Azure Virtual Machine ein, hängen Sie eine persistente Festplatte an und öffnen Sie Ports Erstellen Sie eine Ressource und wählen Sie eine virtuelle Maschine mit der aus Betriebssystem, auf dem der Spielserver ausgeführt wird. Suchen Sie im Azure-Portal nach Folgendem, sie gehören normalerweise zu den beliebtesten: Windows Linux Windows Server 2016 Datacenter oder Windows Server 2016 VM Ubuntu Server 18.04 LTS oder Ubuntu Server 18.04 VM Wähle aus Azure-Abonnement, Ressourcengruppe, Name der virtuellen Maschine und Region. Wählen Sie einen Maschinentyp, Datenträgertyp und eine Datenträgergröße aus, die Ihren eigenen E/A- und Ressourcenanforderungen entsprechen. Im Fall von Minecraft-Servern eine kleine virtuelle Azure-Maschine wie Standard-B2s mit 2 virtuellen CPUs (vCPU) und 4 GB RAM wären für weniger als 10 Benutzer geeignet. Richten Sie die Maschine ein Benutzername und Passwort des Administrators, um später aus der Ferne darauf zugreifen zu können. Erlaube das Öffentliche Inbound-Ports, damit Sie sich später als Administrator mit der virtuellen Maschine verbinden können (Wartungsports), werden die spezifischen Ports Ihres Spielservers anschließend aktiviert: Windows Linux RDP (Remote Desktop Protocol)-Port: TCP/3389 Fügen Sie optional den SSH-Port hinzu: TCP/22 SSH-Port: TCP/22 Wechseln Sie zu disks und wählen Sie Create and Attach a new data empty disk to the Azure Virtual Machine, um die ausführbare Datei des Spielservers und die von ihr erzeugten Datendateien zu speichern. Der Quelltyp ist keiner (leerer Datenträger). Virtuelle Azure-Computer verfügen über einen Betriebssystemdatenträger und einen temporären Datenträger für die kurzfristige Speicherung, aber die gespeicherten Informationen gehen verloren, sobald der virtuelle Azure-Computer beendet wird. Mit einer persistenten Festplatte, selbst wenn der virtuelle Azure-Computer, auf dem der Server ausgeführt wird, angehalten wird, die Daten bleiben danach bestehen. Wechseln Sie zu Netzwerkabschnitt, um die Ports zu aktivieren, die Ihr Spielserver benötigt, um Spieleranfragen zu akzeptieren und eine öffentliche IP zu erstellen. Zum Öffnen der Ports müssen Sie ein virtuelles Netzwerk, ein Subnetz und eine Netzwerksicherheitsgruppe (NSG) nutzen. Sowohl das virtuelle Netzwerk als auch das Subnetz werden standardmäßig erstellt, im Fall des Minecraft-Servers müssen Sie nichts anfassen. Wählen Sie zum Erstellen der Netzwerksicherheitsgruppe das Optionsfeld aus, um die zu aktivieren erweiterten NIC-Netzwerksicherheitsgruppe, konfigurieren Sie die neue Netzwerksicherheitsgruppe (NSG), indem Sie auf den Link „Neu erstellen“ direkt daneben klicken, und fügen Sie die relevante(n) Eingangsregel(n) hinzu. Bei Minecraft wird nur ein Port benötigt, der je nach Minecraft-Edition (Java Edition, Bedrock Edition) in Anzahl und Protokoll variiert, Quelle der Werte ist die Datei server.properties, deren Format hier erklärt wird . Nachdem Sie auf den Link "Eingehende Regel hinzufügen"geklickt haben, verwenden Sie diese Werte: Minecraft Java Edition Minecraft Bedrock Edition Quelle Beliebig Beliebig Quellportbereiche Ziel Beliebig Beliebig Zielportbereich 25565 19132 Protokoll TCP UDP Aktion Zulassen Zulassen Priorität 100 100 Name MinecraftJava_Port MinecraftBedrock_Port Gehen Sie zum Erstellen der öffentlichen IP wie folgt vor: Klicken Sie direkt neben dieser Einstellung auf den Link "Neu erstellen"und konfigurieren Sie sie mit statische Zuordnung. Überprüfen und erstellen Sie den virtuellen Azure-Computer. Beachten Sie, dass es einige Minuten dauern wird, bis die Bereitstellung abgeschlossen ist. Greifen Sie über den Wartungsport remote auf die neue Azure Virtual Machine zu Sie benötigen entweder die öffentliche IP-Adresse oder den DNS-Namen, um eine Verbindung mit dem virtuellen Azure-Computer herzustellen. Führen Sie die folgenden Schritte aus, um sie zu finden: - Greifen Sie auf die von Ihnen erstellte Ressourcengruppe zu. - Wählen Sie dann die virtuelle Maschine aus, die Sie erstellt haben. - Das Öffentliche IP-Adresse oder die DNS-Namensfelder sind das, wonach Sie suchen, beides ist in Ordnung. Um den DNS einzurichten, klicken Sie unter DNS-Name auf den Link "Konfigurieren", geben Sie unter DNS-Namensetikett einen Namen ein und speichern Sie ihn. Folgen Sie danach diesem Tutorial, um remote auf die Azure Virtual Machine zuzugreifen: |Remotedesktopprotokoll (TCP/3389SSH (TCP/22)| |So verwenden Sie Remote Desktop||Secure Shell Protocol| Sobald Sie eine Verbindung mit dem virtuellen Azure-Computer hergestellt haben, können Sie mit den verbleibenden Schritten unten fortfahren. Richten Sie die Firewall des Betriebssystems ein Ihre virtuelle Maschine ist bereits so konfiguriert, dass sie Anfragen sowohl an die Wartungs- als auch an die Spielserver-spezifischen Ports akzeptiert **Firewall des Betriebssystems** muss ebenfalls konfiguriert werden. Befolgen Sie diese Tutorials, um die **Ports zu öffnen, die Ihr Spielserver benötigt**, um Spieleranfragen zu akzeptieren. |Windows||Linux| |Erstellen Sie eine eingehende Portregel auf Windows Server 2016||Unkomplizierte Ubuntu-Firewall | Im Fall von Minecraft wären die Befehle beispielsweise: - - Im Fall von Minecraft-Servern nur eine Erinnerung daran, dass die Standardports je nach Version des Spiels variieren: Minecraft Java Edition verwendet TCP/25565, während Minecraft Bedrock Edition UDP/19132 verwendet. Initialisieren und formatieren Sie die persistente Datenfestplatte |Windows||Linux| |Datenträgerverwaltung verwenden (diskmgmt.msc) | Um die Datenträgerverwaltung zu öffnen, klicken Sie mit der rechten Maustaste auf die Schaltfläche Start und wählen Sie Datenträgerverwaltung. Beachten Sie, dass die Festplatte 2 nicht zugeordnet ist, das ist die persistente Festplatte, die initialisiert und formatiert werden muss. |Stellen Sie eine Verbindung zur Linux-VM her, um die neue Platte bereitzustellen | Es umfasst die folgenden Schritte: 1. Entdecken der Festplatte 2. Partitionieren 3. Schreiben eines Dateisystems darauf 4. Mounten Sie es in einem Verzeichnis 5. Automatisches Mounten nach Neustarts einrichten Spielserver-Abhängigkeiten installieren Im Falle des Minecraft-Servers sind die Abhängigkeiten: |Minecraft-Server-Edition||Windows||Linux| |Minecraft Java Edition||Java 8 64-Bit-Version||Installieren von Java 8 auf Ubuntu| |Minecraft Bedrock Edition||Microsoft Visual C++ Redistributable für Visual Studio||N/A| Installieren Sie den Gameserver selbst Erstellen Sie einen Ordner auf der soeben formatierten persistenten Festplatte. Laden Sie dort den Gameserver herunter und installieren Sie ihn. Im Falle des Minecraft-Servers lauten die Download-Links: Minecraft Java Edition Minecraft Bedrock Edition Download-Link Download-Link Wenn Sie über SSH auf die Azure Virtual Machine zugreifen: - Sehen Sie sich die Wget-Befehlsdokumentation an, um zu erfahren, wie Sie einen nicht interaktiven Netzwerk-Downloader verwenden. - Unzip durch Ausführen installieren sudo apt-get install entpacken und dann ausführen sudo unzip THEZIPFILE, um den Minecraft Bedrock Edition-Server entpacken zu können. Konfigurieren Sie den Gameserver Ändern Sie im Fall des Minecraft Java Edition-Servers zuerst den Dateiparameter eula.txt (eula=true), um deren EULA zu akzeptieren. Wenn Sie über SSH auf den virtuellen Azure-Computer zugreifen, sehen Sie sich die Dokumentation zum Nano-Editor an, um Dateien über SSH zu bearbeiten. Folgen Sie diesem Tutorial aus dem offiziellen Minecraft-Wiki, um den Minecraft-Server für beide Minecraft-Server-Editionen zu konfigurieren. Führen Sie den Spielserver aus und überprüfen Sie, ob die Ports geöffnet sind Um den Minecraft Java Edition-Server auszuführen, verwenden Sie dies über die Befehlszeile (Windows) oder das Terminal (Linux): java -Xmx2G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M -jar server.jar nogui Wenn Sie den Server mit seiner grafischen Benutzeroberfläche starten möchten, können Sie den "nogui"-Teil weglassen. Sie können der Einfachheit halber eine Stapeldatei (Windows) oder ein Skript (Linux) erstellen. So führen Sie den Minecraft Bedrock Edition-Server aus: - Doppelklicken Sie unter Windows einfach auf die bedrock_server.exe ausführbar. - Verwenden Sie unter Linux LD_LIBRARY_PATH=. ./bedrock_server aus dem Verzeichnis, in dem der Server installiert wurde. Der Server muss nicht als root ausgeführt werden. Wenn Sie Minecraft Java Edition verwenden, können Sie nach dem Ausführen des Servers überprüfen, ob die für Ihren Spielserver erforderlichen Ports geöffnet sind und lauschen. Stellen Sie jedoch sicher, dass der Spielserver vor dem Testen läuft: |Testen unter||Windows||Linux| |Innerhalb der virtuellen Azure-Maschine||Ausführen |lauscht |Lauf | |Außerhalb des virtuellen Azure-Computers||1. Aktivieren Sie Telnet, indem Sie diesen Schritten folgen: Klicken Sie auf Start, Systemsteuerung, Programme und dann auf Windows-Funktionen ein- oder ausschalten; Scrollen Sie dann nach unten und wählen Sie Telnet Client und klicken Sie auf OK | 2. Führen Sie danach von der Befehlszeile aus akzeptiert |Ausführen |akzeptiert Wenn Sie die Minecraft Bedrock Edition verwenden: |Testen unter||Windows||Linux| |Innerhalb der virtuellen Azure-Maschine||Ausführen ||Lauf | == Sicherheitsüberlegungen == Öffentliche eingehende Ports sind dem Internet ausgesetzt, daher sollten Sie die erweiterten Steuerelemente des Azure-Portals verwenden, um eingehenden Wartungsdatenverkehr auf bekannte IP-Adressen zu beschränken, was bedeutet, dass nur Sie remote auf den virtuellen Azure-Computer zugreifen können. == Preise == Wenn Sie kein Azure-Abonnement haben, erstellen Sie ein kostenloses Konto, um mit 12 Monaten kostenloser Dienste zu beginnen. Die im kostenlosen Azure-Konto enthaltenen Dienste werden Ihnen nicht in Rechnung gestellt, es sei denn, Sie überschreiten die Grenzen dieser Dienste. Erfahren Sie, wie Sie die Nutzung über das Azure-Portal oder über die Nutzungsdatei überprüfen. Sie sind für die Kosten der Azure-Dienste verantwortlich, die beim Ausführen dieser Referenzarchitekturen verwendet werden. Der Gesamtbetrag hängt von der Anzahl der Ereignisse ab, die durch die Analysepipeline ausgeführt werden. Sehen Sie sich die Preisseiten für jeden der Dienste an, die in den Referenzarchitekturen verwendet wurden: Ihnen steht auch der Azure-Preisrechner zur Verfügung, um die Kosten für die Azure-Dienste, die Sie verwenden möchten, zu konfigurieren und abzuschätzen. == Feedback == Senden und Anzeigen von Feedback für