无法使用ceph-deploy部署Ceph管理器守护程序:错误EACCES:访问被拒绝

时间:2017-07-17 22:13:45

标签: linux dfs ceph

我正在尝试使用此处的快速入门指南设置Ceph存储群集:http://docs.ceph.com/docs/master/start/quick-ceph-deploy/

当我尝试使用此命令部署管理器守护程序时:

    ceph-deploy mgr create enickel7

我收到此错误:

    [ceph_deploy.mgr][ERROR ] OSError: [Errno 2] No such file or directory: '/var/lib/ceph/mgr/ceph-enickel7'
    [ceph_deploy][ERROR ] GenericError: Failed to create 1 MGRs

(enickel7是我正在使用的节点的名称--Ceph文档调用节点node1,node2和node3。)我试图手动创建目录/ var / lib / ceph / mgr,然后运行命令再次。然后我收到了这个错误:

    [enickel7][ERROR ] Error EACCES: access denied
    [enickel7][ERROR ] exit code from command was: 13
    [ceph_deploy.mgr][ERROR ] could not create mgr
    [ceph_deploy][ERROR ] GenericError: Failed to create 1 MGRs

有谁知道这个错误意味着什么,或者如何修复它? ceph-deploy肯定有sudo权限,而mgr目录与/ var / lib / ceph中的其他目录具有相同的权限。

感谢您的时间!

5 个答案:

答案 0 :(得分:3)

这是因为你的ceph版本不是Luminous> = 12.2.0,你必须使用ceph-deploy来安装ceph,因为文件说,ceph-deploy安装的默认版本现在是10.2.10 Jewel。

如果要创建管理器守护程序进程,则需要将ceph升级到Luminous 12.2.1。该文档位于:http://docs.ceph.com/docs/master/release-notes/#v12-2-1-luminous

答案 1 :(得分:0)

我刚刚在ubuntu 16.04上尝试使用ceph-deploy版本1.5.39部署kraken时遇到了同样的问题。

Ceph-deploy自动为我创建了目录,但它们并没有正确拥有。看起来它在/ var / lib / ceph / bootstrap-mgr中创建的密钥环以及该目录由root拥有。我把它告诉了ceph。这让我超越了这个错误。

在您的情况下,我猜测该目录由您的用户拥有,而不是“ceph”。我希望这会有所帮助。

答案 2 :(得分:0)

请测试以下命令:

cewn ceph:ceph / var / lib / ceph

使用了哪个ceph版本?

请使用最新版本(模仿13.2) 和ceph-deploy 2

答案 3 :(得分:-1)

面临同样的问题。正如Michael Meepo所说,这是版本问题。 在管理员节点上,我注册了ceph repo for luminous&安装了ceph-deploy。 但是当我尝试使用它时,ceph-deploy在远程节点上安装了默认版本(Jewel)。 要安装特定版本,您应该要求它:

ceph-deploy install master --release luminous

答案 4 :(得分:-1)

要使用与您的发行版匹配的ceph-deploy版本,请从https://github.com/ceph/ceph-deploy页开始,使用ceph存储库。例如,由于Debian Stretch提供了Jewel(Ceph v。10),请使用以下存储库:http://ceph.com/debian-jewel我创建的/etc/apt/source.list.d/ceph-deploy.list文件包含:

deb http://download.ceph.com/debian-jewel/ stretch main

安装密钥:

wget -q -O- 'https://download.ceph.com/keys/release.asc' | sudo apt-key add -

然后继续

apt-get install ceph-deploy

从那里应该可以正常工作。