冗長性とは、システムの一部に何らかの障害が発生した場合に備えて、障害発生後でもシステム全体の機能を維持し続けられるように、 予備装置を平常時からバックアップとして配置し運用しておくこと
主な冗長性の実装方法として以下のようなものがあります。
◆1.複数のアベイラビリティーゾーン(AZ)を使用する:一つの地域内で異なるデータセンターにリソースを分散させることで、 一つのデータセンターがダウンしてもサービスが継続されます。
◆2.ロードバランシング:複数のサーバーにトラフィックを分散させることで、個々のサーバーにかかる負荷を軽減し、一部のサーバーに障害が発生した場合でもサービスを提供し続けます。
◆3.データレプリケーション:重要なデータを複数の場所にコピーしておくことで、一箇所でデータの喪失または障害が発生した場合でも、他の場所からデータを復旧できます。
◆4.フェイルオーバーとフェイルバック: 障害時に、自動的に代替のリソースに切り替わり(フェイルオーバー)、問題が解決した後で元のリソースに戻る(フェイルバック)ことができます。

このように耐障害性を高めるためにシステム全体を二重化して予備のシステムを用意することを冗長化(じょうちょうか)といいます。
たとえばWebサイトを100%継続したい際は、災害時用のサイトは通常でも起動をしておく必要がでてきます。しかし、これには経費もダブルでかかってきます。
これは災害時など ダウンタイムをどのようにするかにより、対応が異なるでしょう。
AWSは、システム運営で出来るだけ自動化をするように促しております。これはクラウドゆえの特徴として、その自動化は非常に機能的で容易いことです。
また、Design for Failure という言葉を使い、障害が起こる前提での設計や、万が一の発生した際の復旧方法まで考えることが重要だと説いています。
AWSでは、ことあるごとにシステム、データの二重化等を進めていますが、クラウドではリアルタイムの自動化、アラート通知、再起動等は、最も簡単に構築が可能です。