説明
必要な EBS 暗号化を設定せずに EC2 の起動設定を繰り返し使うと、複数のインスタンスで未暗号化ボリュームが作られる可能性があります。AMI のマッピング、元のスナップショット、リージョンの EBS デフォルト暗号化を併せて確認してください。暗号化済みスナップショットや既定設定により、明示的な要求がなくても新規ボリュームが暗号化される場合があります。
従来の Auto Scaling 起動設定は、作成後には変更できません。新しい構成には起動テンプレートを使用し、起動設定を使っているグループには対応する移行手順を計画してください。
想定される影響
- 実際に未暗号化のボリュームを繰り返し作ると、組織のデータ保護要件を満たさないリソースが増えるおそれがあります。
- 起動設定を変更しても、稼働中のインスタンスの既存ボリュームは変わりません。
対処方法
- 実際の EBS マッピングに合う暗号化と KMS 権限を設定してください。AMI のルートボリュームと追加データボリュームの両方を確認し、インスタンスストアと EBS を区別してください。
- 必要な起動テンプレートのバージョンを準備し、Auto Scaling グループがそのバージョンを使うように設定してください。新規インスタンスのボリューム暗号化と動作を検証し、可用性を考慮して置き換えてください。
- 既存の未暗号化データの移行、接続先の切り替え、停止時間は別途計画してください。テンプレートを更新するだけでは既存ボリュームは暗号化されません。
例
起動テンプレートで新しい空のデータボリュームを追加する例です。実際の ami_id とセキュリティグループ ID の一覧を指定し、/dev/sdf が AMI の既存マッピングと競合しないことを確認してください。ルートボリュームの暗号化と Auto Scaling グループへの関連付けは別途設定してください。
暗号化を明示的に要求しない設定
yaml
- name: EBS encryption for new instances
amazon.aws.ec2_launch_template:
name: special
image_id: "{{ ami_id }}"
security_group_ids: "{{ security_group_ids }}"
instance_type: t3.micro
block_device_mappings:
- device_name: /dev/sdf
ebs:
volume_size: 100
volume_type: gp3
delete_on_termination: true
encrypted: false
追加データボリュームの暗号化を明示的に要求していません。リージョンの既定設定により、実際の新規ボリュームが暗号化される場合があります。
新規データボリュームの暗号化を要求する
yaml
- name: EBS encryption for new instances
amazon.aws.ec2_launch_template:
name: special
image_id: "{{ ami_id }}"
security_group_ids: "{{ security_group_ids }}"
instance_type: t3.micro
block_device_mappings:
- device_name: /dev/sdf
ebs:
volume_size: 100
volume_type: gp3
delete_on_termination: true
encrypted: true
新しいデータボリュームの暗号化を要求します。このテンプレートバージョンで起動したインスタンスの実際のボリュームと KMS アクセスを検証してください。稼働中のインスタンスのボリュームは変更しません。