从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 正常工作。验证输出是否包含您在迁移之前创建的搜索索引。