ボリュームのステータスのモニタリング - Amazon Elastic Compute Cloud

ボリュームのステータスのモニタリング

Amazon Web Services (AWS) では、Amazon Elastic Block Store (Amazon EBS) ボリュームのモニタリングに使用できるデータを自動的に提供します。

モニタリングの詳細については、「Amazon EBS の Amazon CloudWatch メトリクス」と「Amazon EBS の Amazon CloudWatch Events」を参照してください。

EBS ボリュームステータスチェック

ボリュームステータスチェックを利用すると、Amazon EBS ボリュームのデータの潜在的な不整合を容易に理解、追跡、および管理できます。これらのチェックは、Amazon EBS ボリュームに障害が発生しているかどうかを判断するために必要な情報を提供し、潜在的に不整合なボリュームの処理方法を制御できるように設計されています。

ボリュームステータスチェックは 5 分ごとに自動的に試行され、成功または失敗のステータスを返します。すべてのチェックが成功した場合、ボリュームのステータスは ok です。チェックが失敗した場合、ボリュームのステータスは impaired です。ステータスが insufficient-data の場合、ボリュームのチェックがまだ実行中である可能性があります。ボリュームステータスチェックの結果を表示して、障害のあるボリュームを特定し、必要なアクションを行うことができます。

ボリュームのデータが潜在的に不整合であると Amazon EBS が判断した場合、デフォルトでは、アタッチされたすべての EC2 インスタンスからそのボリュームへの I/O が無効になります。これにより、データの破損を防ぐことができます。I/O が無効になると、次のボリュームステータスチェックが失敗し、ボリュームステータスは impaired になります。さらに、I/O が無効になったこと、およびボリュームへの I/O を有効にすることによってボリュームの障害ステータスを解決できることを伝えるイベントが表示されます。ユーザーが I/O を有効にするまでシステムは待機するため、ユーザーはインスタンスによるボリュームの使用を継続するか、その前に fsck などのコマンドを使用して整合性チェックを実行するかを判断することができます。

注記

ボリュームステータスはボリュームステータスチェックに基づいており、ボリューム状態を反映していません。従って、ボリュームステータスではボリュームが error 状態 (たとえば、I/O を受け付けできない) であることは判りません。ボリュームの状態についての詳細は、「ボリューム状態」を参照してください。

あるボリュームの整合性について心配しているわけではなく、そのボリュームに障害が発生した際にそのボリュームをすぐに利用できるようにしたい場合は、デフォルトの動作を上書きして、I/O を自動的に有効にするようにボリュームを設定することができます。Auto-Enable IO 属性 (API の autoEnableIO) を有効にしている場合は、ボリューム状態のチェックは引き続きパスされます。また、ボリュームに潜在的な障害があると判断されたが、そのボリュームの I/O が自動的に有効になったことを伝えるイベントも表示されます。これにより、ボリュームの整合性を確認したり、後でボリュームを交換したりすることが可能になります。

I/O パフォーマンスステータスチェックは、実際のボリュームパフォーマンスと予想されるボリュームパフォーマンスを比較します。ボリュームパフォーマンスが想定未満である場合は、警告が表示されます。このステータスチェックは、インスタンスにアタッチされているプロビジョンド IOPS (io1 および io2) ボリュームに対してのみ使用できます。ステータスチェックは、汎用 SSD (gp2 および gp3)、スループット最適化 HDD (st1)、Cold HDD (sc1)、または磁気 (standard) ボリュームでは使用できません。I/O パフォーマンスステータスチェックは 1 分ごとに 1 回実行され、CloudWatch は 5 分ごとにこのデータを収集します。io1 または io2 ボリュームをインスタンスにアタッチしてから、ステータスチェックが I/O パフォーマンスステータスを報告するまでに、最長で 5 分かかる場合があります。

重要

