この記事では、Azure Storage Actions の信頼性サポートについて説明し、可用性ゾーンによるリージョン内の回復性と、リージョン間のディザスター リカバリーおよび事業継続の両方を取り上げます。 Azure における信頼性の原則の詳細については、Azure の信頼性に関するページを参照してください。
Azure Storage Actions は、複数のストレージ アカウントにまたがる数百万ものオブジェクトに対して一般的なデータ操作を実行するために使用できるサーバーレス フレームワークです。 サービス自体はリージョン単位であり、可用性ゾーンの SKU またはサポートはありません。 ただし、サービスのコントロール プレーンはゾーン冗長を自動的にサポートします。 ストレージ アカウントがゾーン冗長構成で実行されているかどうかに応じて、データ プレーンが冗長性をサポートする場合もあります。
可用性ゾーンのサポート
可用性ゾーン は、Azure リージョン内のデータセンターの物理的に分離されたグループです。 1 つのゾーンで障害が発生した際には、サービスを残りのゾーンのいずれかにフェールオーバーできます。
Azure Storage Actions サービスはリージョン単位であり、SKU や可用性ゾーンを提供しませんが、ゾーン冗長はコントロール プレーンから、条件付きでデータ プレーンから使用できます。
サービスのコントロール プレーンはゾーン冗長です。 あるリージョンでゾーンがダウンしても、コントロール プレーンは引き続き使用できます。 ゾーンダウンのシナリオ中も、タスクの定義と割り当てを引き続き管理できます。
データ プレーン (タスク割り当ての実行) は、親ストレージ アカウントからゾーンのプロパティを継承します。 障害が発生したゾーンにストレージ アカウントがデプロイされている場合、そのアカウントは使用できなくなり、お客様の観点からは、データ プランを使用できなくなります。 ストレージ アカウントがゾーン冗長である場合、アカウントは引き続き使用可能であり、サービスはアカウントに対する操作を引き続き実行します。
ゾーン ダウン エクスペリエンス
ゾーン完了シナリオでは、ストレージ アクション サービスを引き続き使用できます。 タスクの進行状況は、その実行されているストレージ アカウントの可用性ゾーンのサポートによって異なります。 ダウンしたゾーンの影響をアカウントが受けない場合、タスクは続行されます。 それ以外の場合、タスクは失敗します。
ゾーン停止の準備と復旧
ストレージ アクション サービスはゾーン単位ではありませんが、ストレージ アカウントはそうです。 ストレージ アカウントがゾーン停止の影響を受けると、アカウントに割り当てられているストレージ タスクは失敗します。 ゾーンとストレージ アカウントが使用可能になると、スケジュールされたタスクはスケジュールに従って引き続き実行されます。 タスクが 1 回実行されるように構成されている場合、状況に応じてタスクをもう一度実行するようにスケジュールする必要があります。
リージョン間のディザスター リカバリーおよび事業継続
ディザスター リカバリー (DR) とは、自然災害やデプロイの失敗など、ダウンタイムやデータ損失につながる影響の大きいイベントから組織が復旧するために使用するプラクティスを指します。 原因に関係なく、災害に対する最善の解決策は、明確に定義されテストされた DR プランと、DR を積極的にサポートするアプリケーション設計です。 ディザスター リカバリー計画の作成を開始する前に、 ディザスター リカバリー戦略の設計に関する推奨事項を参照してください。
DR の場合、Microsoft は 共有責任モデルを使用します。 このモデルでは、Microsoft はベースライン インフラストラクチャとプラットフォーム サービスを確実に利用できるようにします。 ただし、多くの Azure サービスでは、データが自動的にレプリケートされたり、障害が発生したリージョンから別の有効なリージョンにクロスレプリケートされたりすることはありません。 それらのサービスに対して、ワークロードに適したディザスター リカバリー計画を設定する責任はユーザーにあります。 Azure PaaS (サービスとしてのプラットフォーム) オファリング上で実行されるほとんどのサービスには、DR をサポートするための機能とガイダンスが用意されています。 サービス固有の機能を使用して高速復旧をサポートし、DR プランの開発に役立ちます。
GRS と GZRS を使用するストレージ アカウントは、ストレージ アカウントのフェールオーバーが発生した場合にセカンダリ リージョンにデータをレプリケートします。 ストレージ アクションのビジネス継続性は、ターゲット ストレージ アカウントの冗長性構成によって大きく異なります。 geo 冗長性を使用して構成されたストレージ アカウントは、自動フェールオーバー プロセスの恩恵を受けます。 この自動管理により、将来のタスク割り当てのイテレーションが、単一または繰り返しのどちらであっても、問題なくセカンダリ リージョンで実行されるようになります。 ただし、フェールオーバー時に進行中のストレージ タスクでエラーが発生する可能性があります。 新しいストレージ タスクとストレージ タスクの割り当ては、引き続き期待どおりに機能します。
ストレージ アカウントの一貫した監視が重要です。 フェールオーバーでは、タスクのレポートと監視を十分に確認して、すべての BLOB 操作が正常に完了したことを確認し、注意が必要な不一致を特定する必要があります。
停止の検出、通知、管理
サービス自体に障害が発生しても、ストレージ タスクから通知は送信されません。 ストレージ タスクの状態を確認し、サービスまたはリージョンが復旧した後にタスクを再試行することが重要です。