このトピックでは、ローカルディスクを使用する ECS (Elastic Compute Service) インスタンスタイプを指定して弾性コンテナインスタンスを作成し、弾性コンテナインスタンスにローカルディスクを接続する方法について説明します。
ECS インスタンスファミリーの説明
ローカルディスクは、ディスクが接続されている弾性コンテナインスタンスと同じ物理サーバー上にあります。ローカルディスクは費用対効果が高く、高いランダム IOPS、高いスループット、および低レイテンシを提供します。ローカルディスクは単一の物理サーバー上に存在するため、単一障害点 (SPOF) のリスクが高まります。詳細については、ローカルディスク を参照してください。
ローカルディスクは単一の物理サーバー上に存在するため、SPOF のリスクが高まります。ローカルディスクに保存されているデータの耐久性は、関連付けられている物理サーバーの信頼性によって決まります。詳細については、ローカルディスクの制限 を参照してください。
弾性コンテナインスタンスの作成には、ローカルディスクを搭載した以下の ECS インスタンスファミリーを使用できます。
カテゴリ | インスタンスファミリー |
ローカル SSD 搭載インスタンスファミリー | i4、i4g、i3、i3g、i2、および i2g |
ビッグデータインスタンスファミリー | d1 |
ネットワークパフォーマンスが強化されたビッグデータインスタンスファミリー | d1ne |
GPU アクセラレーションされたコンピューティング最適化インスタンスファミリー | gn5 |
gn5 は GPU アクセラレーションされたインスタンスファミリーです。このインスタンスファミリーを選択する場合は、ローカルディスク関連のパラメーターに加えて、GPU 関連のパラメーターを指定する必要があります。
ECS インスタンスファミリーの詳細については、以下のトピックを参照してください。
構成の説明
ローカルディスクを使用する ECS インスタンスタイプを指定して弾性コンテナインスタンスを作成し、弾性コンテナインスタンスにローカルディスクを接続する場合、Elastic Container Instance コンソールを使用する代わりに、API オペレーションを呼び出す必要があります。
CreateContainerGroup API オペレーションを呼び出して弾性コンテナインスタンスを作成する場合、InstanceType パラメーターを使用して ECS インスタンスタイプを指定し、ボリューム関連のパラメーターを使用してローカルディスクを接続できます。次の表に関連パラメーターを示します。詳細については、CreateContainerGroup を参照してください。
ローカルディスクを使用する弾性コンテナインスタンスを作成し、ローカルディスクをボリュームとして指定する
パラメーター
タイプ
例
説明
InstanceType
String
ecs.gn6v-c8g1.2xlarge
ローカルディスクを使用する ECS インスタンスタイプ。弾性コンテナインスタンスの作成には、ローカルディスクを使用する以下の ECS インスタンスファミリーを使用できます: d1、d1ne、i2、i2g、および gn5。
一度に最大 5 つの ECS インスタンスタイプを指定できます。複数のインスタンスタイプはコンマ (,) で区切ります。例: ecs.d1.2xlarge,ecs.d1ne.2xlarge。
Volume.N.Name
String
localdisk
ボリューム N の名前。
Volume.N.Type
String
EmptyDirVolume
ボリューム N のタイプ。EmptyDirVolume の値は、emptyDir ボリュームを指定します。
Volume.N.EmptyDirVolume.Medium
String
LocalRaid0
emptyDir ボリューム N のストレージメディア。LocalRaid0 の値は、ローカルディスクによって形成される RAID 0 を指定します。
弾性コンテナインスタンスに RAID 0 を接続する
パラメーター
タイプ
例
説明
Container.N.VolumeMount.N.Name
String
localdisk
コンテナ N に接続するボリューム N の名前。この値は Volume.N.Name の値と同じです。
Container.N.VolumeMount.N.MountPath
String
/localdisk-test
ボリュームが接続されているディレクトリ。
このディレクトリのデータは、ボリューム上のデータによって上書きされます。この値が正しいことを確認してください。
構成例:
ローカルディスクを使用する弾性コンテナインスタンスを作成します。
次のコードは、ローカルディスクを使用する弾性コンテナインスタンスを作成するために CreateContainerGroup API オペレーションを呼び出すときに指定する必要があるパラメーターの例を示しています。
ContainerGroupName=test-localdisk # ローカルディスクを使用する ECS インスタンスタイプを指定します。 InstanceType=ecs.i2g.2xlarge # ローカルディスクによって形成される RAID 0 ボリュームを指定します。 Volume.1.Name=localdisk Volume.1.Type=EmptyDirVolume Volume.1.EmptyDirVolume.Medium=LocalRaid0 # コンテナに RAID 0 ボリュームを接続します。 Container.1.Name=nginx Container.1.Image=registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:1.14.2 Container.1.VolumeMount.1.Name=localdisk Container.1.VolumeMount.1.MountPath=/localdisk-test
接続された RAID 0 を確認します。
弾性コンテナインスタンスに接続します。
df -h
コマンドを実行して、接続された RAID 0 に関する情報を表示します。ローカルディスクは RAID 0 (/dev/md0
) に形成され、RAID 0 は指定された/localdisk-test
ディレクトリに接続されます。