スナップショットから復元された Provisioned IOPS SSD ボリュームを初期化している間は、ボリュームのパフォーマンスが想定レベルの 50% を下回る場合があります。このため、ボリュームの [I/O Performance (I/O パフォーマンス)] ステータスチェックでは warning 状態が表示されます。これは想定の動作です。初期化中の Provisioned IOPS SSD ボリュームの warning 状態は無視してかまいません。詳細については、「Amazon EBS ボリュームの初期化」を参照してください。

次の表に、Amazon EBS ボリュームのステータスを示します。

ボリュームのステータス I/O 有効ステータス I/O パフォーマンスステータス (io1io2 ボリュームのみ)

ok

Enabled (I/O Enabled または I/O Auto-Enabled)

Normal (ボリュームパフォーマンスは想定どおり)

warning

Enabled (I/O Enabled または I/O Auto-Enabled)

Degraded (ボリュームのパフォーマンスが想定を下回っている)

Severely Degraded (ボリュームのパフォーマンスが想定をかなり下回っている)

impaired

Enabled (I/O Enabled または I/O Auto-Enabled)

Disabled (ボリュームがオフラインで復旧の保留中、またはユーザーによる I/O の有効化待ち)

Stalled (ボリュームのパフォーマンスは致命的な影響を受けている)

Not Available (I/O が無効なため、I/O パフォーマンスの判定不能)

insufficient-data

Enabled (I/O Enabled または I/O Auto-Enabled)

Insufficient Data

Insufficient Data

次の方法を使用して、ステータスチェックを表示および操作できます。

Console

ステータスチェックを表示するには

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

  2. ナビゲーションペインの [ボリューム] を選択します。[Volume Status (ボリュームのステータス)] 列に、各ボリュームの動作状況が表示されます。

  3. ボリュームのステータスの詳細を表示するには、ボリュームを選択して、[Status Checks (ステータスチェック)] を選択します。

    
                                    EBS ボリュームステータスの表示
  4. ステータスチェックが失敗したボリュームがある場合 (ステータスが impaired (障害) として示されている) は、障害のあるボリュームの操作 を参照してください。

ナビゲータで [Events (イベント)] を選択して、インスタンスとボリュームのすべてのイベントを表示することもできます。詳細については、「EBS ボリュームイベント」を参照してください。

AWS CLI

ボリュームステータス情報を表示するには

次のいずれかのコマンドを使用できます。

これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。

EBS ボリュームイベント

ボリュームのデータが潜在的に不整合であると Amazon EBS によって判断された場合、デフォルトでは、アタッチされているすべての EC2 インスタンスからそのボリュームへの I/O が無効になります。これにより、ボリュームステータスチェックが失敗し、障害の原因を示すボリュームステータスイベントが作成されます。

データが潜在的に不整合であるボリュームで I/O を自動的に有効にするには、Auto-Enabled IO ボリューム属性 (API の autoEnableIO) の設定を変更します。この属性の変更の詳細については、「障害のあるボリュームの操作」を参照してください。

各イベントには、イベントが発生した時刻を示す開始時刻と、そのボリュームに対する I/O が無効になった時間を示す継続時間が含まれています。ボリュームに対する I/O が有効になると、イベントに終了時刻が追加されます。

ボリュームステータスイベントには、次の説明のいずれかが含まれています。

Awaiting Action: Enable IO

ボリュームデータに整合性がない可能性があります。ボリュームに対する I/O は、ユーザーが明示的に有効にするまで無効になります。I/O を明示的に有効にすると、イベントの説明が IO Enabled に変更されます。

IO Enabled

このボリュームに対する I/O 操作が明示的に有効にされました。

IO Auto-Enabled

イベントの発生後に、このボリュームで I/O 操作が自動的に有効になりました。データを引き続き使用する前に、データの整合性を確認することをお勧めします。

Normal

io1io2、および gp3 ボリュームのみ。ボリュームのパフォーマンスは想定どおりです。

Degraded

io1io2、および gp3 ボリュームのみ。ボリュームのパフォーマンスは想定を下回っています。

Severely Degraded

