専用サーバーをAMSにアップロードする - ゲームサーバー統合 - (Unityモジュール)
注釈:本資料はAI技術を用いて翻訳されています。
Linux専用サーバーをパッケージ化する
AMSにアップロードできるのはLinuxゲームサーバービルドのみです。このセクションでは、ゲームサーバーをLinuxビルドとしてパッケージ化する方法を学びます。
-
Unity EditorでByte Warsを開き、File > Build Settingsに移動します。
-
新しいウィンドウで、PlatformにDedicated Serverを選択し、Target PlatformとしてLinuxを選択します。また、サーバービルドでログを表示するためにDevelopment Buildを有効にします。
-
次に、Buildボタンをクリックします。
-
新しいポップアップウィンドウで、サーバービルドにByteWars.x86_64という名前を付けます。その後、キーボードのEnterキーを押してビルドプロセスを開始し、完了するまで待ちます。
サーバーイメージをAMSにアップロードする
このチュートリアルセクションでは、ゲームサーバーのLinuxビルドをサーバーイメージとしてAMSにアップロードする方法を学びます。
-
Admin Portalにログインし、ゲームのネームスペースダッシュボードに移動します。
-
Multiplayer Server Configuration > Download Resourceに移動します。
-
AMS Command Line Interface (CLI) **For Windows (amd64)**をダウンロードします。ams.exeファイがダウンロードされます。
-
AMS CLIを使用してLinux専用サーバーをアップロードします。以下のコマンドでWindows PowerShellを使用してams.exeを実行します。前のセクションで作成したByteWars-AMS IAMクライアントのクライアントIDとクライアントシークレットを使用して、
<AMSCLI_ClientID>と<AMSCLI_ClientSecret>を置き換えます。.\ams.exe upload -H <AMS_HostURL> -c <AMSCLI_ClientID> -s <AMSCLI_ClientSecret> -n <DSImageName> -p <DSAbsoluteLocalPath> -e ByteWars.x86_64備考専用サーバーをアップロードするためのAMS CLIコマンドの詳細は以下の通りです。
-H: AGSネームスペースを実行する場所に応じたAMSホストURL。AGS Private Cloudの場合、ホストURLは<studio_name>.accelbyte.ioです。AGS Shared Cloudの場合、ホストURLはprod.gamingservices.accelbyte.ioです。-c: 認証に使用されるIAMクライアントID。作成したAMS CLI IAMクライアントのIAMクライアントIDに設定します。-s: 認証に使用されるIAMクライアントシークレット。作成したAMS CLI IAMクライアントのIAMクライアントシークレットに設定します。-n: アップロードプロセス完了後の専用サーバーイメージの名前。任意の名前を付けることができますが、意味のある名前にしてください。例えば、サーバーバージョンを示す1.4.0-unity-bytewarsなどです。-p: アップロードするサーバーディレクトリへのローカルパス。例えば、C:/Documents/ByteWars/LinuxServerのような絶対パスや、../ByteWars/LinuxServerのような相対パスを使用できます。-e: サーバーディレクトリ内の専用サーバー実行ファイル。この場合、実行ファイルはByteWars.x86_64ファイルです。
-
アップロードプロセスが完了すると、Admin Portalに新しい専用サーバーイメージがリストされているのを確認できます。Multiplayer Server Configuration > Server Imagesに移動して確認することもできます。
AMSフリートを作成する
アップロードしたサーバーイメージを使用して、AMSフリートによって管理される専用サーバーのインスタンスを作成できます。AMSフリートは、地域設定に基づいて仮想マシンをスケーリングし、それらの仮想マシン内でホストされる専用サーバーを管理する機能を持っています。このセクションでは、ゲームサーバー用のフリートを作成する方法を学びます。
-
Admin Portalにログインし、ゲームのネームスペースダッシュボードに移動します。
-
Multiplayer Server Configuration > Fleet Managerに移動します。
-
Region Listセクションで、専用サーバーをデプロイしたい地域を切り替えます。このチュートリアルでは、ap-southeast-1とus-east-2が有効になっています。
-
Create Fleet > Create Newをクリックして新しいフリートを作成します。
-
新しいFleet & Imageタブで、フリート名を入力し、先ほどアップロードしたサーバーイメージを選択します。フリート名は任意ですが、簡単にするためにサーバーイメージ名と同じ名前を使用できます。完了したら、Nextボタンをクリックします。
-
Deployment Profileタブで、TimeoutとPort Configurationの設定はデフォルトのままにします。Command Line設定には、専用サーバーがAMSによって管理できるように設定する以下のデフォルトコマンドを入力します。完了したら、Nextをクリックします。
-dsid ${dsid} -port ${default_port} -
DS Host & Regionタブで、ニーズに基づいてVirtual Machine (VM)インスタンスタイプを選択できます。このチュートリアルでは、小さなインスタンスを使用しましょう。Host Instanceにttx1.sを選択し、Dedicated Serversの数を2に設定します。この設定は、選択したVMインスタンス上に2つの専用サーバーを生成するようフリートに指示します。
-
DS Host & Regionタブで、Regional Configurationセクションに移動します。次に、希望する地域を有効にします。この例ではap-southeast-1とus-east-2を使用します。このチュートリアルでは、Min Serversを0、Max Serversを2、Buffer Valueを1に設定します。
備考- Min Servers: デプロイメントが維持する必要のあるサーバーの最小数。サーバーが「Ready」(ウォームバッファ)状態か「In Session」(ゲームセッションを提供中)状態かに関係なく維持されます。
- Max Servers: 地域が維持できるサーバーの最大数。この値は、ゲームサーバーのコストが予算を超えないようにするためのリミッターとして役立ちます。
- Buffer Value: バッファ値は、ウォームバッファとして維持するサーバーの数をフリートに指示します。
-
Log & Artifacts Samplingタブで、専用サーバーがログを生成できるようにします。これを行うには、Enable Log Samplingオプションを有効にし、サンプルを**100%**に設定します。この設定により、専用サーバーはすべてのイベントをログに記録します。完了したら、Nextボタンをクリックします。
-
Summaryタブで、フリート設定を確認できます。次に、Createボタンをクリックして新しいフリートを作成します。
-
フリートが作成され、フリートリストで利用可能になります。フリート名をクリックしてフリートの詳細を開きます。
-
フリートがアクティブ化されていない場合は、フリート名の下、左上隅にあるFleet Statusトグルを見つけます。必ずActiveに切り替えてください。
-
フリート詳細ページで、Dedicated Server Listセクションを見つけます。そこで、専用サーバーとそのステータスを確認できます。
備考新しいフリートは通常、リストに表示される前に専用サーバーが起動して実行されるまで約3分かかります。以下は、フリート上の専用サーバーの状態です。
- Creating: 専用サーバーは現在初期化中です(まだAMSウォッチドッグに準備完了メッセージを送信していません)。
- Ready: 専用サーバーはAMSに準備完了信号を送信し、準備が整っています。
- Claiming: フリートマネージャーは現在、クレームキーを使用してセッションに専用サーバーをクレームしています。
- Claimed: 専用サーバーはすでにゲームセッションにバインドされており、ゲームは現在進行中です。
- Removed: 専用サーバーはフリートから削除されました。
フリート用のクレームキーを作成する
このセクションでは、AMSフリートから専用サーバーをクレームするためのクレームキーを作成する方法を学びます。これらのクレームキーは、バックエンドサービスによって、同じクレームキーが関連付けられたAMSフリートから専用サーバーを特定してクレームするために使用できます。これは、ネームスペース上に複数のAMSフリートがアクティブな場合にも便利です。
-
Admin Portalにログインし、ゲームのネームスペースダッシュボードに移動します。
-
Multiplayer Server Configuration > Fleet Managerに移動し、作成したフリートの名前をクリックします。
-
Fleet Informationセクションの下で、Add Moreボタンをクリックします。このチュートリアルでは、unity-ds-amsという名前の新しいクレームキーを入力する必要があります。
-
これで、バックエンドサービスでunity-ds-amsクレームキーを使用して、ゲームクライアント用の専用サーバーをクレームできます。