如何解决从Helm安装后无法使用root密码登录mongo
我使用头盔在kubernetes上安装了mongodb:
helm install mongo bitnami/mongodb
现在我正尝试使用通过此命令获得的root密码进行连接
# kubectl get secret --namespace default mongo-mongodb -o jsonpath="{.data.mongodb-root-pa
ssword}" | base64 --decode
AXMCSkdNm6
使用root密码和root用户登录,我无法登录。我收到“身份验证失败”错误。在我的mongodb桌面客户端中尝试,也在mongo pod内部尝试:
$ mongo admin --username root --password AXMCSkdNm6
MongoDB shell version v4.4.1
connecting to: mongodb://127.0.0.1:27017/admin?compressors=disabled&gssapiServiceName=mongodb
Error: Authentication failed. :
connect@src/mongo/shell/mongo.js:374:17
@(connect):2:6
exception: connect failed
exiting with code 1
我在做什么错了?
更新:
我设法总是在全新安装的k8s / helm上重现它:
- 第一次安装mongo-身份验证完美
- 通过
helm delete mongo
删除mongo
- 立即安装mongo-身份验证失败
解决方法
使用以下命令。请注意--authenticationDatabase admin
部分
mongo admin --host "mongo-mongodb" --authenticationDatabase admin -u root -p AXMCSkdNm6
authenticationDatabase
指定已创建指定的--username
的身份验证数据库
好的,很长一段时间后我发现了问题...
我删除发行版并创建新发行版后,MongoDB身份验证停止工作。原因是我在两个版本中都使用了相同的持久性存储。因此,当我删除第一个发行版时,数据并没有删除,而当我开始新发行版时,由于使用了先前发行版中的旧数据而感到困惑。
当我在删除发行版时删除永久性存储中的所有数据时,一切正常。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。