ストレージ アカウントの最終同期時刻プロパティを確認する
geo レプリケーションでは、自然災害やその他のプライマリ リージョンでの重大な障害が発生した場合でも、データの持続性が提供されます。 ストレージ アカウントを構成するときに、プライマリ リージョンから何百キロメートルも離れたセカンダリ リージョンにデータをコピーするように選択できます。 さらに、セカンダリ リージョンへの読み取りアクセスを有効にすると、プライマリ リージョンが使用できなくなった場合に、データの読み取り操作が引き続き可能になります。 この方法では、プライマリ リージョンが応答しない場合に、セカンダリ リージョンからの読み取りにシームレスに切り替えるように高可用性アプリケーションを設計できます。
geo 冗長ストレージ (GRS) と geo ゾーン冗長ストレージ (GZRS) のどちらを使用しても、データをセカンダリ リージョンに非同期的にレプリケートできます。 セカンダリ リージョンへの読み取りアクセスについては、読み取りアクセス geo 冗長ストレージ (RA-GRS) または読み取りアクセス geo ゾーン冗長ストレージ (RA-GZRS) を有効にします。 Azure Storage に用意されている冗長性のさまざまなオプションの詳細については、「Azure Storage の冗長性」を参照してください。
この記事では、ストレージ アカウントの [最終同期時刻] プロパティを確認して、プライマリ リージョンとセカンダリ リージョンの不一致を評価できるようにする方法について説明します。
[最終同期時刻] プロパティの概要
geo レプリケーションは非同期であるため、プライマリ リージョンに書き込まれたデータが、障害が発生した時点でセカンダリ リージョンにまだ書き込まれていない可能性があります。 [最終同期時刻] プロパティは、プライマリ リージョンのデータがセカンダリ リージョンに書き込まれたことが保証される最後の時刻を示します。 階層型名前空間を持つアカウントの場合、その階層型名前空間によって管理されるメタデータにも同じ Last Sync Time プロパティが適用されます (ACL を含む)。 最終同期時刻より前に書き込まれたすべてのデータおよびメタデータはセカンダリで使用できますが、最終同期時刻より後に書き込まれたデータおよびメタデータは、セカンダリに書き込まれていない場合があり、失われる可能性があります。 障害が発生した場合はこのプロパティを使用して、カスタマーマネージド (計画外) フェールオーバーを開始することによって被る可能性があるデータ損失の量を推定します。
[最終同期時刻] プロパティは、GMT 日付/時刻の値です。
[最終同期時刻] プロパティを取得する
PowerShell または Azure CLI を使用して、 [最終同期時刻] プロパティの値を取得できます。
PowerShell を使用してストレージ アカウントの最終同期時刻を取得するには、バージョン 1.11.0 以降の Az.Storage モジュールをインストールします。 次に、ストレージ アカウントの GeoReplicationStats.LastSyncTime プロパティを確認します。 プレースホルダー値をお客様独自の値に置き換えてください。
$lastSyncTime = $(Get-AzStorageAccount -ResourceGroupName <resource-group> `
-Name <storage-account> `
-IncludeGeoReplicationStats).GeoReplicationStats.LastSyncTime