翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon GameLift FleetIQ ロジック
次の図は、ゲームホスティングEC2のために Amazon と連携する際の Amazon GameLift FleetIQ の役割を示しています。その主な目的は、ゲームセッションをホストし、プレイヤーに最適なゲームプレイ体験を提供するために最善のゲームサーバーを見つけることです。Amazon GameLift FleetIQ は、最適なリソースを、最も低コストで最高のゲームホスティングの実行可能性を提供するリソースと定義します。Amazon GameLift FleetIQ は、この目標に 2 つの主要な方法でアプローチします。1 つ目は Auto Scaling グループで実行可能なインスタンスタイプのみを許可し、2 つ目はグループの利用可能なリソース全体に新しいゲームセッションを効果的に配置することです。
Auto Scaling グループに最適なインスタンスタイプを設定する
Auto Scaling グループのジョブは、新しいインスタンスを起動して古いインスタンスを使用停止することで、ホスティングリソースのコレクションを維持し、これをプレイヤーの需要に合わせてスケーリングすることです。これを行うには、Auto Scaling グループは目的のインスタンスタイプのリストに依存します。Amazon GameLift FleetIQ のジョブは、これらの必要なインスタンスタイプの実行可能性を継続的に確認し、Auto Scaling グループのリストを更新することです。このプロセスは、インスタンスバランシングと呼ばれています。これにより、Auto Scaling グループ内のインスタンスが継続的に更新され、現在実行可能なインスタンスタイプのみが常に使用されるようになります。
Amazon GameLift FleetIQ は、Auto Scaling グループが次の方法で最適なインスタンスタイプを選択する方法に影響します。
-
[It determines usage of Spot and/or On-Demand Instances].(スポットやオンデマンドインスタンスの利用状況を判断します)。Amazon GameLift FleetIQ ゲームサーバーグループは、Auto Scaling グループがスポットインスタンスやオンデマンドインスタンスを使用する方法に影響を与えるバランシング戦略で設定されています。スポットインスタンスは、可用性の変動と潜在的な中断、Amazon GameLift FleetIQ がゲームサーバーホスティングのために最小限に抑える制限により、コストを削減します。オンデマンドインスタンスのコストは高くなりますが、必要なときにより信頼性の高い可用性を提供します。
-
これにより、新しいインスタンスが実行可能なインスタンスタイプでのみ起動するように制限されます。Amazon GameLift FleetIQ ゲームサーバーグループは、目的のインスタンスタイプのマスターリストを保持します。インスタンスバランシングプロセスは、インスタンスタイプの最近の可用性と中断率を調べる予測アルゴリズムを使用して、ゲームホスティングの実行可能性について、リスト内の目的の各インスタンスタイプを継続的に評価します。この評価の結果、Amazon GameLift FleetIQ は Auto Scaling グループの必要なインスタンスタイプのリストを継続的に更新し、現在実行可能なインスタンスタイプのみを含めます。
-
これは、実行不可能なインスタンスタイプである既存のインスタンスにフラグを付けます。Amazon GameLift FleetIQ は、Auto Scaling グループ内の既存のインスタンスのうち、現在実行不可能なインスタンスタイプを識別します。該当するインスタンスには、[draining]ドレイン中のフラグが付けられます。つまり、このようなインスタンスは終了され、新しいインスタンスに置き換えられます。ゲームサーバーの保護がオンになっているインスタンスの場合、アクティブなゲームセッションが正常に終了するまで終了が延期されます。
Auto Scaling グループは、インスタンスを起動して終了することにより、低コストのスポットインスタンスタイプの可用性が変動しても、ゲーム ホスティング用に最適化されたコレクションを維持します。バランシングアクティビティは、アクティブなインスタンスを持つゲーム サーバーグループでのみ行われます。このプロセスの詳細については、「スポット再調整プロセス」を参照してください。
ゲームセッションを効果的に配置する
Amazon GameLift FleetIQ は、ゲームサーバーグループ内のすべてのアクティブなゲームサーバーを追跡し、この情報を使用して、新しいゲームセッションとプレイヤーに最適な配置を決定します。
Amazon GameLift FleetIQ がゲームサーバーを追跡できるようにするには、ゲームサーバーソフトウェアがそのステータスをレポートする必要があります。カスタムは、各インスタンスで新しいゲームサーバープロセスを起動および停止する方法AMIを制御します。新しいゲームサーバーが開始されると、Amazon GameLift FleetIQ に登録され、ゲームセッションをホストする準備ができていることを示します。登録後、ゲームサーバーは、その状態および現在ゲームセッションをホスティングしているかどうかを定期的にレポートします。ゲームサーバーがシャットダウンすると、Amazon GameLift FleetIQ に登録解除されます。
新しいゲームセッションを開始するには、ゲームクライアント (またはマッチメーカーまたはその他のクライアントサービス) がゲームサーバーのリクエストを Amazon GameLift FleetIQ に送信します。Amazon GameLift FleetIQ は、利用可能なゲームサーバーを見つけ、新しいゲームセッションのためにクレームし、ゲームサーバー ID と接続情報で応答します。これに応じて、ゲームサーバーはそのステータスを更新し、参加プレイヤーの新しいゲームセッションを開始します。
新しいゲームセッションをホストするゲームサーバーを選択する場合、Amazon GameLift FleetIQ は、以下の意思決定プロセスを使用して、実行可能な低コストのスポットインスタンスで配置を最適化します。
-
可能な場合、Amazon GameLift FleetIQ は、他のゲームセッションを既にホストしているインスタンスに新しいゲームセッションを配置します。一部のインスタンスに集中させて (ただし、過負荷にはせず)、他のインスタンスをアイドル状態に保つことで、Auto Scaling グループは不要なアイドル状態のインスタンスを迅速にスケールダウンできるため、ホスティングコストが削減されます。
-
Amazon GameLift FleetIQ は、ドレイン としてフラグが付けられたインスタンス、つまりゲームホスティングでは実行できないインスタンスを無視します。これらのインスタンスは、既存のゲームセッションをサポートするためにだけに実行されています。これらは、他のゲームサーバーが利用できない限り、新しいゲームセッションには使用できません。
-
Amazon GameLift FleetIQ は、実行可能なインスタンスで実行されている利用可能なすべてのゲームサーバーを識別します。
ゲームサーバーグループのゲームセッション保護をオンにすると、アクティブに実行中のゲームセッションで Auto Scaling グループがインスタンスを終了するのを防ぐことができます。