runsisi

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  45 随笔 :: 15 文章 :: 26 评论 :: 0 Trackbacks

runsisi AT hust

http://www.cppblog.com/runsisi

 

该错误在执行命令:ceph-deploy mon create-initial 时出现,说明该 monitor 节点曾经部署过 ceph 环境,该问题的解决方法很简单,在执行该命令之前删除该 monitor 节点 /etc/ceph/ 下的{cluster}.client.admin.keyring 文件(cluster名默认配置情况下是ceph)。

该错误的具体原因待会解释,先简单介绍一下该命令执行过程中发生的事情:

1. 启动 monitor 节点的 ceph monitor 守护进程;

2. monitor 节点执行 ceph-create-keys 命令;

3. ceph-create-keys创建 {cluster}.client.admin.keyring

4. ceph-create-keys创建 bootstrap-{osd, mds}/{cluster}.keyring

5. ceph-deploy 所在运行节点从 monitor 节点取 {cluster}.client.admin.keyring, {cluster}.mon.keyring, bootstrap-{osd, mds}/{cluster}.keyring 到当前路径;

6. 以上任何一步如果文件已存在,则不会新建(或去 monitor 节点取)文件。

回到我们遇到的错误,由于 monitor 节点之前可能使用 ceph-deploy 工具进行过部署,再次部署时没有将 {cluster}.client.admin.keyring 原有的配置文件进行清理,因此第3步不会创建新的 keyring 文件,仍然使用上次部署使用的keyring,从而导致第4步操作会失败,最终出错。

从上面的介绍,可以知道,如果要使用 ceph-deploy 工具再次对 ceph 集群进行部署,最好将各节点(包括 ceph-deploy 工具所在节点)上原有的配置文件清理之后再进行部署。

/Files/runsisi/ceph_bootstrap_key_fail.pdf

posted on 2014-08-28 22:51 runsisi 阅读(6560) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理