如何使用librbd(Python)连接到Ceph集群
我正在尝试使用librbd和Python连接到我的Ceph集群。如果我尝试Ceph文档中的示例,我会得到一个错误,上面写着“连接到集群时出错:错误代码95”。请参见下面的代码示例如何使用librbd(Python)连接到Ceph集群,python,ceph,Python,Ceph,我正在尝试使用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. >&g
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 95
Python 2.7.12(默认,2016年11月19日06:48:10)
[GCC 5.4.0 20160609]关于linux2
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>进口雷达
>>>cluster=rados.rados(conffile='/etc/ceph/ceph.conf')
>>>cluster.connect()
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“rados.pyx”,第785行,位于rados.rados.connect(/build/ceph-10.2.6/src/build/rados.c:10073)中
rados.Error:连接群集时出错:错误代码95
Ceph集群运行正常(正常)。这个错误代码是什么意思?我能做些什么来解决它?好的,我找到了一个解决方案。问题是,
/etc/ceph/
中的ceph客户端密钥ceph.client.admin.keyring
只能由sudo用户读取。根据您的情况,您可以:
- 更新文件权限
- 以sudo的方式运行进程
- 或者将当前用户添加到sudoers
$sudo chmod 644/etc/ceph/ceph.client.admin.keyring