マネージドフリートのコンピューティングリソースを選択する
Amazon GameLift Servers マネージド EC2 やマネージドコンテナを含むマネージドホスティングの場合、サービスはゲームサーバーを AWS クラウド のコンピューティングリソースのフリートにデプロイします。マネージドフリートを作成する場合は、ゲームに最適なホスティングリソースを設定する必要があります。このトピックでは、ゲームホスティングフリートを選択および設定する際の重要な決定ポイントについて説明します。
注記
Anywhere フリートと Amazon GameLift Servers マネージドフリートの両方を使用してハイブリッドソリューションを構築する場合は、これらのトピックを参照して、セルフマネージドリソースを補完するための マネージドフリートを設計してください。「Amazon GameLift Servers のホスティングフリートをデプロイする」を参照してください。
地理的場所
ゲームサーバーをデプロイする予定の場所を検討してください。一般的に、可能な限り最高のプレイヤーエクスペリエンスを提供するために、ゲームサーバーをプレイヤーにできるだけ近づけたいと考えています。Amazon GameLift Servers マネージドホスティングでは、サポートされている任意の AWS リージョン および Local Zones にゲームサーバーを配置することを選択できます。ハイブリッドソリューションを構築する場合は、マネージドフリートのデプロイがセルフマネージド Amazon GameLift Servers Anywhere フリートの場所を補完する方法を検討してください。
ほとんどの開発およびテストシナリオでは、単一の場所にデプロイするのが理にかなっています。起動以降に備えると、複数の地理的な場所にデプロイする理由は多数あります。これには、幅広いプレイヤーグループをサポートし、ゲームホスティングの全体的な耐障害性と信頼性を向上させることが含まれます。複数のロケーションでは、ゲームセッションの配置を高速化し、レイテンシーとコストに合わせて配置を最適化するときにより多くの選択を可能にすることで、プレイヤーのエクスペリエンスを向上させることもできます。
Amazon GameLift Servers でサポートされているロケーションのリストと、すべてのフリートタイプのロケーションの詳細については、「Amazon GameLift Servers サービスロケーション」を参照してください。
マルチロケーションフリート
1 つのマネージドフリートで、複数の場所にリソースをデプロイできます。マルチロケーションフリート内の個々のロケーションに容量を手動で設定できます。
マルチロケーションフリートを使用する利点:
-
フリートのデプロイと管理の簡素化 - ゲームサーバーソフトウェアとフリート設定を提供し、Amazon GameLift Servers が複数のロケーション (一度構築、任意の場所にデプロイ) のフリートインスタンスにデプロイします。本番フリートでは、各ロケーションが異なるリージョンにある複数のフリートを個別に管理する必要はなく、フリート内のすべてのロケーションを一覧表示して管理できます。
-
ローカルゾーンの利用 - ローカルゾーンを使用する場合は、AWS リージョンホームロケーションとローカルゾーンをリモートロケーションとするマルチロケーションフリートを作成する必要があります。Local Zones は、AWS リージョン の拡張機能であり、レイテンシーを必要とする地域や顧客に対して、さらに低レイテンシーを提供できます。ローカルゾーンは任意のマルチロケーションフリートに追加できます。ローカルゾーンの親 AWS リージョン を含める必要はありません。
-
ゲームセッションキューとの互換性 - 1 つ以上のマルチロケーションフリートを使用してゲームセッションプレイスメントキューを構築できます。このアプローチにより、新しいゲームセッションをホストする場所を優先して選択する際のキューの柔軟性が得られます。
-
効率的なリソース使用率 - 自動スケーリングを有効にすると、Amazon GameLift Servers はフリート内のすべてのロケーションで容量スケーリングをより適切に最適化できます。
マルチロケーションフリートを使用するためのヒント:
-
AWS リージョン または フリートあたりのロケーション数のクォータを確認します。「Amazon GameLift Servers サービスのクオータ」を参照してください。
-
ロケーションによっては使用できないインスタンスタイプがあります。選択した場所によっては、インスタンスタイプのオプションが限られている場合があります。Amazon GameLift Servers コンソールには、場所とインスタンスタイプの適切なバランスを見つけるのに役立つ便利なツールが用意されています。
-
UDP ping ビーコン を使用してすべてのフリートロケーションのプレイヤーレイテンシーデータを収集することを検討してください。Amazon GameLift Servers はこのデータを使用して、低レイテンシーのゲームセッションを最適化し、許容できないほど高いレイテンシーでプレイヤーがセッションに参加できないようにします。これらの特別なエンドポイントは、従来の ICMP ping の代わりに UDP メッセージを受け入れるため、正確なレイテンシー測定が可能になり、最適なフリートロケーションの選択に役立ちます。
オペレーティングシステム
マネージドフリート内のすべてのインスタンスは、ゲームサーバーソフトウェアの完全なランタイム環境を提供する Amazon マシンイメージ (AMI) でデプロイされます。マネージド EC2 フリートの場合、ビルドを Amazon GameLift Servers にアップロードするときにゲームサーバービルドのオペレーティングシステムを指定します。マネージドコンテナフリートの場合は、コンテナグループ定義でオペレーティングシステムを指定します。AMI のバージョンの詳細については、Amazon GameLift Servers AMI バージョン を参照してください。
AMI バージョンは定期的に更新されます。新しいフリートを作成すると、Amazon GameLift Servers はゲームビルド用に選択した AMI の最新バージョンを割り当てます。そのフリートにデプロイされているすべてのインスタンスは、同じバージョンを使用します。AMI バージョンを最新のセキュリティおよびソフトウェア更新で最新の状態に保つには、フリートを定期的に置き換える必要があります。ベストプラクティスとして、マネージドフリートのランタイム環境を最新に保つため、30日ごとにフリートを更新することをお勧めします。ガイダンスについては、「Amazon GameLift Servers のセキュリティに関するベストプラクティス」を参照してください。
インスタンスのタイプ
マネージドフリートのインスタンスタイプは、すべてのフリートインスタンスにデプロイされるハードウェアの種類を決定し、インスタンスタイプは一般的にさまざまなサイズで利用できます。すべての Amazon GameLift Servers マネージドフリートは Amazon EC2 インスタンスを使用し、コンピューティング能力、メモリ、ストレージ、ネットワーク機能のさまざまな組み合わせを提供する幅広いインスタンスタイプをサポートします。インスタンスタイプの利用可否は、選択するロケーションによって異なります。
Amazon GameLift Servers コンソールには、ゲームビルドおよびデプロイ場所に適したインスタンスタイプを選択するのに役立つ便利なツールが用意されています。マネージドコンテナフリートの場合、コンソールはゲームの CPU 電源とメモリの要件に関するガイダンスも提供します。
ゲームに対して使用可能なインスタンスタイプから選択するときは、次の要素を考慮してください。
-
ゲームサーバーのコンピューティングアーキテクチャ: x64 または Arm (AWSGraviton)。
注記
Graviton Arm インスタンスには、Linux AMI 用のサーバービルドが必要です。C++ と C# には、サーバー SDK 5.1.1 以降が必要です。Go にはサーバー SDK 5.0 以降が必要です。これらのインスタンスでは、Amazon Linux 2023 (AL2023) および Amazon Linux 2 (AL2)での Mono インストールは標準ではサポートされません。
-
ゲームサーバービルドのコンピューティング、メモリ、およびストレージ要件。
-
インスタンスタイプのサイズ。ゲームサーバーソフトウェア実行可能ファイルの要件を満たすだけでなく、より大きなインスタンスタイプでは、各インスタンスで複数のゲームサーバープロセスやコンテナを実行できます。検討すべき要素にはコストが含まれます (大きなインスタンスを少数実行する方が安いのか、小さなインスタンスを多数実行する方が安いのか) 。フリートスケーリングイベントの間や異常のあるインスタンスをシャットダウンする際に、インスタンスを追加または削除すると、全体のゲームホスティング容量に大きく影響する可能性があります。各インスタンスが多数のゲームサーバープロセスを同時に実行する場合、インスタンスを追加または削除すると、同じホスティング容量に大きな影響を与える可能性があります。
インスタンスタイプの詳細については、「Amazon EC2 インスタンスタイプ
オンデマンドインスタンスとスポットインスタンスの比較
Amazon EC2 オンデマンドインスタンスとスポットインスタンスは同じハードウェアとパフォーマンスを提供しますが、可用性とコストは異なります。
オンデマンドインスタンス
オンデマンドインスタンスは必要なときに取得し、必要な期間維持しておくことができます。オンデマンドインスタンスは従量課金制で、使用した時間分だけ料金が発生します。長期契約の必要はありません。
スポットインスタンス
スポットインスタンスは、使用されていない AWS のコンピューティングキャパシティを利用することで、オンデマンドインスタンスに代わる非常にコスト効率の高い方法を提供できます。Spot インスタンスの価格は、各ロケーションにおけるインスタンスタイプの需給状況によって変動します。AWS はキャパシティを回収する必要がある場合、2 分前の通知とともにスポットインスタンスを再取得することがあり、再取得されたインスタンス上で実行中のゲームセッションは中断されます。
Amazon GameLift Servers には、ゲームセッションのスポット中断の可能性を軽減するのに役立つツールがいくつか用意されています。スポットバイアビリティアルゴリズムは、インスタンスタイプの履歴データを追跡して、中断のリスクが重要なポイントに達するタイミングを予測し、そのタイプのスポットインスタンスに新しいゲームセッションを配置しないようにします。中断が発生した場合、ゲームサーバーは通知を使用してプレイヤーのゲームセッションを適切に終了できます。
スポットフリートによるゲームホスティングでは、ゲームセッションの配置にキューを使用する必要があります。キューは、スポットフリートの実行可能性、コスト、その他の要因に基づいてゲームセッション配置に優先順位を付けることができます。ゲームサーバーホスティングでスポットを利用する方法の詳細については、以下のトピックを参照してください。
Service Quotas
次のツールを使用して、Amazon GameLift Servers のデフォルトのサービスクォータと、AWS アカウント の現在のクォータステータスを確認できます。
-
Amazon GameLift Servers に関する一般的なサービスクォータ情報については、AWS 全般のリファレンス の「Amazon GameLift Servers エンドポイントおよびクォータ」を参照してください。
-
アカウントのロケーションごとに利用可能なインスタンスタイプのリストについては、Amazon GameLift Servers コンソールの [Service Quotas]
ページを開いてください。このページには、各ロケーションの各インスタンスタイプに関するアカウントの現在の使用状況も表示されます。 -
リージョンごとのインスタンスタイプに対するアカウントの現在のクォータのリストを表示するには、AWS Command Line Interface (AWS CLI) コマンド
describe-ec2-instance-limitsを実行します。このコマンドは、デフォルトリージョン (または指定した別のリージョン) にあるアクティブなインスタンスの数を返します。
ゲームをローンチする準備をするときに、[Amazon GameLift Servers コンソール]