アベイラビリティゾーンとは
Availability Zone(アベイラビリティ・ゾーン/AZ、アベイラビリティゾーン)は、同一リージョン内で、電源や設備の障害範囲を分離して設計されたクラウド拠点の単位です。
事業者は一地域内へ複数の分離された位置を用意し、それぞれを一つ以上のデータ中心、冗長な電力・冷却設備・ネットワーク等で構成します。ゾーン間は低遅延ネットワークで接続されるのが一般的ですが、定義・距離・共有設備は事業者ごとに違います。
ゾーンを二つ選んだだけでhigh可用性にはなりません。計算資源容量、負荷分散装置、データ複製、クォーラム、DNS、配備が別ゾーンに存在し、実際に切り替わる設計が必要です。

ゾーンを読む要素
ゾーンは地理地域の構成要素で、地域間とはネットワーク・サービス適用範囲が異なります。
電力、冷却設備、ネットワーク等を独立させ、単一位置障害の波及を抑えます。
複製や分散型システムに使えますが、遅延・料金・帯域はサービス別です。
VM、サブネット、ゾーン単位のディスク等はゾーン障害の影響を直接受けます。
負荷分散装置、オブジェクトストレージ等が地域の適用範囲でも内部冗長性はサービスクラスで違います。
事業者・アカウントでゾーンラベル対応付けが異なる場合があり、共同配置には安定IDを使います。
一つ以上のデータ中心で構成される
可用性ゾーンを「データ中心一棟」と説明すると不正確です。事業者によって一つのゾーンが複数の独立したデータ中心で構成され、冗長なネットワーク、電力、接続性を持つ場合があります。
物理住所や距離が公開されないこともあります。規制・災害リスクを判断するときは地域・事業者の法令・規制への適合文書と契約を確認します。
ゾーン単位の・地域の・グローバル適用範囲
VMインスタンス、ゾーン単位のディスク、サブネット等は一ゾーンへ属し、別ゾーンへそのまま存在しません。地域の負荷分散装置、地域のマネージドデータベース、オブジェクトストレージ等は複数ゾーンを内部利用する場合があります。
名称が地域のでも、データクラスや設定によって単一ゾーン保存領域を選べる場合があります。リソース文書の複製・SLA・障害動作を確認します。
複数ゾーンアプリケーションの条件
少なくとも二ゾーンへ計算資源を配置し、負荷分散装置が正常ゾーンへトラフィックを渡し、状態・データベースを複製し、残存容量が全負荷を処理できるようにします。
一方のゾーンが落ちた後、残りゾーンのCPU・接続・割り当て量が半分なら過負荷になります。障害時容量、auto拡張・縮小起動成功、ネットワーク経路、DNS、秘密情報、設定を障害注入試験します。
データ複製とクォーラム
非同期複製は遅延を抑えますが、障害時に未複製データを失うRPOがあります。同期複製は確認応答まで複数ゾーンへ書くため耐久性を高める一方、遅延と可用性トレードオフがあります。
分散型データベースは奇数複製・クォーラムを使う場合があります。二ゾーンへ均等配置するだけではネットワーク区画時に過半数を得られない構成もあり、監視役・第三ゾーンを検討します。
ゾーン間ネットワークも設計対象
ゾーン間は低遅延・high帯域幅として提供されることが多いですが、ゼロ遅延でも空きでもありません。ゾーン間データ転送料金、複製トラフィック、MTU、障害分離を確認します。
ゾーン間リンク障害では両ゾーンのサーバーが動いても互いに見えません。分割ブレインを防ぐ合意、フェンシング、タイムアウトを設計します。
ゾーン名とゾーンID
AWS等では表示されるゾーン名の物理対応付けがアカウントごとに異なる場合があります。別アカウント同士で同じ「a」を指定しても同じ物理ゾーンとは限りません。
共同配置・分離には事業者が提供する安定ゾーンIDを使います。他事業者は命名規則が違うため、この動作を全クラウドへ一般化しません。
ゾーン障害と地域障害を分ける
複数ゾーン設計は一ゾーンの障害へ備えますが、リージョン全体制御プレーン、識別情報、DNS、ソフトウェア配備、自然災害等で地域全体が影響を受ける想定があります。
地域障害へは別地域のデータ複製、容量、認証情報、トラフィック切替、操作が必要です。複数ゾーンとマルチリージョンを同じ確認ボックスにしません。
可用性ゾーンは一地域内の障害分離単位です。別ゾーンへ計算資源・データ・トラフィックパス・容量を実配置し、複製、クォーラム、ネットワーク区画、識別子を設計して初めてゾーン障害へ耐えられます。
regionを地理area、availability zoneをregion内のisolated locationとして扱う実装例とresource配置:AWS EC2「Regions and Zones」