AnyShare-AnyShare 7.0.4.4 升级 7.0.4.5 执行更创建 mongodb 索引失败: create index failed: Name or service not kn
关键字
mongodb索引、Name or service not known
适用产品
- AnyShare 7.0.4.4
问题描述
AnyShare 7.0.4.4 升级 AnyShare 7.0.4.5 为Mongodb 小对象表添加索引,创建索引失败,出现如下图所示提示:
create index failed: Name or service not known

问题影响
索引创建失败,无法进行下一步操作。
问题原因
Mongodb 集群环境下,脚本未选择在 Mongodb Master 上操作。
解决方案
1.在云盘 kubernetes 任意 Master 节点操作如下命令,当返回 True 则为 Mongodb Master 节点 。
注意:Mongodb 密码默认为 eisoo.com123 。或通过命令获取:
proton-cli get conf |grep -C 5 mongodb|grep admin_passwd

kubectl exec -n resource proton-mongodb-proton-mongodb-0 -- /usr/bin/mongo -uroot -peisoo.com123 127.0.0.1:28000/admin --quiet --eval 'printjson(db.isMaster().ismaster)'
kubectl exec -n resource proton-mongodb-proton-mongodb-1 -- /usr/bin/mongo -uroot -peisoo.com123 127.0.0.1:28000/admin --quiet --eval 'printjson(db.isMaster().ismaster)'
kubectl exec -n resource proton-mongodb-proton-mongodb-2 -- /usr/bin/mongo -uroot -peisoo.com123 127.0.0.1:28000/admin --quiet --eval 'printjson(db.isMaster().ismaster)'

2.在云盘 kubernetes 任意 Master 节点操作如下命令,确认 Mongodb 服务所在节点,结合第一步操作,返回 true 为 proton-mongoddb-proton-mongodb-1,所在节点 node-19-4 。
kubectl get po -o wide -A | grep mongodb

3.将执行脚本上传至 node-19-4 节点;在 node-19-4 节点上重新执行脚本。
python create_index.py

更多信息
Mongodb 多节点集群环境下;Master 节点通常情况下为 Mongodb-0 ,随着业务网络环境变化等情况,需要操作前进行确认 Master 主节点所在位置。