Kubernetes の MongoDB コントローラー演算子は、MongoDB データベース配置と MongoDB Ops Manager のカスタム リソース定義 (CRD) で Kubernetes API を拡張する Kubernetes コントローラーです。これらのカスタム リソースが Kubernetes プリミティブにマップされる方法、Kubernetes 演算子が変更を調整する方法、およびコンポーネントが互いに接続する方法を理解することは、最初の配置を計画する前に不可欠欠です。
このセクションでは、単一クラスターのスタンドアロン配置から、バックアップインフラを含むマルチクラスターの MongoDB Ops Manager トポロジーまで、Kubernetes Operator がマネージするすべてのリソースのアーキテクチャについて説明します。
演算子の概要
Kubernetes 演算子 は、専用の 名前空間 で 配置 として 実行する。タイプ MongoDB、MongoDBOpsManager、MongoDBUser、MongoDBMultiCluster のカスタム リソースを監視します。これらのリソースのいずれかを作成または更新すると、Kubernetes 演算子は仕様を読み取り、検証し、宣言された状態に合わせるために必要な Kubernetes オブジェクト (StatefulSets、Services、Secrets、ConfigMaps) を調整します。
Kubernetes 演算子は、MongoDB Ops ManagerのMongoDB Agentのコンテナ イメージを提供します。これにより、完全なモニタリング、バックアップ、オートメーションを使用してMongoDB データベース クラスターを管理および配置できます。Kubernetesコンテナは、MongoDB Ops Managerが mongod プロセスのインストールを調整し、クラスター構成を配置するホストとして機能します。
配置の一部として、Kubernetes 演算子は StatefulSets の永続ボリュームを作成します。コンテナはこれらの永続ボリュームを使用して、再起動間でクラスター状態を維持します。
次の図は、Kubernetes 演算子を使用した Kubernetes インスタンスの構成フローを示しています。
Kubernetes Operator のアーキテクチャは、2 つのプライマリリソースファミリで構成されています。
この
MongoDBOpsManagerKubernetes Operator が MongoDB Ops Manager コンポーネント(アプリケーションデータベース、MongoDB Ops Manager アプリケーション、バックアップデーモン)を配置するためのカスタムリソース。配置が実行されると、MongoDB Ops Manager コンポーネントは、MongoDB クラスター構成に対して行った更新を調整します。詳細については、「MongoDB Ops Manager リソースアーキテクチャ」を参照してください。この
MongoDBKubernetes Operator がデータベース インスタンス (スタンドアロン、レプリカセット、またはシャーディングされたクラスター)とMongoDBUserリソースを配置するためのカスタム リソース。配置後、これらのリソースは、ユーザーまたは MongoDB クラスター構成に対して行った更新を調整します。詳しくは、 MongoDB データベース リソース アーキテクチャ を参照してください。
アーキテクチャガイド
- MongoDBデータベース リソースのアーキテクチャ
- 配置タイプ (スタンドアロン、レプリカ セット、シャーディング クラスター)、StatefulSet の構成、MongoDB と MongoDBUser の調整ワークフローの図。
- Ops Manager リソースのアーキテクチャ
- アプリケーションデータベース、MongoDB Ops Manager アプリケーション、バックアップデーモンコンポーネントのアーキテクチャ、トポロジーの検討事項、MongoDB Ops Manager の調整ワークフロー。
- マルチクラスター アーキテクチャ
- 単一クラスター モードと复数クラスター モード、制限、機能の違異、配置図 (サービス メッシュのありなし)、Ops Manager の複数クラスター図、ネットワーキング、ロード バランシング、サービス メッシュ要件、およびパフォーマンスの考慮事項。
Tip
MongoDB データベース リソース仕様 — MongoDB データベース リソース仕様
MongoDB Ops Manager リソース仕様 — MongoDB Ops Manager リソース仕様
マルチKubernetes-クラスター リソース仕様 — マルチクラスター仕様
マルチクラスター配置の前提条件 — マルチクラスターの前提条件
複数の Kubernetes クラスターに MongoDB Ops Manager リソースを配置する — 複数のクラスターに MongoDB Ops Manager を配置する
MongoDB Ops Managerと AppDB リソースの障害復旧 — 障害復旧手順
参照アーキテクチャ — 参照アーキテクチャ