ceph-deploy 遇到的使用问题

目录

  • [问题一、RuntimeError: bootstrap-osd keyring not found; run 'gatherkeys'](#问题一、RuntimeError: bootstrap-osd keyring not found; run 'gatherkeys')
  • [问题二、 stderr: Error EEXIST: entity osd.0 exists but key does not match](#问题二、 stderr: Error EEXIST: entity osd.0 exists but key does not match)
  • [问题三:RuntimeError: command returned non-zero exit status: 1](#问题三:RuntimeError: command returned non-zero exit status: 1)

问题一、RuntimeError: bootstrap-osd keyring not found; run 'gatherkeys'

当执行ceph-deploy命令时,提示找不到keyring文件。

解决思路:首先前往部署文件夹/etc/ceph-cluster/,检查密钥文件是否存在,不存在的话执行gatherkeys命令收集

shell 复制代码
ceph-deploy gatherkeys <部署节点hostname>
#例
ceph-deploy gatherkeys node49

执行后的正确输出如下

shell 复制代码
[ceph_deploy.conf][DEBUG ] found configuration file at: /root/.cephdeploy.conf
[ceph_deploy.cli][INFO  ] Invoked (2.0.1): /usr/bin/ceph-deploy gatherkeys node49
[ceph_deploy.cli][INFO  ] ceph-deploy options:
[ceph_deploy.cli][INFO  ]  username                      : None
[ceph_deploy.cli][INFO  ]  verbose                       : False
[ceph_deploy.cli][INFO  ]  overwrite_conf                : False
[ceph_deploy.cli][INFO  ]  quiet                         : False
[ceph_deploy.cli][INFO  ]  cd_conf                       : <ceph_deploy.conf.cephdeploy.Conf instance at 0x7f4436b7d488>
[ceph_deploy.cli][INFO  ]  cluster                       : ceph
[ceph_deploy.cli][INFO  ]  mon                           : ['node49']
[ceph_deploy.cli][INFO  ]  func                          : <function gatherkeys at 0x7f4436dc49b0>
[ceph_deploy.cli][INFO  ]  ceph_conf                     : None
[ceph_deploy.cli][INFO  ]  default_release               : False
[ceph_deploy.gatherkeys][INFO  ] Storing keys in temp directory /tmp/tmpwck71_
[node49][DEBUG ] connected to host: node49 
[node49][DEBUG ] detect platform information from remote host
[node49][DEBUG ] detect machine type
[node49][DEBUG ] get remote short hostname
[node49][DEBUG ] fetch remote file
[node49][INFO  ] Running command: /usr/bin/ceph --connect-timeout=25 --cluster=ceph --admin-daemon=/var/run/ceph/ceph-mon.node49.asok mon_status
[node49][INFO  ] Running command: /usr/bin/ceph --connect-timeout=25 --cluster=ceph --name mon. --keyring=/var/lib/ceph/mon/ceph-node49/keyring auth get client.admin
[node49][INFO  ] Running command: /usr/bin/ceph --connect-timeout=25 --cluster=ceph --name mon. --keyring=/var/lib/ceph/mon/ceph-node49/keyring auth get client.bootstrap-mds
[node49][INFO  ] Running command: /usr/bin/ceph --connect-timeout=25 --cluster=ceph --name mon. --keyring=/var/lib/ceph/mon/ceph-node49/keyring auth get client.bootstrap-mgr
[node49][INFO  ] Running command: /usr/bin/ceph --connect-timeout=25 --cluster=ceph --name mon. --keyring=/var/lib/ceph/mon/ceph-node49/keyring auth get client.bootstrap-osd
[node49][INFO  ] Running command: /usr/bin/ceph --connect-timeout=25 --cluster=ceph --name mon. --keyring=/var/lib/ceph/mon/ceph-node49/keyring auth get client.bootstrap-rgw
[ceph_deploy.gatherkeys][INFO  ] keyring 'ceph.client.admin.keyring' already exists
[ceph_deploy.gatherkeys][INFO  ] Storing ceph.bootstrap-mds.keyring
[ceph_deploy.gatherkeys][INFO  ] Storing ceph.bootstrap-mgr.keyring
[ceph_deploy.gatherkeys][INFO  ] Storing ceph.mon.keyring
[ceph_deploy.gatherkeys][INFO  ] Storing ceph.bootstrap-osd.keyring
[ceph_deploy.gatherkeys][INFO  ] Storing ceph.bootstrap-rgw.keyring
[ceph_deploy.gatherkeys][INFO  ] Destroy temp directory /tmp/tmpwck71_
[root@node49 ceph-cluster]# ll
总用量 56
-rw------- 1 root root   113 12月 13 11:25 ceph.bootstrap-mds.keyring
-rw------- 1 root root   113 12月 13 11:25 ceph.bootstrap-mgr.keyring
-rw------- 1 root root   113 12月 13 11:25 ceph.bootstrap-osd.keyring
-rw------- 1 root root   113 12月 13 11:25 ceph.bootstrap-rgw.keyring
-rw------- 1 root root    63 12月 13 10:36 ceph.client.admin.keyring
-rw-r--r-- 1 root root   346 12月 13 10:34 ceph.conf
-rw-r--r-- 1 root root 24602 12月 13 11:25 ceph-deploy-ceph.log
-rw------- 1 root root    77 12月 13 11:25 ceph.mon.keyring

问题二、 stderr: Error EEXIST: entity osd.0 exists but key does not match

增加osd时提示存在osd的key信息

解决思路:直接删除遗漏的osd的key信息

shell 复制代码
ceph auth del osd.{osd-id}
#例
ceph auth del osd.0

问题三:RuntimeError: command returned non-zero exit status: 1

将原本作为osd存储介质的数据盘以新osd加入集群时提示

解决思路:格式化掉磁盘后再次执行增加操作

shell 复制代码
sgdisk -Z /dev/sd<x>
#例
sgdisk -Z /dev/sdb
相关推荐
Coder_Boy_几秒前
基于SpringAI企业级智能教学考试平台考试模块全业务闭环方案
java·人工智能·spring boot·aiops
微爱帮监所写信寄信2 分钟前
微爱帮监狱寄信写信小程序信件内容实时保存技术方案
java·服务器·开发语言·前端·小程序
沛沛老爹3 分钟前
Web开发者实战A2A智能体交互协议:从Web API到AI Agent通信新范式
java·前端·人工智能·云原生·aigc·交互·发展趋势
shizhenshide4 分钟前
物联网(IoT)设备如何应对验证码?探讨无头浏览器与协议级解决方案
java·struts·microsoft·验证码·ezcaptcha
七夜zippoe5 分钟前
响应式编程基石 Project Reactor源码解读
java·spring·flux·响应式编程·mono·订阅机制
独自归家的兔8 分钟前
基于 豆包大模型 Doubao-Seed-1.6-thinking 的前后端分离项目 - 图文问答(后端)
java·人工智能·豆包
这是个栗子9 分钟前
【Vue代码分析】vue方法的调用与命名问题
前端·javascript·vue.js·this
IT 行者16 分钟前
Spring Framework 6.x 异常国际化完全指南:让错误信息“说“多国语言
java·后端·spring·异常处理·problemdetail·国际化i18n
ss27316 分钟前
CompletionService:Java并发工具包
java·开发语言·算法
全栈前端老曹18 分钟前
【前端路由】Vue Router 动态导入与懒加载 - 使用 () => import(‘...‘) 实现按需加载组件
前端·javascript·vue.js·性能优化·spa·vue-router·懒加载