説明
EBS 最適化は、EC2 インスタンスと EBS ボリューム間の I/O 競合を減らすのに役立ちます。デフォルトで有効なタイプ、任意に有効化できるタイプ、非対応のタイプがあるため、ebs_optimized の省略だけでは実際の状態は判断できません。
EBS に依存するワークロードでは、実際のスループットと遅延を確認する必要があります。この設定は保存時の暗号化やアクセス制御の代わりにはなりません。
想定される影響
- 必要な EBS 性能を確保できないと、アプリケーションの遅延やストレージのボトルネックが生じる場合があります。
- 非対応のインスタンスタイプでオプションを指定すると、要求が失敗する場合があります。
対処方法
- インスタンスタイプの対応状況とデフォルト値を確認してください。対応タイプで任意の最適化が必要なら
ebs_optimized: trueを設定してください。 - インスタンスとボリュームの性能上限、費用、変更の影響を検討し、デプロイ後に EBS メトリクスとアプリケーションの遅延を確認してください。
例
amazon.aws.ec2 を提供する過去のコレクションの抜粋です。現在の構成にはサポートされるモジュールを使用してください。ebs_instance_type には任意の EBS 最適化に対応するタイプ、ec2_image_id には互換性のある実際の AMI を渡し、キー、セキュリティグループ、サブネットの値も環境に合わせてください。
変更前
yaml
- name: example
amazon.aws.ec2:
key_name: mykey
instance_type: "{{ ebs_instance_type }}"
image: "{{ ec2_image_id }}"
wait: yes
group: default
count: 3
vpc_subnet_id: subnet-29e63245
EBS 最適化を明示していません。選択したタイプと適用済みの構成を確認してください。
変更後
yaml
- name: example
amazon.aws.ec2:
key_name: mykey
instance_type: "{{ ebs_instance_type }}"
image: "{{ ec2_image_id }}"
wait: yes
group: my_sg
count: 3
vpc_subnet_id: subnet-29e63245
ebs_optimized: true
対応タイプで EBS 最適化を要求します。実際のワークロードとボリューム設定で性能上の効果を確認してください。