EC2: EBSスナップショットをリージョン間でコピー

概要

「EC2: EBSスナップショットをリージョン間でコピー」アクションは、「AMIをリージョン間でコピーする」アクションと同様に、IDやタグで指定したEBSスナップショットを別のリージョン(例:東京からシンガポール)に転送することが可能です。

releasing-copy-ebs-snapshot-action01.png

 

設定時のオプション

No オプション 説明
1 コピー元リージョン コピー元となるEBSスナップショットの存在するリージョンを指定します
2 コピー先リージョン コピー元となるリージョンを指定します
3 EBSスナップショット コピー元となるEBSをリソースIDで指定します
特定のタグが付いたEBSスナップショット コピー元となるEBSスナップショットをタグで指定します
4 ジョブ実行後のリソースの状態チェック ジョブ実行後のリソースの状態をチェックしない場合、CopySnapshot APIリクエストの正否がジョブの実行結果正否となります。

ジョブ実行後のリソースの状態チェックをする場合、CopySnapshot API リクエストが成功し、コピーしたスナップショットのステータスが completed になった場合に成功します。スナップショットのステータスが completed 以外( error 等)になった場合、ジョブが失敗したと判断されます。

コピーしたスナップショットの状態は5分間隔でチェックされます。

 

詳細仕様

  • 1回のジョブ実行でコピー対象にできるEBSスナップショットの上限は 200 個です

  • 50個以上のタグが付いているEBSスナップショットは、コピーされずに failed(失敗) 扱いとなります
  • コピー対象のEBSスナップショットに設定されているタグは、コピーしたEBSスナップショットにも設定されます

  • コピーした EBSスナップショットにはCloud Automator独自のタグが1つ設定されます。このタグは後述の削除処理で利用されます

    Key: Cloud Automator Original Snapshot ID
    Value: {コピー元のリージョン識別子}_{コピー対象のEBSスナップショットID}
    例)ap-northeast-1_snap-0f2a4792
  • 対象をタグで指定した場合のみ行われる削除処理について

    • コピー対象をタグで指定した場合のみ「コピー元リージョンから削除されたEBSスナップショットをコピー先リージョンからも削除する」処理が行われます

    • これは、コピー元リージョンのEBSスナップショットを世代管理などで定期的に削除している場合に、コピー先リージョンに不要なEBSスナップショットが残り続けないようにするための機能です

    • 削除を行うかどうかの判定基準は以下の通りです

      • コピー先リージョンの各EBSスナップショットに付いているタグ Cloud Automator Original Snapshot IDValue に含まれている「リージョン識別子」と「EBSスナップショットID」が、コピー元リージョンから削除されたものと一致するかどうか

    • この削除処理は、ジョブの実行時にEBSスナップショットが1個以上コピーされた場合にのみ行われます

設定例

ここでは、ジョブ作成後に手動実行できる「手動トリガー」を使って、「EC2: EBSスナップショットをリージョン間でコピー」アクションの運用ジョブを登録する例を示します。

  1. コンソール画面左メニューの運用ジョブからジョブの追加をクリックします
  2. グループ選択で、ジョブを追加するグループを選択します
  3. トリガーで「手動トリガー」を選択します
  4. アクションで「EC2: EBSスナップショットをリージョン間でコピー」を選択します
  5. 使用するAWSアカウントを選択します
  6. コピー元、コピー先リージョン、コピー対象のAWSリソースなどのパラメーターを指定します
    copy_ebs_snapshot-after-02.png
  7. ジョブ実行後の後処理を選択します
  8. ジョブ名を入力してジョブを作成します

 

動作確認

  1. ジョブ一覧で、先程追加したジョブの「今すぐ実行」をクリックし、ジョブを実行します
  2. 運用ジョブ一覧画面で作成したジョブの「ログ」ボタンをクリックします
  3. 確認するログの「詳細」ボタンをクリックします
  4. ジョブの実行ログで、ステータスが「成功」になっていることを確認します
  5. コピー元とコピー先のEBSスナップショットは「リソース操作結果」項目で確認することができます
  6. マネージメントコンソールで、コピー先に指定したリージョンにEBSスナップショットのコピーが作成されていることを確認します

 

ログのステータス

実行結果

ステータス 説明
成功 ジョブ実行後のリソースの状態をチェックしない場合、CopySnapshot API リクエストが成功すると成功となります。
ジョブ実行後のリソースの状態をチェックする場合、CopySnapshot API リクエストが成功且つ、コピーしたスナップショットのステータスが completed になったときに成功となります。
失敗 ジョブ実行後のリソースの状態をチェックしない場合、以下のいずれかで失敗となります。
  • コピー元となるスナップショットが存在しない場合
  • コピー元となるスナップショットが 200 を超える場合
  • CopySnapshot API リクエストが失敗した場合
ジョブ実行後のリソースの状態をチェックする場合、以下のいずれかで失敗となります。
  • コピー元となるスナップショットが存在しない場合
  • コピー元となるスナップショットが 200 を超える場合
  • CopySnapshot API リクエストが失敗した場合
  • コピーしたスナップショットのステータスがcompleted以外( error 等)になった場合

 

リソース操作履歴のステータス条件

コピー元となるEBSスナップショットごとに、操作ステータスが表示されます。

ステータス 説明
completed ジョブ実行後のリソースの状態をチェックしない場合、CopySnapshot API リクエストが成功すると completed となります。
ジョブ実行後のリソースの状態をチェックする場合、CopySnapshot API リクエストが成功且つ、コピーしたスナップショットのステータスが completed になったときに completed となります。
failed ジョブ実行後のリソースの状態をチェックしない場合、以下のいずれかで失敗failedとなります。
  • コピー元EBSスナップショットに50個以上のタグが付いている場合
  • コピー先リージョンのEBSスナップショット数が上限に達した場合
  • コピー元のEBSスナップショットのステータスが pending または error の場合
  • CopySnapshot API リクエストが失敗した場合
ジョブ実行後のリソースの状態をチェックする場合、以下のいずれかでfailedとなります。
  • コピー元EBSスナップショットに50個以上のタグが付いていた場合
  • コピー先リージョンのEBSスナップショット数が上限に達した場合
  • コピー元のEBSスナップショットのステータスが pending または error の場合
  • CopySnapshot API リクエストが失敗した場合
  • コピーしたスナップショットのステータスが completed 以外( error 等)になった場合
skipped すでにコピー済みのEBSスナップショットの場合

このアクションで利用されるAWS API

当アクションの実行には以下のAWS APIを利用しています。
実行するAWSアカウントにはこれらのAPIを実行可能なIAMポリシーがアタッチされている必要があります。

関連

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています
他にご質問がございましたら、リクエストを送信してください