Kubernetes Operator v1.6 以降のMongoDB Search とベクトル検索では、mongod によって発行された検索インデックスクエリとインデックス管理コマンドに gRPCプロトコルが使用されます。 Kubernetes Operator は、 Kubernetesで直接管理するMongoDBインスタンスを自動的に移行します。ただし、 MongoDB Server をKubernetesクラスターの外部に配置した場合は、gRPC の新しいエンドポイントとプロトコルオプションを使用するために、手動で適用された setParameterスタートアップオプションを更新する必要があります。
始める前に
Kubernetes Operator 用のMongoDBコントロールを v1.6 にアップグレードする前に、外部のMongoDB Enterprise Edition を v8.2 以降にアップグレードする必要があります。
外部MongoDB Enterpriseエディション サーバー構成を移行する
Kubernetes Operator 用のMongoDBコントロール を v1.6 にアップグレードすると、 Kubernetes Operator の新しいバージョンは次のようになります。
既存の MongoDBSearch リソースを調整します。
新しい gRPCプロトコルオプションを切り替えます。
MongoDBSearchリソースがRunning 状態にある場合は、次のアクションを実行してMongoDB Enterpriseエディションの外部サーバー構成を移行できます。
Kubernetes Service のポートを更新します。
MongoDBSearch サービスへの外部アクセスを有効にするために ステップ 4LoadBalancerで作成した サービス内で、port とtargetPort のマッピングを27027 から27028 に更新します。
キーファイル参照 を削除します。
ステップ で作成した MongoDBSearchリソースで、 3spec.source.external.keyfileSecretRefフィールドを削除します。このフィールドで参照されていたKubernetesシークレットを削除することもできます。
MongoDB Search とベクトル検索 を検証します。
集計を実行中て、$listSearchIndexes MongoDB Search とベクトル検索 が正しく動作していることを確認します。出力に、移行前に作成した検索インデックスが含まれていることを確認します。