【Amazon EBS】暗号化されていない既存EBSを暗号化する方法

記事タイトルとURLをコピーする

こんにちは!イーゴリです。

今日はEC2の暗号化されていない既存のEBSを暗号化する方法を紹介します。

結論

■質問:既存のEC2のEBS (rootボリューム) を暗号化できるか?
■回答:できる

■質問:無停止でEC2の暗号化されたEBS (rootボリューム) を差し替えできるか?
■回答:非暗号化EBSから暗号化されたEBSのコピーは無停止で差し替えできない。(以下の手順書に説明します)

作業の流れ

  • (任意)AWS KMSでキーを作成する
  • 対象EC2のEBS スナップショットを取得する
  • 非暗号化のEBSスナップショットから暗号化のEBSスナップショットを作成する
  • EBS暗号化されたスナップショットから暗号化のEBS ボリュームを作成する
  • EC2インスタンスで非暗号化されたEBSから暗号化されたEBSボリュームに差し替える

手順書

(任意)AWS KMSでキーを作成する

今回はデフォルトKMSキーを使いますので、このステップはスキップしますが、作り方だけ紹介します。

※同じAWSアカウント内の場合、defaultのキーは使えますが、別のアカウントの場合、KMSキーの作成が必須となります。今回の手順は同じアカウント内の作業となりますのでアカウント間の手順は省きます。

[AWS] > [AWS Key Management Service] > [キーの作成]をクリックします。

「キータイプ」及び「キーの使用法」(暗号化及び復号化)などを選択した上、[次へ]をクリックします。

次の画面で、[エイリアス]を記載し、[次へ]をクリックします。

次の画面で、[キーの管理アクセス許可を定義]を設定し、[次へ]をクリックし、[キーの使用法アクセス許可を定義]を設定し、[次へ]をクリックします。

次の画面で[完了]をクリックします。

今回はデフォルトキーを使うので、このキーを無効化し、削除します。

対象EC2のEBS スナップショットを取得する

対象EC2のEBSを選択し、スナップショットを取得します。

非暗号化のEBSスナップショットから暗号化のEBSスナップショットを作成する

非暗号化のEBSスナップショットを選択し、アクションもしくは右クリック > [スナップショットをコピー]をクリックします。

必要な欄を記載し、[暗号化]にチェックを入れて、キーを選択します。

ステータスが「完了済み」になるまで待機します。

無停止で暗号化されたか確認する(余談のため、スキップしても問題ない)

上記の暗号化されたEBSを選択し、[置き換えタスクを作成]をクリックしますと、下記のエラーが発生しました。

snap-XXX を使用して i-0606f85f472df06ba の復元ボリュームタスクを作成できませんでした
Invalid snapshot for root volume for virt i-0606f85f472df06ba. The snapshot should be of one of the root volumes attached to the instance in the past

理由:無停止でEBSのrootボリュームを差し替えるためには、対象のインスタンスで作成したスナップショットしか使えないからです。ただし、EBSボリュームを暗号化するためにスナップショットからコピーを作る必要があるので、異なるEBSスナップショットとして認識されています。

ちなみに、非暗号化EBSは元のEBSボリュームとして認識されているため、無停止で置き換えすることができますが、1分程度のダウンタイムが発生します。

64 bytes from 54.250.245.198: icmp_seq=228 ttl=243 time=55.022 ms
Request timeout for icmp_seq 229
省略
Request timeout for icmp_seq 282
64 bytes from 54.250.245.198: icmp_seq=283 ttl=243 time=65.027 ms

EBS暗号化されたスナップショットから暗号化のEBS ボリュームを作成する

無停止でEBSの差し替えができなかったため、暗号化されたEBSスナップショットからEBS ボリュームを作成します。

EC2インスタンスで非暗号化されたEBSから暗号化されたEBSボリュームに差し替える

EC2を停止します。

対象EC2の既存のEBSボリュームをデタッチします。

暗号化されたEBSボリュームをアタッチします。

下記のスクリーンショットの通り、対象EC2のEBSボリュームが「暗号化済み」になりましたので、作業は完了です。

以上、御一読ありがとうございました。

本田 イーゴリ (記事一覧)

カスタマーサクセス部

・AWS SAP, DOP, SCS, DBS, SAA, DVA, CLF
・Azure AZ-900
・EC-Council CCSE

趣味:日本国内旅行(47都道府県制覇)・ドライブ・音楽