Amazon EC2 のベストプラクティス - Amazon Elastic Compute Cloud

Amazon EC2 のベストプラクティス

Amazon EC2 の利点を最大限に高めるために、以下のベストプラクティスを実践することをお勧めします。

セキュリティ
  • AWS リソースおよび API へのアクセス管理は、可能な限り ID プロバイダーおよび IAM ロールによる ID フェデレーションを使用します。詳細については、『IAM ユーザーガイド』の「IAM ポリシーの作成」を参照してください。

  • セキュリティグループに対して、最小権限となるルールを適用します。詳細については、「セキュリティグループのルール」を参照してください。

  • 定期的にインスタンスのオペレーティングシステムやアプリケーションに対してパッチ処理、更新、および保護を行います。AL2023 のアップデートの詳細については、「AL2023 ユーザーガイド」の「AL2023 のアップデート」を参照してください。Amazon Linux 2 または Amazon Linux AMI の更新の詳細については、Linux インスタンス用 Amazon EC2 ユーザーガイド の「ソフトウェアの管理 (Linux インスタンスの場合)」を参照してください。

  • Amazon Inspector を使用して、Amazon EC2 インスタンスを自動的に検出し、ソフトウェアの脆弱性やネットワークへの意図しない公開がないかスキャンします。詳細については、Amazon Inspector ユーザーガイドを参照してください。

  • AWS Security Hub コントロールを使用して、Amazon EC2 リソースをセキュリティのベストプラクティスやセキュリティ基準に照らして監視します。セキュリティハブの詳細については、「AWS Security Hub ユーザーガイド」の「Amazon Elastic Compute Cloud の管理」を参照してください。

ストレージ
  • データの永続性、バックアップ、および復元に対するルートデバイスタイプの影響について理解します。詳細については、「ルートデバイスのストレージ」を参照してください。

  • オペレーティングシステム用およびデータ用として個別に Amazon EBS ボリュームを使用します。データのボリュームがインスタンス終了後も保持されることを確認します。詳細については、「インスタンスの終了時にデータを保持する」を参照してください。

  • インスタンスで一時データの格納に使用できるインスタンスストアを使用します。インスタンスを停止、休止、または終了すると、インスタンスストアに格納されたデータは削除されることに注意してください。データベースストレージにインスタンスストアを使用する場合は、耐障害性を確保するレプリケーション係数が設定されたクラスターがあることを確認します。

  • EBS ボリュームとスナップショットを暗号化します。詳細については、「Amazon EBS ユーザーガイド」の「Amazon EBS 暗号化」を参照してください。

リソース管理
  • AWS リソースを追跡および識別するために、インスタンスメタデータおよびリソースのカスタムタグを使用します。詳細については、「インスタンスメタデータとユーザーデータ」および「Amazon EC2 リソースのタグ付け」を参照してください。

  • Amazon EC2 の現在の制限を表示します。制限の引き上げに対するリクエストは、制限の引き上げが必要となる前に計画してください。詳細については、「Amazon EC2 の Service Quotas」を参照してください。

  • AWS Trusted Advisor では、お客様の AWS 環境を検査し、コスト削減、システムの可用性とパフォーマンスの向上、セキュリティギャップの封鎖につながるレコメンデーションをお知らせします。詳細については、AWS Support ユーザーガイドの AWS Trusted Advisorを参照してください。

バックアップと復旧
  • 定期的に Amazon EBS スナップショットを使用して EBS ボリュームをバックアップし、インスタンスから Amazon Machine Image (AMI) を作成して、それ以降にインスタンスを起動するためのテンプレートとして設定を保存します。このユースケースの実現に役立つ AWS サービスの詳細については、「AWS Backup」と「Amazon Data Lifecycle Manager」を参照してください。

  • 複数のアベイラビリティゾーンにアプリケーションの重要なコンポーネントをデプロイし、データを適切にレプリケートします。

  • インスタンスが再開したときに、動的な IP アドレスを処理するアプリケーションを設計します。詳細については、「Amazon EC2 インスタンスの IP アドレス指定」を参照してください。

  • イベントを管理し、対応します。詳細については、「Amazon EC2 のモニタリング」を参照してください。

  • フェイルオーバーを処理する準備が整っていることを確認します。基本的な解決策として、手動でネットワークインターフェイスをアタッチすることも、代替インスタンスに Elastic IP アドレスを関連付けることもできます。詳細については、「Elastic Network Interface」を参照してください。自動化されたソリューションとして Amazon EC2 Auto Scaling を使用できます。詳細については、「Amazon EC2 Auto Scaling ユーザーガイド」を参照してください。

  • インスタンスと Amazon EBS ボリュームを復元するプロセスを定期的にテストして、データとサービスが正常に復元されるようにします。

ネットワーク
  • アプリケーションの TTL (有効時間) 値を IPv4 と IPv6 で 255 に設定します。小さい値を使用すると、アプリケーショントラフィックの送信中に TTL が期限切れになり、インスタンスの到達可能性の問題が発生する危険性があります。