Amazon GameLift Servers を使用した本番環境でのゲームホスティングの管理 - Amazon GameLift Servers

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon GameLift Servers を使用した本番環境でのゲームホスティングの管理

Amazon GameLift Servers でゲームを起動したら、最適なパフォーマンス、信頼性、プレイヤーエクスペリエンスを確保するために、ゲームホスティングインフラストラクチャを管理する必要があります。このトピックでは、本番環境でゲームホスティングのライフサイクルを管理するための主要な機能とツールについて説明します。

ホスティングのヘルスとパフォーマンスのモニタリング

Amazon GameLift Servers には、ゲームホスティングインフラストラクチャの状態とパフォーマンスを追跡するのに役立つ包括的なモニタリングツールが用意されています。

  • パフォーマンスメトリクス – インスタンス使用率、プレイヤーセッション、ゲームセッション配置など、マネージドフリートの主要なパフォーマンス指標をモニタリングします。これらのメトリクスを Amazon GameLift Servers または Amazon CloudWatch で追跡します。ここでは、メトリクスがしきい値を超えたときに通知を受け取るようにアラームを設定することもできます。

  • フリートメトリクスとイベント – アクティブなサーバープロセス、利用可能なゲームセッション、アクティブなプレイヤーセッションなどのフリート固有のメトリクスを追跡して、最適な容量を確保します。

  • ゲームセッション配置メトリクスとイベント – メトリクスとイベントを追跡して、ゲームセッション配置システムの状態とパフォーマンスをモニタリングします。

  • ゲームセッションログ - ゲームセッションログにアクセスして分析し、問題を特定し、プレイヤーの動作パターンを理解します。

  • Realtime スクリプトログ - リアルタイムサーバーを使用するゲームの場合、詳細なログを使用してスクリプトの実行とパフォーマンスをモニタリングします。

  • AWS ヘルスダッシュボード - Amazon GameLift Serversデプロイに影響する可能性のある AWS サービスのヘルス状態について常に把握します。

これらのモニタリングツールには、Amazon GameLift Serversコンソール、 AWS CLI、または AWS SDK for Amazon GameLift Servers を使用してカスタムダッシュボードとモニタリングソリューションを作成できます。

ゲームサーバーの更新とパッチの管理

ゲームサーバーを最新の状態に保つことは、セキュリティ、パフォーマンス、新機能の追加に不可欠です。Amazon GameLift Servers には、更新を管理するためのいくつかのアプローチが用意されています。

  • ビルド管理 - ゲームサーバービルドの複数のバージョンをアップロードおよび管理します。各ビルドはバージョニングされ、異なるフリートにデプロイできます。

  • フリートの置き換え - AMI バージョンとゲームサーバービルドの更新を使用して新しいフリートを作成し、ゲームセッション配置キューとエイリアスを使用して古いフリートから新しいフリートにトラフィックを徐々に移行します。

  • スクリプトの更新 - リアルタイムサーバーの場合は、新しいスクリプトバージョンをアップロードして、フリート全体を置き換えずにサーバースクリプトを更新します。

  • コンテナの更新 - コンテナベースのデプロイでは、コンテナイメージと定義を更新します。ゲームサーバーの新しいバージョンを既存のフリートにデプロイします。フリートを置き換えて AMI バージョンを更新します。

  • 自動デプロイ - AWS CodePipeline と AWS CodeDeploy を使用して、自動ゲームサーバー更新用の CI/CD パイプラインを作成します。

更新を計画するときは、ブルー/グリーンデプロイ戦略を使用してアクティブなプレイヤーの中断を最小限に抑え、問題が検出された場合は迅速なロールバックを可能にすることを検討してください。

パフォーマンスとスケーリングの最適化

プレイヤーベースが進化するにつれて、最適なパフォーマンスとコスト効率を維持するためにホスティング設定を調整する必要があります。

  • 自動スケーリング - プレイヤー数やゲームセッション使用率などのメトリクスに基づいてフリートスケーリングポリシーを設定し、容量を自動的に調整します。

  • リージョンデプロイの調整 - プレイヤーの属性とレイテンシー要件に基づいて、マルチリージョンデプロイからリージョンを追加または削除します。

  • キュー管理 - ゲームセッション配置キュー設定を最適化して、プレイヤーエクスペリエンスとホスティングコストのバランスを取ります。

  • インスタンスタイプの選択 - パフォーマンスメトリクスを分析して、ゲームサーバーの要件に最も費用対効果の高いインスタンスタイプを決定します。

  • スポットインスタンスの使用 - 重要ではないワークロードのスポットインスタンスを活用してコストを削減し、オンデマンドインスタンスに適切なフォールバック戦略を適用します。

  • FlexMatch チューニング - 実際のプレイヤーデータとフィードバックに基づいてマッチメーキングルールとアルゴリズムを調整します。

CloudWatch メトリクスとコストレポートを定期的に確認し、最適化の機会を特定し、Amazon GameLift Servers コンソールまたは API を使用して変更を実装します。

トラブルシューティングとライブオペレーション

効果的なトラブルシューティングとライブオペレーション管理は、ポジティブなプレイヤーエクスペリエンスを維持するために不可欠です。

  • フリートイベント通知 - スケーリングアクティビティ、インスタンスの終了、ゲームセッション配置の失敗などのフリートイベントに対して Amazon Simple Notification Service 通知を設定します。

  • ゲームセッション配置のデバッグ - 詳細な配置ログを使用して、ゲームセッション配置の問題を特定して解決します。

  • サーバープロセスのヘルスチェック - サーバープロセスのヘルスをモニタリングし、ヘルスチェックに失敗したプロセスを自動的に置き換えます。

  • リモートアクセス - フリートインスタンスに接続し、 AWS Systems Manager Session Managerを使用して直接トラブルシューティングを行います。

  • エイリアス管理 - エイリアスを使用して、クライアント設定を変更することなく、問題のあるフリートからプレイヤートラフィックをすばやくリダイレクトします。

  • バックアップと復旧 - 重要なゲームデータと設定の定期的なバックアップを実装して、障害からの迅速な復旧を可能にします。

一般的な問題の明確なインシデント対応手順とランブックを確立し、ダウンタイムとプレイヤーへの影響を最小限に抑えます。

ツールと統合

Amazon GameLift Servers は、さまざまな AWS サービスやサードパーティーのツールと統合して、本稼働管理機能を強化します。

  • AWS CloudFormation - GameLift リソースを、一貫したデプロイのためのコードとしてのインフラストラクチャとして定義および管理します。

  • AWS Lambda - サーバーレス関数を作成して、日常的な管理タスクを自動化し、イベントに対応します。

  • Amazon EventBridge - Amazon GameLift Servers 環境の変化に自動的に対応するイベント駆動型アーキテクチャを構築します。

  • AWS SDK 統合 - AWS SDKs を使用して、特定のニーズに合わせてカスタマイズされたカスタム管理ツールとダッシュボードを構築します。

  • サードパーティーのモニタリング - CloudWatch メトリクスのエクスポートを使用して、サードパーティーのモニタリングおよび分析プラットフォームと統合します。

これらの統合を活用して、チームのワークフローと要件に合った包括的な管理ソリューションを作成します。

関連リソース