= Azure での基本的なゲーム サーバー ホスティング = このリファレンス アーキテクチャでは、Windows または Linux でゲーム サーバーをホストする基本的な Azure バックエンドをセットアップする手順について詳しく説明します。 例として **Minecraft サーバー**。 ![ Azure 仮想マシンで実行されている Minecraft サーバー](media/multiplayer/multiplayer-minecraft-server.png) == アーキテクチャ図 == ![ Azure 仮想マシンで単一のゲーム サーバーをホストする](media/multiplayer/multiplayer-basic-game-server-hosting.png) == 関連サービス == - Azure Windows Virtual Machines および Azure Linux Virtual Machines - Azure でコンピューティング能力を得る最も基本的な方法。 - Azure ディスク ストレージ - 基本的な永続ストレージ。 == 一歩一歩 == 完了する手順の概要は次のとおりです。 ・リソースグループを設定します。 - Azure 仮想マシンをセットアップし、永続ディスクを接続してポートを開きます。 - メンテナンス ポートを介して新しい Azure 仮想マシンにリモートでアクセスします。 - オペレーティング システムのファイアウォールを設定します。 - 永続データ ディスクを初期化してフォーマットします。 - ゲーム サーバーの依存関係をインストールします。 - ゲーム サーバー自体をインストールします。 - ゲーム サーバーを構成します。 - ゲーム サーバーを実行し、ポートが開いていることを再確認します。 リソース グループを設定する リソース グループは、Azure リソースの論理的なコレクションです。すべてのリソースは、リソース グループでデプロイおよび管理されます。リソース グループを作成するには、次の手順を実行します。 - Azure サブスクリプションをお持ちでない場合は、開始する前に無料のアカウントを作成してください。 - Azure ポータルにサインインします。 - 左側のナビゲーションで、 リソース グループ。次に、[追加] をクリックします。 - リソース グループの一意の名前を入力します。システムは、その名前が現在選択されている Azure サブスクリプションで使用できるかどうかをすぐに確認します。 - の [サブスクリプション] で、リソース グループを作成する Azure サブスクリプションの名前をクリックします。 - リソース グループの地理的な場所を選択します。 - クリック 作成。 Azure 仮想マシンをセットアップし、永続ディスクを接続してポートを開く リソースを作成し、 ゲームサーバーが実行されるオペレーティングシステム。 Windows Linux Windows Server 2016 Datacenter または Windows Server 2016 VM Ubuntu Server 18.04 LTS または Ubuntu Server 18.04 VM を選択 Azure サブスクリプション、リソース グループ、仮想マシンの名前、およびリージョン。 独自の I/O とリソースのニーズを満たすマシン タイプ、ディスク タイプ、およびディスク サイズを選択します。 Minecraft サーバーの場合、 2 つの仮想 CPU (vCPU) と 4 GB の RAM を備えた標準の B2 は、10 人未満のユーザーには適しています。 マシンのセットアップ 後でリモートでアクセスできるようにするための、管理者のユーザー名とパスワード。 許可する 後で管理者として仮想マシンに接続できるようにするためのパブリック インバウンド ポート (メンテナンス ポート) では、ゲーム サーバーからの特定のポートが後で有効になります。 Windows Linux RDP (リモート デスクトップ プロトコル) ポート: TCP/3389 必要に応じて、SSH ポートを追加します: TCP/22 SSH ポート: TCP/22 に切り替えます ディスクセクションを選択し、新しいデータの空のディスクを作成して Azure 仮想マシンに接続し、ゲーム サーバーの実行可能ファイルとそれが生成するデータ ファイルを格納します。ソース タイプは none (空のディスク) です。 Azure Virtual Machines には、1 つのオペレーティング システム ディスクと短期保存用の一時ディスクがありますが、保存されている情報は Azure Virtual Machines が停止するとすぐに失われます。永続ディスクを使用すると、サーバーを実行している Azure 仮想マシンが停止していても、 データはその後も持続します。 に切り替えます ゲーム サーバーがプレイヤーのリクエストを受け入れてパブリック IP を作成するために必要なポートを有効にします。 ポートを開くには、仮想ネットワーク、サブネット、およびネットワーク セキュリティ グループ (NSG) を活用する必要があります。 仮想ネットワークとサブネットの両方がデフォルトで作成されます。Minecraft サーバーの場合、何も変更する必要はありません。ネットワーク セキュリティ グループを作成するには、ラジオ ボタンを選択して有効にします。 高度な NIC ネットワーク セキュリティ グループを作成するには、その横にある [新規作成] リンクをクリックして新しいネットワーク セキュリティ グループ (NSG) を構成し、関連する受信規則を追加します。 Minecraft の場合、必要なポートは 1 つだけで、Minecraft のエディション (Java Edition、Bedrock Edition) によって数とプロトコルが異なります。値のソースは server.properties ファイルであり、その形式はここで説明されています。 . [受信規則の追加] リンクをクリックした後、次の値を使用します。 Minecraft Java Edition Minecraft Bedrock Edition ソース 任意 任意 ソース ポート範囲 宛先 任意 宛先ポート範囲 25565 19132 プロトコル TCP UDP アクション 許可 許可 優先度 100 100 名前 MinecraftJava_Port MinecraftBedrock_Port パブリック IP を作成するには、次の手順に従います。この設定のすぐ横にある [Create new] リンクをクリックし、次のように構成します。 静的割り当て。 Azure 仮想マシンを確認して作成します。デプロイが完了するまで数分かかることに注意してください。 メンテナンス ポート経由で新しい Azure 仮想マシンにリモートでアクセスする Azure 仮想マシンに接続するには、パブリック IP または DNS 名のいずれかが必要です。それらを見つけるには、次の手順に従います。 - 作成したリソース グループにアクセスします。 - 次に、作成した仮想マシンを選択します。 - の パブリック IP アドレスまたは DNS Namefields は、探しているものであり、どちらでも問題ありません。 DNS をセットアップするには、[DNS 名] の下の [構成] リンクをクリックし、DNS 名ラベルの下に名前を付けて保存します。 その後、次のチュートリアルに従って、Azure 仮想マシンにリモートでアクセスします。 |リモート デスクトップ プロトコル (TCP/3389SSH (TCP/22)| |リモート デスクトップの使用方法||セキュア シェル プロトコル| Azure 仮想マシンに接続したら、以下の残りの手順に進むことができます。 オペレーティング システムのファイアウォールを設定する 仮想マシンは、メンテナンス ポートとゲーム サーバー固有のポートの両方へのリクエストを受け入れるように構成されていますが、 **オペレーティング システムのファイアウォール**も構成する必要があります。これらのチュートリアルに従って、プレーヤーのリクエストを受け入れるために**ゲーム サーバーが必要とするポート**を開きます。 |Windows||Linux| |Windows Server 2016 で受信ポート規則を作成する||Ubuntu の単純なファイアウォール | | たとえば、Minecraft の場合、コマンドは次のようになります。 - - Minecraft サーバーの場合、ゲームのバージョンによってデフォルトのポートが異なることに注意してください。Minecraft Java Edition は TCP/25565 を使用し、Minecraft Bedrock Edition は UDP/19132 を使用します。 永続データ ディスクを初期化してフォーマットする |Windows||Linux| |ディスクの管理 (diskmgmt.msc) を使用する | | ディスクの管理を開くには、[スタート] ボタンを右クリックし、[ディスクの管理] を選択します。 ディスク 2 が割り当てられていないことに注意してください。これは、初期化とフォーマットが必要な永続ディスクです。 |Linux VM に接続して新しいディスクをマウントする | | 次の手順が含まれます。 1. ディスクの検出 2.パーティショニング 3. ファイルシステムの書き込み 4. ディレクトリへのマウント 5. 再起動後の自動マウントの設定 ゲームサーバーの依存関係をインストールする Minecraft サーバーの場合、依存関係は次のとおりです。 |Minecraft サーバー版||Windows||Linux| |Minecraft Java Edition||Java 8 64 ビット版||Ubuntu への Java 8 のインストール| |Minecraft Bedrock エディション||Visual Studio 用の Microsoft Visual C++ 再頒布可能パッケージ||N/A| ゲームサーバー自体をインストールする フォーマットした永続ディスクにフォルダを作成します。 そこでゲームサーバーをダウンロードしてインストールします。 Minecraft サーバーの場合、ダウンロード リンクは次のとおりです。 Minecraft Java Edition Minecraft Bedrock Edition ダウンロード リンク ダウンロード リンク SSH 経由で Azure 仮想マシンにアクセスしている場合: - 非対話型ネットワーク ダウンローダーの使用方法については、Wget コマンドのドキュメントを参照してください。 - 実行して解凍してインストールします sudo apt-get install unzipand 実行 sudo unzip THEZIPFILE を実行して、Minecraft Bedrock Edition サーバーを解凍できるようにします。 ゲームサーバーを構成する Minecraft Java Edition サーバーの場合、最初に eula.txt ファイル パラメーター (eula=true) を変更して EULA に同意します。 SSH 経由で Azure 仮想マシンにアクセスしている場合は、Nano エディターのドキュメントを参照して、SSH 経由でファイルを編集してください。 公式 Minecraft wiki のこのチュートリアルに従って、両方の Minecraft サーバー エディション用に Minecraft サーバーを構成します。 ゲームサーバーを実行し、ポートが開いていることを再確認します Minecraft Java Edition サーバーを実行するには、コマンド ライン (Windows) またはターミナル (Linux) からこれを使用します。 java -Xmx2G -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M -jar server.jar nogui グラフィカル ユーザー インターフェイスを使用してサーバーを起動する必要がある場合は、"nogui"部分を省略できます。便宜上、バッチ ファイル (Windows) またはスクリプト (Linux) を作成できます。 Minecraft Bedrock Edition サーバーを実行するには: - Windows では、 bedrock_server.exe実行可能ファイル。 - Linux では、 LD_LIBRARY_PATH=. ./bedrock_server サーバーがインストールされたディレクトリから。サーバーをルートとして実行する必要はありません。 Minecraft Java Edition を使用している場合、サーバーが実行されたら、ゲーム サーバーに必要なポートが開いていてリッスンしていることを確認できます。ただし、テストの前にゲーム サーバーが実行されていることを確認してください。 |テスト中||Windows||Linux| |Azure 仮想マシン内で||実行 |聞く |走る | | |Azure 仮想マシンの外部||1.次の手順に従って Telnet を有効にします。 [スタート]、[コントロール パネル]、[プログラム]、[Windows の機能の有効化または無効化] の順にクリックします。下にスクロールして [Telnet クライアント] を選択し、[OK] をクリックします。 | | 2. その後、コマンド ラインから次のコマンドを実行します。 承認 |実行 |承認済み Minecraft Bedrock Edition を使用している場合: |テスト中||Windows||Linux| |Azure 仮想マシン内で||実行 ||走る | | == セキュリティに関する考慮事項 == パブリック インバウンド ポートはインターネットに公開されているため、Azure ポータルの高度な制御を使用して、メンテナンス インバウンド トラフィックを既知の IP アドレスに制限する必要があります。つまり、Azure 仮想マシンにリモートでアクセスできるのは自分だけです。 == 価格 == Azure サブスクリプションをお持ちでない場合は、無料アカウントを作成して、12 か月間の無料サービスを開始してください。これらのサービスの制限を超えない限り、Azure の無料アカウントに無料で含まれているサービスに対して課金されることはありません。 Azure Portal または使用状況ファイルを通じて使用状況を確認する方法について説明します。 これらのリファレンス アーキテクチャの実行中に使用される Azure サービスのコストはお客様の負担となります。合計金額は、分析パイプラインを介して実行されるイベントの数によって異なります。参照アーキテクチャで使用された各サービスの料金 Web ページを参照してください。 使用を計画している Azure サービスのコストを構成して見積もるために、Azure 料金計算ツールも利用できます。 == フィードバック == のフィードバックを送信して表示する