Azure ストレージ アカウントの役割とそのレプリケーション機能の概要
医療アプリケーションを高可用性に構成するプロジェクトの一部として、あなたは Azure ストレージ アカウントを作成して構成する必要があります。 アプリケーションでは、現場の医師やコンサルタントが診察した患者の画像をアップロードできるようにすることを思い出してください。 これらの画像には重要な医療情報が含まれており、Azure リージョンで障害が発生した場合でも利用できる必要があります
データのレプリケーションと高可用性に対応するように Azure ストレージ アカウントを構成する方法を見ていきましょう。
Azure ストレージ アカウント
Azure ストレージ アカウントは、仮想マシン用のファイル、BLOB、テーブル、ディスクなど、データ オブジェクトを格納するために使用されます。 ストレージ アカウントに格納したデータは、任意の場所から HTTP または HTTPS 経由でグローバルにアクセスでき、高可用性とセキュリティが確保されます。
データの冗長性
データセンターやリージョンにアクセスできなくなった場合、または特定のハードウェアで障害が発生した場合でも常に使用できるように、Azure のデータはレプリケートされます。 次のレプリケーション オプションがあります。
- ローカル冗長ストレージ (LRS)
- ゾーン冗長ストレージ (ZRS)
- geo 冗長ストレージ (GRS)
- 読み取りアクセス geo 冗長ストレージ (RA-GRS)
- geo ゾーン冗長ストレージ (GZRS)
- 読み取りアクセス geo ゾーン冗長ストレージ (RA-GZRS)
各レプリケーション オプションでは、さまざまなレベルの冗長性と持続性が提供されます。 以降のセクションで、これらのオプションについて詳しく説明します。
ローカル冗長ストレージ (LRS) とは
ローカル冗長ストレージでは、データがレプリケートされて、1 つのリージョン内の単一のデータセンター施設内の障害ドメイン、またはハードウェアのラックに、3 つのコピーが格納されます。 データがレプリケートされるため、ハードウェア障害やメンテナンス作業があっても、データは引き続き使用でき、アクセスできます。
LRS では、データはハードウェア障害から保護されますが、データセンターの障害が発生した場合は保護されません。 たとえば、英国南部のアレイ 1 でハードウェア障害が発生した場合でも、アレイ 2 のデータを使用できます。 データセンター全体で障害が発生した場合は、データが失われる可能性が高くなります。
LRS は、使用可能な最もコストの低いレプリケーション オプションです。 また、停止の重大度によっては、データセンターの停止中にすべてのデータが失われる可能性があるため、最小限の持続性も提供されます。
ゾーン冗長ストレージ (ZRS) とは
ゾーン冗長ストレージ (ZRS) では、1 つのリージョン内の 3 つのストレージ クラスターにデータがレプリケートされます。 各クラスターは他の 2 つのクラスターから物理的に分離されています。つまり、各クラスターには、別の供給施設から電力やネットワークなどが提供されます。
データセンターで障害が発生した場合でも、そのリージョン内の別の可用性ゾーンからデータにアクセスできます。 通常、データは、リージョンに応じて 2 つまたは 3 つの可用性ゾーンにレプリケートされます。
可用性ゾーン (AZ) は、リージョン内の 1 つ以上のデータセンターで構成される物理的な場所です。 通常、リージョンごとに 2 または 3 個の AZ があり、各 AZ はリージョン内の他の AZ から独立しています。
ZRS は、データの 99.999999999999% の持続性を提供します。 ただし、ZRS では、すべての AZ が同じリージョンに存在するので、リージョンの障害からは保護されない可能性があります。 LRS または GRS から ZRS にデータを移行するには、ある程度の計画と手動での移行、そしてこれには AZCopy などのツールが必要です。
geo 冗長ストレージ (GRS) とは
地理的冗長 (geo 冗長) ストレージでは、複数のレベルのレプリケーションが提供されます。 データはプライマリ リージョン内で 3 回レプリケートされ、その後、このセットがセカンダリ リージョンにレプリケートされます。
GRS では、データの 6 個のコピーで済むため、最も高いレベルの持続性が提供されます。 こうした持続性により、データセンターで障害が発生した場合や、プライマリ リージョンにリージョンの問題がある場合でも、データは常に利用できます。 プライマリ リージョンで障害が発生した場合でも、セカンダリ リージョンの Azure Storage を利用できます。 セカンダリ リージョンは、ユーザーが選択したプライマリ リージョンに基づいて、自動的にプライマリ リージョンとペアになります。 このペアリングの構成を変更することはできません。
プライマリ リージョンがセカンダリ リージョンにフェールオーバーするまでは、セカンダリ リージョンのデータにはアクセスできないことに注意してください。 この時点で、セカンダリ リージョンがアクティブ リージョン (プライマリ) になり、データにアクセスできるようになります。
読み取りアクセス geo 冗長ストレージ (RA-GRS) とは
geo 冗長ストレージでは、データとオブジェクトがセカンダリ リージョンにレプリケートされるため、99.9999999999999999% の持続性が提供されます。 フェールオーバーが開始されると、プライマリ リージョンを指す DNS エントリが、セカンダリ リージョンを指すように更新されます。 現在、DNS フェールオーバー プロセスは Microsoft によって制御されています。
RA-GRS を使用する場合は、アプリケーションがやり取りする相手のエンドポイントを認識している必要があります。 セカンダリ リージョンのエンドポイントの名前には、"-secondary" が付加されます。
RA-GRS は、高可用性を必要とするアプリケーションに最適です。
現在プレビュー中の新機能を使用すると、Azure portal、PowerShell、または Azure CLI から、プライマリ リージョンとセカンダリ リージョンの間のフェールオーバーを開始できます。 プライマリ エンドポイントが使用できなくなったら、セカンダリ エンドポイントにフェールオーバーできます。
フェールオーバーと DNS エンドポイントの更新が完了すると、ストレージ アカウントの設定は LRS に戻されます。 プライマリ リージョンが再び使用可能になった後で、レプリケーションの設定を LRS から RA-GRS または GRS に戻す作業は、あなたが行う必要があります。
geo ゾーン冗長ストレージ (GZRS) とは
geo ゾーン冗長ストレージ (GZRS) は、ZRS の高可用性の利点と GRS を組み合わせたものです。 この種のレプリケーションを使用すると、データは 1 つのリージョン内の 3 つの可用性ゾーン全体にコピーされます。 また、データは、ペアになっている別のセカンダリ リージョンに 3 回レプリケートされます。 このように、ゾーン冗長データもリージョン レベルの停止から保護されます。
読み取りアクセス geo ゾーン冗長ストレージ (RA-GZRS) とは
読み取りアクセス geo ゾーン冗長ストレージ (RA-GZRS) でも GZRS と同じレプリケーション方法を使用しますが、セカンダリ リージョンから読み取ることができます。 セカンダリ リージョンにレプリケートされたデータを読み取る場合は、プライマリでダウンタイムが発生していなくても、レプリケーションの種類として RA-GZRS を使用します。
冗長ストレージの各種類を使用する場合
次の表は、冗長ストレージの各種類の最適な使用方法をまとめたものです。
レプリケーションの種類 | [印刷部数] | 使用事例 |
---|---|---|
LRS | 3 | データの高可用性は維持されますが、コンプライアンス上の理由から、ローカル データセンターを離れることは許可されていません。 |
ZRS | 3 | 複数の物理的な場所に冗長性を持たせる必要がありますが、コンプライアンスのため、データがリージョンを離れることは許可されていません。 |
GRS | 6 | リージョン全体が停止している場合でも、アプリからデータにアクセスできます。 |
RA-GRS | 6 | アプリは複数の地理的な場所から読み取りを行うため、ユーザーにより近い場所からサービスを提供できます。 |
GZRS | 6 | プライマリ リージョンに停止が発生し、セカンダリ リージョンに停止しているデータセンターがある場合でも、アプリからデータにアクセスできます。ただし、プライマリ リージョンがダウンしていない限り、セカンダリ リージョンから読み取ることはできません。 |
RA-GZRS | 6 | お使いのプライマリ リージョンのデータセンターが稼働している場合でも、ユーザーにより近い場所からサービスを提供するために、お使いのセカンダリ リージョンから定期的にデータが読み取られます。 |
レプリケーション戦略を変更する
Azure ストレージ アカウントを作成した後で、レプリケーション戦略を変更できます。 ストレージ アカウントのレプリケーションの状態を、LRS から GRS または LRS から RA-GRS に切り替えたり、元に戻したりすることができます。 レプリケーション戦略を GZRS に変更する場合、使用するプロセスは、ご利用のアカウントの現在のレプリケーション戦略によって異なります。