翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon コンテナフリートの GameLift コンテナグループ定義を作成する
このドキュメントは、パブリックプレビューリリースの機能を対象としています。このドキュメントは変更される可能性があります。
コンテナグループ定義は、コンテナ化されたゲームサーバーアプリケーションをコンテナフリートにデプロイする方法を説明します。これは、フリートで実行するコンテナのセットとその実行方法を識別する設計図です。コンテナフリートを作成するときは、フリートにデプロイするコンテナグループ定義を指定します。コンテナグループの詳細については、「」を参照してくださいコンテナフリートのコンポーネント。
開始する前に
以下のタスクを実行します。
-
ゲームサーバーをホストするためのコンテナアーキテクチャを設計します。Amazon GameLift コンテナフリートの設計 を参照してください。
-
コンテナグループに含めるコンテナ定義を計画します。 AWS CLI を使用している場合は、JSON ファイルにコンテナ定義を作成します。
-
最終的なコンテナイメージを、コンテナグループを作成する予定と同じ AWS リージョン の Amazon Elastic Container Registry (Amazon ECR) レジストリにプッシュします。Amazon は、コンテナグループ定義の作成時に各イメージのスナップショット GameLift を保存し、コンテナフリートにデプロイするときにコピーを使用します。ゲームサーバーソフトウェアでコンテナイメージを準備する を参照してください。
-
AWS ユーザーが Amazon ECR リポジトリにアクセスするための IAM アクセス許可を持っていることを確認します。Amazon のユーザーアクセス許可を管理する GameLift を参照してください。少なくとも、次のアクションに対するアクセス許可が必要です。
ecr:DescribeImages
ecr:BatchGetImage
ecr:GetDownloadUrlForLayer
コンテナグループ定義のクローンを作成する
Amazon GameLift コンソールを使用して、既存のコンテナグループ定義のクローンを作成できます。
コンテナグループのクローンを作成するには
-
Amazon GameLift コンソール
で、左側のナビゲーションペインに移動し、コンテナグループ を選択します。 コンテナグループリストページで、クローンを作成する既存のコンテナグループを選択します。コンテナグループを選択すると、クローンボタンがアクティブになります。
[クローンを作成] を選択します。このアクションにより、コンテナグループ作成ウィザードが開き、設定が事前に入力されています。
クローンされたコンテナグループの新しい名前を入力します。同じリージョンのコンテナグループには一意の名前が必要です。
コンテナグループとコンテナ定義ページをステップスルーし、新しいコンテナグループを確認して作成します。
レプリカコンテナグループ定義を作成する
レプリカコンテナグループは、ゲームサーバーソフトウェアを管理します。レプリカコンテナグループには、Amazon GameLift Agent とゲームサーバープロセスを実行するコンテナが少なくとも 1 つあります。グループには、サポートソフトウェアを実行するための追加の「サイドカー」コンテナがある場合があります。
このトピックでは、Amazon GameLift コンソールまたは AWS CLI ツールを使用してコンテナグループ定義を作成する方法について説明します。コンテナグループ設定の詳細については、「」を参照してくださいAmazon GameLift コンテナフリートの設計。
コンテナ定義JSON
ファイルを作成する
コンテナグループ定義を作成するときは、グループのコンテナも定義します。コンテナ定義は、コンテナイメージが保存されている Amazon ECR リポジトリ、ネットワークポートのオプション設定、CPU とメモリの使用量の制限、およびその他の設定を指定します。コンテナグループ内のすべてのコンテナの設定を含む単一のJSON
ファイルを作成することをお勧めします。ファイルのメンテナンスは、これらの重要な設定の保存、共有、バージョン追跡に役立ちます。 AWS CLI を使用してコンテナグループ定義を作成する場合は、 コマンドで ファイルを参照できます。
コンテナ定義を作成するには
新しい
.JSON
ファイルを作成して開きます。例:[~/work/glc]$
vim SimpleServer.jsonグループのコンテナごとに個別のコンテナ定義を作成します。次のサンプルコンテンツをコピーし、コンテナの必要に応じて変更します。コンテナ定義の構文の詳細については、「Amazon GameLift API リファレンスContainerDefinitionInput」の「」を参照してください。
AWS CLI コマンドで参照できるように、ファイルをローカルに保存します。
この例では、レプリカコンテナグループの必須コンテナについて説明します。必須のレプリカコンテナには、ゲームサーバーアプリケーション、Amazon GameLift エージェントが含まれ、ゲームホスティング用の他のサポートソフトウェアを含めることができます。定義には、名前、イメージ URI、およびポート設定を含める必要があります。この例では、コンテナ固有のリソース制限も設定しています。
[ { "ContainerName": "SimpleServer", "ImageUri": "111122223333.dkr.ecr.us-east-1.amazonaws.com/gl-containers:complex-server", "Essential": true, "Cpu": 256, "MemoryLimits": { "HardLimit": 128 }, "PortConfiguration": { "ContainerPortRanges": [ { "FromPort": 2000, "Protocol": "TCP", "ToPort": 2100 } ] } } ]