ゾーンレベルの障害によって Vector Retrieval Service for Milvus (Milvus) サービス全体が利用できなくなることを防ぐために、Milvus はクロスゾーンデプロイモードを提供します。このトピックでは、これらのデプロイモードのアーキテクチャを説明し、それぞれの違いを示します。
背景情報
シングルゾーンの Milvus インスタンスでは、すべてのサービスが 1 つのゾーンにデプロイされます。データセンター障害などの極端なケースでは、単一のアベイラビリティーゾーン (AZ) が利用できなくなり、その結果、Milvus サービス全体が利用できなくなります。
マルチ AZ デプロイ (ベーシック) およびマルチ AZ デプロイ (HA) インスタンスでは、メタデータサービス、メッセージサービス、およびデータが複数のデータセンターに分散配置されます。この設計により、ゾーンで障害が発生しても、データ整合性とメタデータサービスの可用性が確保されます。サービス全体の可用性は、残りの稼働中ゾーンにあるコンピューティングリソースとストレージリソースに依存します。
マルチ AZ デプロイ (ベーシック) とマルチ AZ デプロイ (HA) の主な違いは次のとおりです:
-
マルチ AZ デプロイ (ベーシック):このエディションは 1 セットのコンピューティングリソースで構成され、コスト効率に優れています。障害からの復旧に一定の時間を要し、目標復旧時間 (RTO) は 1 時間未満です。
-
マルチ AZ デプロイ (HA):このエディションは 2 セットのコンピューティングリソースで構成されます。サービス障害が発生した場合、システムはセカンダリクラスターにフェールオーバーします。RTO は 3 分未満です。
デプロイアーキテクチャ
マルチ AZ デプロイ (ベーシック)

マルチ AZ デプロイ (ベーシック) エディションのアーキテクチャは、次の方法でデータとサービスの高可用性を確保します:
-
メタデータサービスのクロスデータセンターデプロイ:すべてのメタデータノードを 3 つのデータセンターに分散してデプロイし、メタデータの高可用性を確保します。
-
メッセージサービスのクロスデータセンターデプロイ:すべてのメッセージサービスノードを 3 つのデータセンターに分散してデプロイし、メッセージデータの高可用性を確保します。
-
コンピューティングノードの単一データセンターデプロイ:サービス間のレイテンシーを最小化するため、コンピューティングノードはデフォルトでプライマリゾーンにデプロイされます。プライマリゾーンで障害が発生した場合、コンピューティングノードはセカンダリゾーンで再作成されます。
-
OSS デプロイモードのアップグレード:OSS はゾーン冗長ストレージを使用するようにアップグレードされます。これにより、コールドストレージの安定性とデータの高可用性が確保されます。
マルチ AZ デプロイ (HA)

マルチ AZ デプロイ (HA) エディションのアーキテクチャは、次の方法でデータとサービスの高可用性を確保します:
-
メタデータサービスのクロスデータセンターデプロイ:すべてのメタデータノードを 3 つのデータセンターに分散してデプロイし、メタデータの高可用性を確保します。
-
メッセージサービスのクロスデータセンターデプロイ:すべてのメッセージサービスノードを 3 つのデータセンターに分散してデプロイし、メッセージデータの高可用性を確保します。
-
コンピューティングノードのデュアルゾーンデプロイ:サービスレイテンシーを最小化するため、コンピューティングノードはデフォルトでプライマリゾーンにデプロイされます。バックアップのコンピューティングノードはセカンダリゾーンにデプロイされ、データを同期的にロードします。プライマリゾーンで障害が発生した場合、Vector Retrieval Service for Milvus バックエンドはプライマリゾーンとセカンダリゾーンを切り替え、セカンダリゾーンが読み取り/書き込みサービスの提供を継続します。
-
OSS デプロイモードのアップグレード:OSS はゾーン冗長ストレージを使用するようにアップグレードされます。これにより、コールドストレージの安定性とデータの高可用性が確保されます。
クロスリージョン HA エディションのアーキテクチャ
クロスリージョン HA エディションのアーキテクチャは、次の方法でデータとサービスの高可用性を確保します:
-
メタデータサービスのクロスリージョンデプロイ:すべてのメタデータノードを複数リージョンに分散してデプロイし、メタデータの高可用性を確保します。
-
メッセージサービスのクロスリージョンデプロイ:すべてのメッセージサービスノードを複数リージョンに分散してデプロイし、メッセージデータの高可用性を確保します。
-
コンピューティングノードのクロスリージョンデプロイ:サービスレイテンシーを最小化するため、コンピューティングノードはデフォルトでプライマリリージョンにデプロイされます。バックアップのコンピューティングノードはセカンダリリージョンにデプロイされ、データを同期的にロードします。プライマリリージョンで障害が発生した場合、Vector Retrieval Service for Milvus バックエンドはプライマリリージョンとセカンダリリージョンを切り替え、セカンダリリージョンが読み取り/書き込みサービスの提供を継続します。
-
OSS デプロイモードのアップグレード:OSS はゾーン冗長ストレージを使用するようにアップグレードされます。これにより、コールドストレージの安定性とデータの高可用性が確保されます。
高可用性の比較
次の表では、Milvus のシングルゾーンインスタンス、マルチ AZ デプロイ (ベーシック) インスタンス、マルチ AZ デプロイ (HA) インスタンス、およびクロスリージョン HA インスタンスについて、可用性、パフォーマンス、その他の特性を比較します。ビジネス要件に基づいてデプロイモードを選択してください。
|
項目 |
シングルゾーン |
マルチ AZ デプロイ (ベーシック) |
マルチ AZ デプロイ (HA) |
クロスリージョン HA エディション |
|
コンピューティングノードの AZ 数 |
1 |
1 |
2 |
リージョン >= 2、AZ >= 3 |
|
データセンター障害時の目標復旧時点 (RPO) と目標復旧時間 (RTO) |
データセンターレベルの災害復旧機能はありません |
|
|
|
|
サービスレベルアグリーメント (SLA) |
99.9% |
99.9% |
99.95% |
99.99% |
|
コスト |
1 |
|
|
|
|
パフォーマンス |
1 |
|
|
|
制限事項
-
マルチ AZ デプロイ (HA) では、プライマリゾーンとセカンダリゾーンのそれぞれに 1 セットのコンピューティングノードが必要です。そのため、インスタンスを作成またはスケールアウトする際は、ノード数を 2 の倍数にする必要があります。
-
マルチ AZ デプロイ (HA) は Milvus バージョン 2.4 をサポートしていません。
-
クロスリージョン HA エディションのプライマリリージョンとセカンダリリージョンは、異なるリージョンに配置する必要があります。インスタンスを作成またはスケールアウトする際は、ターゲットリージョンに十分なリソース在庫があることを確認してください。