メニュー
Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

EBS ボリュームの変更に関する考慮事項

EBS ボリュームを変更するときは、以下の制限と要件に注意してください。

  • 変更を行うために、ボリュームのデタッチやインスタンスの停止が必要になる場合もあります。EBS ボリュームを変更する際にエラーメッセージが表示された場合や前世代のインスタンスタイプにアタッチされた EBS ボリュームを変更する場合は、以下のいずれかのステップを行ってください。

  • 前世代および マグネティック のボリュームタイプには、このトピックで説明しているボリュームの変更方法は適用されません。ただし、マグネティック ボリュームのスナップショットを撮り、それを別の異なる設定の EBS ボリュームに復元することはできます。

  • EBS ボリュームのサイズを小さくすることはできません。ただし、より小さなボリュームを作成し、そのボリュームに対して rsync などのアプリケーションレベルのツールを使用してデータを移行することができます。

  • 一度変更したボリュームに追加の変更を適用する場合は、6 時間以上待ちます。

  • m3.medium インスタンスはボリュームの変更を完全にサポートしていますが、m3.largem3.xlarge、および m3.2xlarge インスタンスのいくつかは、すべてのボリューム変更機能をサポートしているわけではありません。エラーが表示された場合は、「付録: EBS ボリュームを変更するためのインスタンスの起動と停止」を参照してください。

  • Linux AMI では、2 TiB (2048 GiB) 以上のブートボリュームについて GUID パーティションテーブル (GPT) と GRUB 2 が必要です。現在の多くの Linux AMI は依然として MBR パーティションスキームを使用しており、2,047 GiB までのブートボリュームのみをサポートしています。インスタンスが 2 TiB 以上のブートボリュームで起動しない場合、使用中の AMI は、2,047 GiB のブートボリュームサイズに制限されている可能性があります。ブートボリューム以外のボリュームには、Linux インスタンスでこの制限はありません。

    2 TiB より大きな値にブートボリュームのサイズを変更する前に、ボリュームが MBR と GPT のどちらのパーティション分割を使用しているのか確認します。それには、インスタンス上で、コマンド を実行します。

    Copy
    [ec2-user ~]$ sudo gdisk -l /dev/xvda

    GPT パーティション分割を使用している Amazon Linux インスタンスは、次の情報を返します。

    GPT fdisk (gdisk) version 0.8.10 Partition table scan: MBR: protective BSD: not present APM: not present GPT: present Found valid GPT with protective MBR; using GPT.

    MBR パーティション分割を使用している SUSE インスタンスは、次の情報を返します。

    GPT fdisk (gdisk) version 0.8.8 Partition table scan: MBR: MBR only BSD: not present APM: not present GPT: not present

古いボリュームでのボリューム変更のサポート

2016 年 11 月 1 日以前にインスタンスにアタッチされたボリュームを変更する前に、次のいずれかのアクションを使用してボリュームのサポートを初期化する必要があります。

  • ボリュームをデタッチしてアタッチする

  • インスタンスを再起動する

コンソールを使用してボリューム変更サポートを初期化する必要があるかどうかを判断するには

  1. https://console.aws.amazon.com/ec2/) にある Amazon EC2 コンソールを開きます。

  2. ナビゲーションペインで、[インスタンス] を選択します。

  3. [Show/Hide Columns] アイコン (歯車) を選択します。[Launch Time] および [Block Devices] 属性を選択し、[Close] を選択します。

  4. [Launch Time] 列でインスタンスの一覧をソートします。カットオフ日以前に起動したインスタンスについては、デバイスがいつアタッチされたか確認します。次の例では、最初のインスタンスのボリューム変更を初期化する必要があります。これはカットオフ日よりも前に開始され、カットオフ日より前にそのルートボリュームがアタッチされていたためです。他のインスタンスは、ボリュームがいつアタッチされたかにかかわらず、カットオフ日以降に開始されたため、準備が完了しています。

     [Launch Time] 列および [Block Devices] 列を確認します。

CLI を使用してボリューム変更サポートを初期化する必要があるかどうかを判断するには

カットオフ日前にアタッチされたボリュームを使用して、カットオフ日前の最後に開始されたインスタンスを検索するには、次の describe-instances コマンドを使用します。

Copy
aws ec2 describe-instances --query "Reservations[*].Instances[*].[InstanceId,LaunchTime<=`2016-11-01`,BlockDeviceMappings[*][Ebs.AttachTime<=`20016-11-01`]]" --output text

各インスタンスの出力は、カットオフ日前に開始されたからどうか (True または False)、そのボリュームがカットオフ日前にアタッチされたかどうか (True または False) にかからず、その ID を示します。次の出力例では、最初のインスタンスのボリューム変更を初期化する必要があります。これはカットオフ日よりも前に開始され、カットオフ日より前にそのルートボリュームがアタッチされていたためです。他のインスタンスは、ボリュームがいつアタッチされたかにかかわらず、カットオフ日以降に開始されたため、準備が完了しています。

i-e905622e              True
True
i-719f99a8              False
True
i-006b02c1b78381e57     False
False
False
i-e3d172ed              False
True