电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

实操解决Ceph集群中Mon节点的故障

41页
  • 卖家[上传人]:lexu****2003
  • 文档编号:271309024
  • 上传时间:2022-03-28
  • 文档格式:DOCX
  • 文档大小:1.05MB
  • / 41 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、目 录一、前言5二.集群环境51.集群信息52. 所有mon均发生故障72.1停止所有mon服务72.2删除所有mon配置文件8三.利用osd恢复mon81.创建一个mon临时目录82.停止所有服务93.收集mon信息到/tmp/mon-store93.1开始收集ceph03的mon信息93.2将ceph03收集的信息同步到ceph0293.3再收集ceph02的mon信息103.4将ceph02的汇总信息同步到ceph01113.5最后收集ceph01的mon信息113.6 查看信息同步后的文件12四.重构store.db121.在ceph01上进行重构操作122.复制重构文件并创建其他相关文件13五.创建monmap141.利用monmaptool工具创建mommap142.在ceph01上导入monmop143.修改mon目录权限144.修改ceph.conf155.启动服务166.查看集群信息16六、在ceph01上开始创建mgr181、通过ceph-deploy创建182.查看密钥193.创建client.bootstrap-mgr密钥204. client.bootstra

      2、p-mgr的密钥导到ceph.keyring中205.再次创建mgr成功206.查看集群信息217.开启dashboard功能218.浏览器打开dashboard界面229.添加其他模块的密钥22七.添加其他mon节点241. 在ceph02添加mon节点(getmap方式)241.1安装ceph组件241.2查看monitor信息241.3建立mon默认目录251.4创建一个临时目录251.5获取 mon 的 keyring 文件251.6获取集群的 mon map251.7格式化mon默认目录261.8修改文件权限261.9加入集群271.10启动服务查看集群272. 在ceph03添加mon节点(monmaptool方式)282.1准备工作282.2查看fsid信息282.3通过monmaptool创建monmap文件292.4查看monmap文件的内容292.5从其他活动的monitor节点拷贝keyring密钥292.6生成文件292.7启动ceph03的mon进程302.8查看进程及集群信息30八.添加其他mgr节点321.在ceph02上添加mgr(ceph-deploy

      3、方式)321.1在部署节点(ceph01)上执行创建321.2因认证问题创建失败331.3修改/var/lib/ceph/bootstrap-mgr/ceph.keyring341.4创建成功341.5集群中不包含ceph02的mgr信息351.6重启ceph02的mgr进程362.在ceph03上添加mgr(手动方式)362.1查看密钥是否一致362.2创建mgr372.3查看ceph auth信息372.4启动服务382.5查看集群信息38九.恢复原来的OSD节点381.查看现在的osd状态392.查看osd down的服务状态393.尝试启动服务394.查看挂载情况405.再次查看OSD状态和集群状态41Cphe mon节点发生故障处理 一、前言在生产环境中为确保ceph集群的可靠性和稳定性,对集群中的monitor数量作了规定,要求在集群中的MON节点数量为1、3、5、7等奇数个。一般推荐3个,如果集群规模很大,可以设置5个或7个。正常来说很少出现集群中的所有MON同时挂掉的情况,但凡事没有绝对性。与您中彩票的概率一样,集群中的MON也可能出现全部失效或发生故障的情况。假如集群

      4、中的所有MON都出现故障,这时Ceph集群就无法正常工作,外界客户端将无法进行IO操作,需要尽快对集群进行恢复。对于此种情况的恢复,在一些网站上也有过介绍与实际解决办法,但其中方法与步骤有时无法进行下去,这可能是故意隐藏了某些操作或参数吧,这个不过于多言。其中在官网上也提供了利用OSD来重构store.db的脚本,用于对MON的元数据进行重构。现根据这个脚本现在进行分步骤进行恢复,使集群的所有功能都恢复正常。为了能使您更容易地理解与操作,本文中采用了大量的实际操作截图,以供您在今后实操中作以对比和鉴别,同时也真心希望您没有这个机会!二.集群环境1.集群信息本次采用3台虚拟服务器,创建3个mon和6个osd,集群状态HEALTH_OK。Ceph版本:2.0.1 ceph-deploy版本:ceph version 12.2.13 luminous (stable)操作系统:CentOS Linux release 7.6.1810 (Core)节点名称:ceph01:192.168.1.201/24 ceph02:192.168.1.202/24 ceph03:192.168.1.203

      5、ceph.conf配置文件的内容:2. 所有mon均发生故障友情提示:决不要在真实的生产环境中进行操作,否则您会引火烧身!本文档是在模拟实验环境进行的,通过将所有mon的服务停止掉来模拟生产环境全部mon发生故障。因此您要正常的生产环境中进行操作,除非生产环境真的瘫痪了。2.1停止所有mon服务在所有mon节点上停止mon服务来模拟故障。systemctl stop ceph-mon.target可以看到当集群有两个节点停止服务,在第三个节点上就无法使用ceph s查询了。2.2删除所有mon配置文件其实在任何系统运维过程中,删除操作均要谨慎。我们可以通过mv将原来的文件和系统进行备份,既起到删除的作用,又起到原系统备份的作用。因此在删除前能想到备份工作,这也是您的一种态度。mv /var/lib/ceph/mon/ceph-ceph1/ /var/lib/ceph/mon/ceph-ceph1.backmv /var/lib/ceph/mon/ceph-ceph2/ /var/lib/ceph/mon/ceph-ceph2.backmv /var/lib/ceph/mon/ceph-

      6、ceph3/ /var/lib/ceph/mon/ceph-ceph3.back现在集群已经不可用了三.利用osd恢复mon如果您所运维的的数据中心意外的断电造成mon节点的服务器无法启动操作系统,在这种很不幸的情况下,我们只有通过存放在 OSDs 上的信息来恢复 monitor 的数据库。1.创建一个mon临时目录在第一个osd节点(ceph03)上分别执行命令:mkdir -p /tmp/mon-store2.停止所有服务systemctl stop ceph*.target3.收集mon信息到/tmp/mon-store3.1开始收集ceph03的mon信息在ceph03上执行命令:for osd in /var/lib/ceph/osd/ceph-*;do ceph-objectstore-tool -data-path $osd -op update-mon-db -mon-store-path /tmp/mon-store -no-mon-config; done3.2将ceph03收集的信息同步到ceph02在ceph03上执行命令:rsync -avz /tmp/mon

      7、-store/ rootceph02:/tmp/mon-store/3.3再收集ceph02的mon信息在第二个osd节点(ceph2)上执行命令:for osd in /var/lib/ceph/osd/ceph-*; do ceph-objectstore-tool -data-path $osd -op update-mon-db -mon-store-path /tmp/mon-store -no-mon-config; done3.4将ceph02的汇总信息同步到ceph01在ceph2上执行命令:rsync -avz /tmp/mon-store/ rootceph01:/tmp/mon-store/3.5最后收集ceph01的mon信息在第三个osd节点(ceph01)上执行命令:for osd in /var/lib/ceph/osd/ceph-*; do ceph-objectstore-tool -data-path $osd -op update-mon-db -mon-store-path /tmp/mon-store -no-mon-config; done3

      8、.6 查看信息同步后的文件由于ceph01是同步信息最后一个节点,它上面的信息最完整。四.重构store.db1.在ceph01上进行重构操作此时3台服务器mon信息已经收集完成,在ceph01服务器上的信息最完整,所以我们要在ceph01上进行重构store.db的工作。ceph-monstore-tool /tmp/mon-store/ rebuild - -keyring /etc/ceph/ceph.client.admin.keyring 2.复制重构文件并创建其他相关文件将重构都store.db等文件复制到mon文件夹下,并创建相关文件mkdir -p /var/lib/ceph/mon/ceph-ceph01cp -ra /tmp/mon-store/* /var/lib/ceph/mon/ceph-ceph01/touch /var/lib/ceph/mon/ceph-ceph01/donetouch /var/lib/ceph/mon/ceph-ceph01/systemdceph-authtool -create-keyring /var/lib/ceph/mon/ceph-ceph01/keyring -gen-key -n mon. -cap mon allow *五.创建monmap1.利用monmaptool工具创建mommap我们先将ceph01加入monmap,这样可以先恢复一个mon,其他mon待集群正常后再加入进来。首先看一下原集群的fsid,这个fsid可以在/etc/ceph/ceph.conf中找到:monmaptool -create -fsid 3b35fd5a-a40b-4470-b7bc-480278cdae30 -add ceph01 192.168.1.201:6789 monmap2.在ceph01上导入monmopceph-mon -i ceph01 -inject-monmap monmap3.修改mon目录权限chown -R ceph:ceph /var/lib/ceph/mon/chmod -R 755 /var/lib/ceph/mon/4.修改ceph.conf去掉其它的mon节点信息,然后分发到其它节点去。

      《实操解决Ceph集群中Mon节点的故障》由会员lexu****2003分享,可在线阅读,更多相关《实操解决Ceph集群中Mon节点的故障》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.