EC2 インスタンスにインスタンスストアボリュームを追加する
NVMe インスタンスストアボリュームを使用するインスタンスタイプでは、サポートされているすべてのインスタンスストアボリュームが、起動時に自動的にインスタンスにアタッチされます。NVMe インスタンスストアボリュームは、インスタンスの起動時に自動的に列挙され、デバイス名が割り当てられます。
C1、C3、M1、M2、M3、R3、D2、H1、I2、X1、X1e など、NVMe 以外のインスタンスストアボリュームのインスタンスタイプでは、起動時にアタッチするインスタンスストアボリュームのブロックデバイスマッピングを手動で指定する必要があります。ブロックデバイスマッピングは、インスタンス起動リクエストで、またはインスタンスの起動に使用される AMI で指定できます。ブロックデバイスマッピングには、デバイス名とそれがマッピングされたボリュームが含まれます。詳細については、「ブロックデバイスマッピング」を参照してください。
重要
インスタンスを起動する場合にのみ、インスタンスストアボリュームをインスタンスにアタッチできます。また、起動後のインスタンスにインスタンスストアボリュームをアタッチすることはできません。
インスタンスを起動したら、使用する前に、インスタンスのインスタンスストアボリュームがフォーマットされ、マウントされていることを確認する必要があります。instance store-backed インスタンスのルートボリュームは自動的にマウントされます。
ルートボリュームに関する考慮事項
ブロックデバイスマッピングでは、常にインスタンスのルートボリュームを指定します。ルートボリュームは、Amazon EBS ボリュームまたはインスタンスストアボリュームのいずれかです。ルートボリュームは自動的にマウントされます。ルートボリュームのインスタンスストアボリュームを持つインスタンスの場合、このボリュームのサイズは AMI によって異なりますが、最大サイズは 10 GB です。詳細については、「ルートデバイスのストレージ」を参照してください。
AMI へのインスタンスストアボリュームの追加
インスタンスストアボリュームが含まれる、ブロックデバイスマッピングを持つ AMI を作成できます。
インスタンスストアボリュームブロックデバイスマッピングを指定する AMI を使用して、非 NVMe のインスタンスストアボリュームをサポートするインスタンスを起動すると、インスタンスにインスタンスストアボリュームが含まれます。AMI のインスタンスストアボリュームブロックデバイスマッピングの数がインスタンスに利用できるインスタンスストアボリュームの数を超えた場合、追加のインスタンスストアボリュームブロックデバイスマッピングは無視されます。
インスタンスストアボリュームブロックデバイスマッピングを指定する AMI を使用して、NVMe インスタンスストアボリュームをサポートするインスタンスを起動した場合、インスタンスストアボリュームブロックデバイスマッピングは無視されます。NVMe インスタンスストアボリュームをサポートするインスタンスは、インスタンス起動リクエストと AMI で指定されたブロックデバイスマッピングに関らず、サポートされているすべてのインスタンスストアボリュームを取得します。
考慮事項
-
M3 インスタンスの場合は、AMI ではなく、インスタンスのブロックデバイスマッピングにあるインスタンスストアボリュームを指定します。Amazon EC2 は、AMI のインスタンスストアボリュームブロックデバイスマッピングを無視することがあります。
-
インスタンスを起動する際に、AMI ブロックデバイスマッピングで指定された 非 NVMe インスタンスストアボリュームを省略したり、インスタンスストアボリュームを追加したりできます。
インスタンスに非 NVMe インスタンスストアボリュームを追加する
非 NVMe インスタンスストアボリュームをサポートするインスタンスを起動するときは、アタッチするインスタンスストアボリュームのブロックデバイスマッピングを指定する必要があります。ブロックデバイスマッピングは、インスタンス起動リクエストで、またはインスタンスの起動に使用される AMI で指定する必要があります。
AMI にインスタンスストアボリュームのブロックデバイスマッピングが含まれている場合、AMI に含まれるよりも多くのインスタンスストアボリュームが必要でない限り、インスタンス起動リクエストでブロックデバイスマッピングを指定する必要はありません。
AMI にインスタンスストアボリュームのブロックデバイスマッピングが含まれていない場合は、インスタンス起動リクエストでブロックデバイスマッピングを指定する必要があります。
考慮事項
-
M3 インスタンスの場合は、インスタンスのブロックデバイスマッピングで指定しなくても、インスタンスストアボリュームを受け取る可能性があります。
インスタンス起動リクエストでブロックデバイスマッピングを指定するには、次のいずれかの方法を使用します。
インスタンスでインスタンスストアボリュームを使用できるようにする
インスタンスストアボリュームが接続しているインスタンスを起動したら、アクセスする前にボリュームをマウントする必要があります。
Linux インスタンスでは、多くのインスタンスストアボリュームは ext3 ファイルシステムで事前にフォーマットされています。TRIM コマンドをサポートする SSD ベースのインスタンスストアボリュームは、ファイルシステムを使用して事前にフォーマットされていません。ただし、インスタンスを起動してから、選択したファイルシステムでボリュームをフォーマットすることもできます。詳細については、「インスタンスストアボリュームの TRIM のサポート」を参照してください。Windows インスタンスでは、NTFS ファイルシステムでインスタンスストアボリュームをフォーマットします。
インスタンスストアデバイスが使用できるかどうかは、インスタンスメタデータを使用してインスタンスの内部から確認できます。詳細については、インスタンスストアボリュームのインスタンスブロックデバイスマッピングの表示を参照してください。
Linux インスタンスの場合、次の手順で説明されているように、インスタンスストアボリュームを表示してマウントできます。
Linux でインスタンスストアボリュームを使用できるようにするには
-
SSH クライアントを使用してインスタンスに接続します。詳細については、「Linux インスタンスへの接続」を参照してください。
-
df -h
コマンドを使用して、フォーマットおよびマウントされたボリュームを表示します。$
df -h
Filesystem Size Used Avail Use% Mounted on devtmpfs 3.8G 72K 3.8G 1% /dev tmpfs 3.8G 0 3.8G 0% /dev/shm /dev/nvme0n1p1 7.9G 1.2G 6.6G 15% / lsblk
を使用して、起動時にマッピングされたが、フォーマットおよびマウントされていないボリュームを表示します。$
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme0n1 259:1 0 8G 0 disk ├─nvme0n1p1 259:2 0 8G 0 part / └─nvme0n1p128 259:3 0 1M 0 part nvme1n1 259:0 0 69.9G 0 disk-
マッピングされたのみのインスタンスストアボリュームをフォーマットしてマウントするには、以下の作業を行います。
-
mkfs
コマンドを使用してデバイスでファイルシステムを作成します。$
sudo mkfs -t xfs
/dev/nvme1n1
-
mkdir
コマンドを使用してデバイスをマウントするディレクトリを作成します。$
sudo mkdir
/data
-
mount
コマンドを使用して、新しく作成されたディレクトリにデバイスをマウントします。$
sudo mount
/dev/nvme1n1 /data
-
再起動後にアタッチされたボリュームを自動的にマウントする方法については、「Amazon EBS ユーザーガイド」の「再起動後にアタッチされたボリュームを自動的にマウントする」を参照してください。