从MongoDB Controllers for Kubernetes 操作符 v1.6 开始,MongoDB Search 和 向量搜索 使用 gRPC协议执行 mongod 发出的搜索索引查询和索引管理命令。Kubernetes 操作符自动迁移其在 Kubernetes 上直接托管的 MongoDB 实例。但是,如果您将MongoDB Server部署在Kubernetes集群外部,则必须更新手动应用的setParameter初创企业选项,以使用gRPC的新终结点和协议选项。
开始之前
在将MongoDB Controllers for Kubernetes 操作符升级到 v1.6 之前,您必须将外部MongoDB Enterprise Edition升级到 v8.2 或更高版本。
迁移外部MongoDB Enterprise版服务器配置
将MongoDB Controllers for Kubernetes Operator升级到 v1.6( Kubernetes Operator 的新版本)后:
协调现有 MongoDBSearch 资源。
切换新的 gRPC协议选项。
当 MongoDBSearch资源处于 Running 省/市/自治区时,您可以执行以下操作来迁移外部MongoDB Enterprise Edition服务器配置:
更新Kubernetes服务中的端口。
在 步骤 4 中创建的用于启用对 MongoDBSearch 服务的外部访问权限的 LoadBalancer 服务中,将 port 和 targetPort 映射从 27027 更新为 27028。
删除密钥文件引用。
在步骤 3中创建的 MongoDBSearch资源中,删除spec.source.external.keyfileSecretRef字段。您还可以删除此字段中引用的kubernetes secret。
更新Cloud Manager或Ops Manager实例中的参数。
在Cloud Manager或Ops Manager部署配置中,对 setParameter初创企业选项进行以下更改并部署更改:
修改
mongotHost和searchIndexManagementHostAndPort选项以使用端口号27028。添加名为
useGrpcForSearch的新选项并将其设立为true。
部署更改后,等待副本集滚动重启完成。
验证MongoDB Search 和 Vector Search。
通过运行$listSearchIndexes聚合,确保MongoDB Search 和 Vector Search 正常工作。验证输出是否包含您在迁移之前创建的搜索索引。