CloudHub 高可用性および障害回復

CloudHub は高可用性 (HA) と、アプリケーションおよびハードウェアの障害に対する障害回復を提供します。

CloudHub はそのインフラストラクチャで Amazon AWS を使用しているため、可用性は Amazon に依存します。CloudHub の可用性とデプロイメントはさまざまなリージョンに分割され、各リージョンは、対応する Amazon リージョンを参照します。Amazon リージョンがダウンすると、そのリージョン内のアプリケーションは使用できなくなり、他のリージョンに自動的に複製されません。

hadr aws global infrastructure

たとえば、米国東部リージョンが使用できない場合、CloudHub の管理 UI だけでなく、デプロイメントを可能にするさまざまな REST サービスも、リージョンの可用性が復元されるまで使用できません。つまり、米国東部がダウンしている間、新しいアプリケーションをデプロイできません。

CloudHub は、メッセージの信頼性確保を目的として使用する永続的なキューの形式で内部メッセージングメカニズムを提供します。永続的なキューはリージョン内で高い可用性を発揮します。ただし、リージョンを使用できない場合、この永続的なキューが失われるため、何らかのデータ損失が発生する可能性があります (通常はユースケースに応じて数秒または数分)。

デプロイ先のリージョンに関係なくすべてのアプリケーションの特定の CloudHub モジュール (Anypoint Object Store v1 など)、アプリケーション設定、および Insight 関連の情報は米国東部リージョンで維持されます。Anypoint Object Store v2 は、デプロイされた CloudHub アプリケーションと同じリージョンで維持されます。Anypoint Object Store v1 および v2 では、リージョンを使用できなくなった場合もデータは保持され、リージョンが復旧すると再度使用可能になります。

Anypoint Virtual Privte Cloud (Anypoint VPC) のセットアップはリージョンレベルです。このため、リージョンを使用できない場合、他のリージョンで以前の Anypoint VPC セットアップが完了していない限り、Anypoint VPC を使用できません。

Anypoint CloudHub のデフォルトデプロイメントモデル

アプリケーションで複数のワーカーを使用する場合、CloudHub はデフォルトで個別の可用性ゾーンにワーカーをデプロイし、可用性ゾーン全体に対して HA を提供します。可用性ゾーン間の距離は可変であり、一般に 350 マイル以上離れることはありません。

hadr am web services

アプリケーションで 1 つのワーカーのみを使用し、可用性ゾーンが使用できなくなった場合、そのゾーンが使用可能になったときにアプリケーションを手動で再起動する必要があります。可用性ゾーンまたはリージョンで障害が発生したときにアラートを受信するように status.mulesoft.com でアラートをセットアップできます。

Anypoint CloudHub の代替デプロイメントモデル

ロードバランサ (クラウドまたはオンプレミス) は、さまざまなリージョンにデプロイされたアプリケーションを参照することで、より適切な障害回復戦略を提供できます。

hadr load balancer

ステートレスなインテグレーション

一般的な設計原則として、インテグレーションを本質的にステートレスにすることが重要です。つまり、さまざまなクライアントの呼び出しや実行 (スケジュールされたサービスの場合) の間でトランザクション情報を共有しないということです。システムの制限により一部のデータをミドルウェアで維持する必要がある場合、ミドルウェアのインフラストラクチャまたはメモリ内ではなく、外部ストア (データベース、メッセージキューなど) でデータを保持する必要があります。

特にクラウド内で規模を拡大する場合、各ワーカーやノードの状況および各ワーカーやノードで使用するリソースは、他のワーカーから独立している必要があります。このモデルでは、パフォーマンスと拡張性だけでなく信頼性も向上します。

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub