AWS EC2 でホストされている Web サイトがあります。インスタンスに障害が発生した場合に備えてバックアップが必要ですか? それとも Amazon 側にすでに十分な冗長性がありますか?
答え1
バックアップは必ず必要になります!実行中の場合シングルEC2インスタンスを使用してウェブサーバーをホストし、そのEC2インスタンスに障害が発生すると、データは失われます。自動バックアップなし追加の設定を行わずに EC2 インスタンスを起動するだけの場合 (つまり、ルート ボリュームを EBS ボリュームにする)。
EC2インスタンスできる失敗する可能性はあり、これはアーキテクチャの概念の一部でなければなりません。通常、AWS は AWS の廃止が予定されている前にアナウンスしますが、警告なしにインスタンスが失敗するのを見たことがあります。それらを一時的なものと見なし、いつでも失敗する可能性があると想定することをお勧めします。
AWS ドキュメントより:
インスタンスは、AWS がインスタンスをホストしている基盤ハードウェアの修復不可能な障害を検出したときに、廃止される予定です。インスタンスが廃止予定日に達すると、AWS によって停止または終了します。インスタンスのルートデバイスが Amazon EBS ボリュームである場合、インスタンスは停止され、いつでも再起動できます。停止したインスタンスを起動すると、新しいハードウェアに移行します。インスタンスのルートデバイスがインスタンスストアボリュームである場合、インスタンスは終了され、再び使用できなくなります。
からhttps://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-retirement.html
また:
- Amazon EBS スナップショットを使用して EBS ボリュームを定期的にバックアップし、インスタンスから Amazon マシンイメージ (AMI) を作成して、将来のインスタンスの起動用のテンプレートとして設定を保存します。
- アプリケーションの重要なコンポーネントを複数のアベイラビリティーゾーンにデプロイし、データを適切に複製します。
- インスタンスと Amazon EBS ボリュームに障害が発生した場合に回復するプロセスを定期的にテストします。
からhttps://docs.aws.amazon.com/AWSEC2/latest/ユーザーガイド/ec2-best-practices.html、 セクションバックアップとリカバリ
したがって、達成しようとしているアップタイムに応じて、単一の EC2 インスタンスを実行するのではなく、複数のインスタンスを実行してロード バランサーに追加することをお勧めします。設定可能なヘルス チェックに基づいて、障害のあるインスタンスを自動的に置き換えます。
ウェブサイトをホスティングすることも検討してくださいAWS エラスティック ビーンズトーク、必要なインフラストラクチャの設定を代行します。
答え2
バックアップの目的について考える必要があります。異なるアベイラビリティゾーンに展開された、非常に回復力の高いWebサーバーがあったとしても、データやディスクが破損したらどうなるでしょうか?しなければならないこのような事態に備えて、バックアップを用意しておいてください。
Amazon は、EC2 インスタンスが何らかの形で耐障害性を持っているとは主張していませんが、2 つ以上のインスタンスを使用して耐障害性環境を設計する方法に関する資料を提供しています。
回復力のある環境を構築する方法に関するリソースは、以下で見つけることができます。https://aws.amazon.com/architecture/
EC2の最新(2020年)ガイドhttps://www.logicata.com/blog/aws-ec2-everything-you-need-to-know-about-ec2-instances/