Amazon ECS での Amazon EBS ボリュームの使用 - Amazon Elastic Container Service

Amazon ECS での Amazon EBS ボリュームの使用

Amazon Elastic Block Store (Amazon EBS) ボリュームは、可用性、費用対効果と耐久性に優れた、データ集約型ワークロード向けの高性能ブロックストレージです。Amazon EBS ボリュームは、高スループットなトランザクション集約型アプリケーションの Amazon ECS タスクに使用できます。

スタンドアロンタスクの起動時に、1 つの EBS ボリュームをタスクにアタッチする設定を提供できます。サービスの作成または更新時に、ECS サービスが管理する各タスクについて、タスクごとに 1 つの EBS ボリュームをアタッチする設定を提供できます。

タスク定義ではなく起動時にボリューム設定を提供することで、特定のデータボリュームタイプや特定の EBS ボリューム設定に制限されないタスク定義を作成できます。その後、作成したタスク定義をさまざまなランタイム環境で再利用できます。たとえば、本番環境向けワークロードのデプロイ時に、本番前のテスト環境よりも高いスループットを提供できます。

Amazon ECS タスクにアタッチされた Amazon EBS ボリュームは、お客様に代わって Amazon ECS で管理します。データ保護のため、ボリュームは AWS Key Management Service (AWS KMS) キーで暗号化できます。新しい空のボリュームを設定してアタッチすることもできるし、あるいはスナップショットを使用して既存のボリュームからデータをロードすることもできます。

ボリュームのパフォーマンスのモニタリングには、Amazon CloudWatch メトリクスを使用できます。Amazon EBS ボリューム向け Amazon ECS メトリクスの詳細については、「Amazon ECS CloudWatch メトリクス 」および「Amazon ECS Container Insights メトリクス」を参照してください。

Amazon EBS ボリュームのその他の詳細については、「Amazon EBS ユーザーガイド」の「Amazon EBS ボリューム」を参照してください。

Amazon EBS ボリューム向け AWS リージョン および アベイラビリティーゾーン

Amazon EBS ボリュームは、以下の AWS リージョンにおいて Amazon ECS タスクにアタッチできます。

リージョン名 リージョンコード

米国東部 (バージニア北部)

us-east-1

米国東部 (オハイオ)

us-east-2

米国西部 (北カリフォルニア)

us-west-1

米国西部 (オレゴン)

us-west-2

アフリカ (ケープタウン)

af-south-1

アジアパシフィック (香港)

ap-east-1

アジアパシフィック (ハイデラバード)

ap-south-2

アジアパシフィック (ジャカルタ)

ap-southeast-3

アジアパシフィック (メルボルン)

ap-southeast-4

アジアパシフィック (ムンバイ)

ap-south-1

アジアパシフィック (大阪)

ap-northeast-3

アジアパシフィック (ソウル)

ap-northeast-2

アジアパシフィック (シンガポール)

ap-southeast-1

アジアパシフィック (シドニー)

ap-southeast-2

アジアパシフィック (東京)

ap-northeast-1

カナダ (中部)

ca-central-1

欧州 (フランクフルト)

eu-central-1

欧州 (アイルランド)

eu-west-1

欧州 (ロンドン)

eu-west-2

ヨーロッパ (ミラノ)

eu-south-1

欧州 (パリ)

eu-west-3

欧州 (スペイン)

eu-south-2

欧州 (ストックホルム)

eu-north-1

欧州 (チューリッヒ)

eu-central-2

イスラエル (テルアビブ)

il-central-1

中東 (バーレーン)

me-south-1

中東 (アラブ首長国連邦)

me-central-1

南米 (サンパウロ)

sa-east-1
重要

Amazon EBS ボリュームは、euc1-az2 および use1-az3 のアベイラビリティーゾーン内の Fargate Amazon ECS タスクにアタッチするようには設定できません。

考慮事項

Amazon EBS ボリュームを使用する場合には、以下の点を考慮してください。

  • Amazon EBS ボリュームは、Fargate でホストされる Linux タスクと、Amazon ECS に最適化された Amazon マシンイメージ (AMI) を使用する Nitro ベースの Linux インスタンスでホストされる EC2 起動タイプのタスクでのみサポートされています。インスタンスタイプの詳細については、「Amazon EC2 ユーザーガイド」の「インスタンスタイプ」を参照してください。Amazon ECS 起動タイプの詳細については、「Amazon ECS 起動タイプ」を参照してください。

  • Fargate でホストされるタスクの場合、プラットフォームバージョン 1.4.0 以降 (Linux) で Amazon EBS ボリュームがサポートされます。詳細については、「Amazon ECS 向け Fargate Linux プラットフォームのバージョン」を参照してください。

  • Amazon EC2 Linux インスタンスでホストされるタスクの場合、Amazon EBS ボリュームは ECS 最適化 AMI 20231219 以降でサポートされます。詳細については、「Amazon ECS に最適化された AMI メタデータを取得する」を参照してください。

  • マグネティックタイプ (standard) の Amazon EBS ボリュームは、Fargate でホストされるタスクではサポートされていません。Amazon EBS ボリュームタイプの詳細については、「Amazon EC2 ユーザーガイド」の「Amazon EBS ボリューム」を参照してください。

  • Amazon ECS インフラストラクチャ IAM ロールは、デプロイ時にボリュームを設定するサービスまたはスタンドアロンタスクを作成するときに必要です。AWS マネージド型 AmazonECSInfrastructureRolePolicyForVolumes IAM ポリシーをロールにアタッチしてもよいし、あるいはマネージド型ポリシーをガイドとして使用して、所定のニーズを満たすアクセス許可を持つ独自のポリシーを作成してアタッチすることもできます。詳細については、「Amazon ECS インフラストラクチャ IAM ロール」を参照してください。

  • 各 Amazon ECS タスクには最大 1 つの Amazon EBS ボリュームをアタッチできますが、新しいボリュームである必要があります。既存の Amazon EBS ボリュームをタスクにアタッチすることはできません。ただし、既存のボリュームのスナップショットを使用してデプロイ時に新しい Amazon EBS ボリュームを設定することはできます。

  • デプロイ時に Amazon EBS ボリュームを設定できるのは、ローリングアップデートデプロイタイプとレプリカスケジュール戦略を使用するサービスのみです。

  • マウントした Amazon EBS ボリュームにタスク内のコンテナから書き込みを行うには、コンテナをルートユーザーとして実行する必要があります。

  • Amazon ECS は、アタッチされたボリュームにリザーブドタグ AmazonECSCreated および AmazonECSManaged を自動で追加します。これらのタグをボリュームから削除すると、Amazon ECS がユーザーに代わってボリュームを管理できなくなりますので注意してください。Amazon EBS ボリュームのタグ付けの詳細については、「Amazon EBS ボリュームのタグ付け」を参照してください。Amazon ECS リソースへのタグ付けの詳細については、「Amazon ECS リソースのタグ付け」を参照してください。

  • パーティションを含む Amazon EBS ボリュームのスナップショットからのボリュームのプロビジョニングはサポートされていません。

  • サービスによって管理されるタスクにアタッチされたボリュームは保存されず、タスクが終了すると必ず削除されます。

  • AWS Outposts で実行される Amazon ECS タスクにアタッチするように Amazon EBS ボリュームを設定することはできません。