io1io2、および gp3 ボリュームのみ。ボリュームのパフォーマンスは想定をはるかに下回っています。

Stalled

io1io2、および gp3 ボリュームのみ。ボリュームのパフォーマンスは致命的な影響を受けています。

次の方法を使用して、ボリュームイベントを表示できます。

Console

ボリュームイベントを表示するには

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

  2. ナビゲーションペインの [Events] を選択します。イベントを含むすべてのインスタンスおよびボリュームがリストされています。

  3. ボリュームでフィルタリングして、ボリュームステータスのみを表示できます。特定のタイプのステータスでフィルタリングすることもできます。

  4. ボリュームを選択して、その特定のイベントを表示します。

    
                                    ボリュームイベントの表示
AWS CLI

ボリュームイベントを表示するには

次のいずれかのコマンドを使用できます。

これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。

I/O が無効になっているボリュームがある場合は、「障害のあるボリュームの操作」を参照してください。I/O パフォーマンスが通常の状態を下回っているボリュームがある場合、実行したアクションを原因とする一時的な状態である可能性があります (ピーク使用時にボリュームのスナップショットを作成した、必要な I/O 帯域幅をサポートできないインスタンスでボリュームを実行した、ボリュームのデータに初めてアクセスした、など)。

障害のあるボリュームの操作

ボリュームのデータが整合していない可能性があるためにボリュームに障害がある場合は、以下のオプションを使用します。

オプション 1: インスタンスにアタッチされたボリュームで整合性チェックを実行する

もっとも単純なオプションは、ボリュームが Amazon EC2 にアタッチされているときに、I/O を有効にしてから、ボリュームでデータの整合性チェックを実行するオプションです。

アタッチされたボリュームで整合性チェックを実行するには

  1. アプリケーションによるボリュームの使用を停止します。

  2. ボリュームの I/O を有効にします。次のいずれかの方法を使用します。

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

    2. ナビゲーションペインの [ボリューム]を選択します。

    3. I/O 操作を有効にするボリュームを選択します。

    4. 詳細ペインで、[Enable Volume I/O (ボリューム I/O を有効化する)] を選択し、次に [Yes, Enable (はい、有効化します)] を選択します。

      
                                                IO を有効にする
    AWS CLI

    コマンドラインを使用してボリュームの I/O を有効にするには

    Amazon EBS ボリュームのイベント情報を表示するには、次のコマンドのいずれかを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。

  3. ボリュームのデータを確認します。

    1. fsck コマンドを実行します。

    2. (オプション) 関連するエラーメッセージがないか、使用可能なアプリケーションログまたはシステムログを確認します。

    3. ボリュームの障害が 20 分を超えて続く場合は、AWS サポートセンターに連絡してください。[Troubleshoot (トラブルシューティング)] をクリックしてから、[Troubleshoot Status Checks (ステータスチェックのトラブルシューティング)] ダイアログボックスの [Contact Support (サポートに問い合わせる)] を選択してサポートケースを送信します。

オプション 2: 別のインスタンスを使用してボリュームで整合性チェックを実行する

実動環境外部のボリュームをチェックするには、次の手順に従います。

重要

この手順を実行すると、ボリューム I/O を無効にしたときに停止された書き込み I/O が失われる場合があります。

