配置タイプの手順に従って、 MongoDB Enterprise Kubernetes Operator ではなくMongoDB Controls for Kubernetes Operator を使用して、MongoDB EnterpriseおよびMongoDB Ops Manager配置の管理を開始します。
MongoDB Enterprise演算子からほとんどの配置でKubernetes演算子用のMongoDBコントロールに移行
ほとんどの配置シナリオで移行するには、次の手順に従います。演算子ライフサイクル マネージャー(OLM)を使用して演算子配置(通常はOpenShiftクラスター)を管理している場合は、代わりにこれらの手順を参照してください。
複数のKubernetesクラスターにリソースを配置している場合は、次の 2 つのタスクを実行します。
kubectlプラグイン バイナリをバックアップします。これにより、問題が発生した場合に、 Kubernetes Operator 用のMongoDBドライバーへの移行を元に戻すのが簡単になります。メンバーノードクラスターを構成するには、マルチクラスター設定のドキュメントに従う(MongoDB Controllers for Kubernetes 演算子リリースの
kubectlプラグインを使用していることを確認してください)か、Helmテンプレートを使用して手動で行います。重要
ステップ 5 で MongoDB Controllers for Kubernetes 演算子 を配置する前に、MongoDB Controllers for Kubernetes 演算子 の RBAC をノードクラスターに配置する必要があります。新しいRBACリソースは
mongodb-kubernetes-operator-で始まります。また、最新バージョンのkubectlプラグインバイナリを実行した後、中央クラスターにmongodb-kubernetes-operator-member-listが存在することも確認する必要があります。
Kubernetes Operator CRD 用のMongoDBコントロールを手動でインストールします。
kubectl apply -f https://raw.githubusercontent.com/mongodb/mongodb-kubernetes/1.5.0/public/crds.yaml
CRD がKubernetesクラスターにインストールされていることを確認するには、mongodbcommunity CRD を検索します。
Tip
MongoDB Ops ManagerとMongoDB Enterpriseのカスタムリソース名は、 Kubernetes Operator 用のMongoDBドライバーでは変更されていません。 MongoDB Community リソースが配置されていない場合もありますが、mongodbcommunity カスタム リソースを検索することがMongoDB Controls for Kubernetes Operator のインストールを確認する最も簡単な方法です。
kubectl get crds | grep mongodbcommunity
Kubernetes Operator 用の新しいMongoDBドライバー をインストールします。
次のいずれかのインストール方法を選択します。
警告
Enterprise Kubernetes Operator配置のデフォルトのHelmチャート値をオーバーライドした場合は、リソース名が競合して移行が成功しなくなる可能性があるため、 Kubernetes Operator 用のMongoDBドライバーの配置では同じ値を使用しないでください。
helm repo add mongodb https://mongodb.github.io/helm-charts && \ helm repo update && \ helm upgrade --install mongodb-kubernetes-operator mongodb/mongodb-kubernetes --namespace <your-namespace>
警告
Enterprise Kubernetes Operator配置の YAML 構成をカスタマイズした場合は、移行が成功を妨げる可能性のあるリソース名の競合を避けるために、カスタマイズがMongoDB コントローラー for Kubernetes 演算子 配置と互換性があることを確認してください。
次の kubectl コマンドを実行して、選択したバージョンのKubernetes 演算子をKubernetesクラスターに配置します。
kubectl apply -f https://raw.githubusercontent.com/mongodb/mongodb-kubernetes/1.5.0/public/mongodb-kubernetes.yaml
MongoDB Controls for Kubernetes Operator のリコンストラクターが、既存のカスタム リソースの実行と処理を行います。
Kubernetes Operator 用のMongoDBドライバーは、更新されたイメージ、ServiceAccounts、およびその他のリソースを適用します。
初期化コンテナイメージにカスタム セキュリティ構成がある場合は、YAML ファイルを更新して、mongodb-enterprise- ではなく新しい mongodb-kubernetes- プレフィックスを使用します。
重要
この手順により、配置された ポッドのローリング再起動がトリガーされます。RBAC 名がMongoDB Enterprise Kubernetes Operator からMongoDB Controls for Kubernetes Operator に変更されたためです。
リソースが調整され(Running フェーズに達して)、正常になるまで待ちます。
デフォルトでは、MongoDB Controllers for Kubernetes 演算子は複数のリソースを並行して調整しません。デフォルトの動作を変更するには、https://github.com/mongodb/mongodb-kubernetes/blob/1.5.0/public/mongodb-kubernetes.yaml#L408を参照し、MDB_MAX_CONCURRENT_RECONCILES環境変数を増やしてください。
MongoDB Enterprise Kubernetes演算子から、 OpenShiftまたはその他のプラットフォーム上の演算子ライフサイクル マネージャー(OLM)を使用するKubernetes演算子用のMongoDBコントロールに移行
ORM ( OpenShiftクラスター上の一般的な配置方法であるが、他のKubernetesプラットフォームでも可能)を使用してMongoDB Enterprise Kubernetes Operator からMongoDB Controls for Kubernetes Operator に移行するには、古いオペレーターをアンインストールしてから、新しいオペレーターをインストールします。
重要
Enterprise Kubernetes Operatorを削除しても、 Kubernetesに配置するデータベースとMongoDB Ops Managerリソースには影響しません。移行プロセスはワークロードに影響を与えません。
クラスターで使用可能なカタログからKubernetes Operator 用のMongoDBドライバーをインストールします。
Kubernetes Operator 用のMongoDBコントロールは、Red Hat の認定演算子カタログ、および Operator Hub.io カタログから入手できます。
kubectl create -f <path-to-bundle>
Community Kubernetes OperatorからKubernetes Operator 用のMongoDBコントロールへの移行
Kubernetes Operator 用のMongoDBコントロールに移行する方法については、次のリソースを参照してください。