我正在尝试使用librbd和Python连接到我的Ceph集群。如果我尝试使用Ceph文档中的这示例,就会看到一个错误,上面写着“连接到集群的错误:错误代码95”。请参阅下面的代码示例。
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import rados
>>> cluster = rados.Rados(conffile='/etc/ceph/ceph.conf')
>>> cluster.connect()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "rados.pyx", line 785, in rados.Rados.connect (/build/ceph-10.2.6/src/build/rados.c:10073)
rados.Error: error connecting to the cluster: error code 95HEALTH_OK集群已经启动并正常运行了。这个错误代码意味着什么,我能做些什么来解决它?
发布于 2017-04-11 12:37:31
好吧,我找到了解决办法。问题是只有sudo用户才能读取/etc/ceph/中的client密钥/etc/ceph/。根据您的情况,您可以:
我通过更新文件权限来解决这个问题。这允许客户端节点上的所有用户运行ceph命令:
$ sudo chmod 644 /etc/ceph/ceph.client.admin.keyring
https://stackoverflow.com/questions/43187243
复制相似问题