分離されたボリュームで整合性チェックを実行するには

  1. アプリケーションによるボリュームの使用を停止します。

  2. ボリュームをインスタンスからデタッチします。詳細については、「Linuxインスタンスから Amazon EBS ボリュームをデタッチします。」を参照してください。

  3. ボリュームの I/O を有効にします。次のいずれかの方法を使用します。

    Console
    1. ナビゲーションペインの [ボリューム] を選択します。

    2. 前の手順でデタッチしたボリュームを選択します。

    3. 詳細ペインで、[Enable Volume I/O (ボリューム I/O を有効化する)] を選択し、次に [Yes, Enable (はい、有効化します)] を選択します。

      
                                                IO を有効にする
    AWS CLI

    コマンドラインを使用してボリュームの I/O を有効にするには

    Amazon EBS ボリュームのイベント情報を表示するには、次のコマンドのいずれかを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。

  4. ボリュームを別のインスタンスにアタッチします。詳細については、「インスタンスの起動」および「インスタンスへの Amazon EBS ボリュームのアタッチ」を参照してください。

  5. ボリュームのデータを確認します。

    1. fsck コマンドを実行します。

    2. (オプション) 関連するエラーメッセージがないか、使用可能なアプリケーションログまたはシステムログを確認します。

    3. ボリュームの障害が 20 分を超えて続く場合は、AWS サポートセンターに連絡してください。[Troubleshoot (トラブルシューティング)] を選択し、トラブルシューティングのダイアログボックスで [Contact Support (サポートに問い合わせる)] を選択して、サポートケースを送信します。

オプション 3: 不要なボリュームを削除する

環境からボリュームを削除するには、単にそれを削除します。ボリュームの削除の詳細については、「Amazon EBS ボリュームの削除」を参照してください。

ボリュームのデータをバックアップするスナップショットを最近作成した場合、そのスナップショットから新しいボリュームを作成できます。詳細については、「スナップショットからのボリュームの作成」を参照してください。

AutoEnable IO ボリューム属性の操作

ボリュームのデータが潜在的に不整合であると Amazon EBS によって判断された場合、デフォルトでは、アタッチされているすべての EC2 インスタンスからそのボリュームへの I/O が無効になります。これにより、ボリュームステータスチェックが失敗し、障害の原因を示すボリュームステータスイベントが作成されます。あるボリュームの整合性について心配しているわけではなく、そのボリュームに障害が発生した際にそのボリュームをすぐに利用できるようにしたい場合は、デフォルトの動作を上書きして、I/O を自動的に有効にするようにボリュームを設定することができます。Auto-Enable IO 属性 (API の autoEnableIO) を有効にしている場合は、ボリュームとインスタンスとの間の I/O が自動的に有効になり、ボリュームのステータスチェックはパスされます。また、ボリュームが潜在的に不整合な状態であること、ただしそのボリュームの I/O が自動的に有効になったことを伝えるイベントも表示されます。このイベントが発生した場合は、ボリュームの整合性をチェックし、必要に応じて置き換えます。詳細については、「EBS ボリュームイベント」を参照してください。

次の方法を使用して、ボリュームの IO の自動有効化属性を表示および変更できます。

Console

ボリュームの、 IO の自動有効化 属性を表示するには

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

  2. ナビゲーションペインの [ボリューム] を選択します。

  3. ボリュームを選択して、[Status Checks (ステータスチェック)] を選択します。[Auto-Enabled IO] には、ボリュームの現在の設定([Enabled (有効)] または [Disabled (無効)] が表示されます。

    
                                    Auto-Enable IO の表示

ボリュームの、IO の自動有効化属性を変更するには

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

  2. ナビゲーションペインの [ボリューム] を選択します。

  3. ボリュームを選択して、[Actions (アクション)]、[Change Auto-Enable IO Setting (Auto-Enable IO を変更する)] の順に選択します。または、[Status Checks (ステータスチェック)] タブを選択し、[Auto-Enabled IO] で、[Edit (編集)] を選択します。

    
                                    Auto-Enable IO 設定を変更する
  4. 障害のあるボリュームの I/O を自動的に有効にするには、[Auto-Enable Volume IO (Auto-Enable ボリューム IO)] チェックボックスをオンにします。この機能を無効にするには、チェックボックスをクリアします。

    
                                    Auto-Enable IO 設定を変更する
  5. [Save] を選択します。

AWS CLI

ボリュームの autoEnableIO 属性を表示するには

次のいずれかのコマンドを使用できます。

ボリュームの autoEnableIO 属性を変更するには

次のいずれかのコマンドを使用できます。

これらのコマンドラインインターフェイスの詳細については、「Amazon EC2 へのアクセス」を参照してください。