9
3

More than 1 year has passed since last update.

EC2稼働開始後にEBSボリュームの暗号化を行う手順

Last updated at Posted at 2022-10-24

目的

  • EC2を稼働する際にEBSボリュームをデフォルトの暗号化設定をチェックせずに暗号化無しで作成している場合に、後から、EBSボリュームを暗号化したい

方法

EBSボリュームのsnapshotからコピーして復元する際に暗号化してそれをEC2に再アタッチする方法で行う

  1. snapshotを取得
  2. 暗号化を有効にしてsnapshotをコピー
  3. コピーされたsnapshotからコピーを作成
  4. 作成した新たなボリュームをインスタンスにアタッチ

実際に動いているサービスに対して行う時の手順の詳細

1、AWS KMSでキーを作成する

image.png

2、EBSを暗号化する該当のEC2インスタンスをELBから外す。

  • スナップショットを取るときに静止点を作ってデータの不整合を防ぐ必要がある
  • インスタンスへの入出力を止めるために作業するインスタンスをELBから外してアクセスしてくる状態がないようにしてから作業する

3、該当のwebサーバ内でも通信ログが止まっているか確認

  • ELBから外したあと、本当に通信が来ていないことを確認するために該当のwebサーバーログ等を確認する

4、稼働しているEC2インスタンスを停止する

  • 「インスタンスを停止」
    image.png

5、EC2インスタンスに紐付いているEBS Volumeを特定する

  • 暗号化されていないことを確認
    image.png

6、EBS VolumeのSnapshotを作成する

  • スナップショット作成
    image.png

  • 説明、名前、タグ欄は任意。説明に「no_encrypted_{インスタンス名}」などと入れておく。

  • 以下になれば成功
    image.png

7、作成されたSnapshotをコピーする

image.png

上記からスナップショット一覧へ

作成に時間がかかる(10〜15分程度)

作成完了
image.png

コピーを作成
image.png

コピーを作成する際に暗号化する

  • マスターキーにはAWS KMSで作成したキーを使用。
    image.png

暗号化済を確認
image.png

8、コピーしたSnapshotからEBS Volumeを作成する

暗号化したスナップショットからEBS Volumeをさらに暗号化して作成

  • 名前はencrypted_{インスタンス名}にする。(既存の暗号化前のボリュームと区別するため)
  • アベイラビリティーゾーンはebsボリュームを紐づける想定のインスタンスが存在するアベイラビリティーゾーンに設定する。
  • マスターキーにはAWS KMSで作成したキーを使用。
    image.png

暗号化済みを確認(まだアタッチしていない)
image.png (26.3 kB)

9、EC2インスタンスに紐づいている既存のEBS Volumeをデタッチする

ルートデバイス確認。AmazonLinuxは /dev/xvda。後ほどルートデバイスを入力する欄あり
image.png

EBSボリュームをデタッチ
image.png

デタッチされたことを確認
image.png (95.7 kB)

10、EC2インスタンスに前段の手順で作成した新たなEBS Volumeをアタッチする

EBSボリュームのアタッチ
image.png

EBSボリュームのアタッチ

  • 先程確認しておいたルートデバイスを確実に入力
    image.png

  • アタッチされたことを確認
    image.png

11、EC2インスタンスを再起動する

  • 「インスタンスの開始」からEC2インスタンスを起動する。
  • EC2インスタンスのステータスチェックが合格になるのを確認

12、ELBへの紐付けを復活する。

  • statusがhealthyになればオッケー

13、サービスnowebページが見れるかどうか確認

終了。

参考

終わりに

株式会社Relicでは、サーバーサイドエンジニアを積極的に採用中です。
またRelicでは、地方拠点がありますので、U・Iターンも大歓迎です!🙌
少しでもご興味がある方は、Relic採用サイトからエントリーください!

9
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
3