文章目录

  • 修改`/etc/hosts`中的ip设置
  • 修改`ceph.conf`中的ip地址
  • 获取monmap
  • 将`monmap`注入到集群

最近测试部在测试一些功能,在我们不知情得情况下更换了集群内外网ip,之后直接甩锅到我这里(大哭)

接手到的集群是ceph各个组件之间无法成功通信,不能正常运行,该情根据网上的恢复方法已经不可行。因为ceph mon 命令无法使用,所以不能够通过该命令获取到monmap了。
经过对monmaptool工具的调研,发现它可以直接从/etc/ceph/ceph.conf中获取到monmap

所以我的恢复过程如下

修改/etc/hosts中的ip设置

将如下ip映射关系更改为 当前设备ip即可

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost4 localhost4.localdomain4
10.193.56.91 node1
10.193.56.92 node2
10.193.56.93 node3

修改完成之后scp同步到集群其他节点

修改ceph.conf中的ip地址

其中包括如下ip,全部更改为当前集群设备ip

mon_host = 10.193.56.91,10.193.56.92,10.193.56.93
public)_network = 10.193.0.0/16
cluster_network = 10.193.0.0/16

修改完成后执行ceph-deploy --overwrite-conf config push node1 node2 node3

获取monmap

monmaptool --create --generate -c /etc/ceph/ceph.conf ./monmap 在当前目录生成monmap文件

这里如果是集群 ip还未更改,可以通过ceph mon getmap -o ./monmap来在当前目录下生成monmap文件

使用monmaptool --print monmap查看集群monmap如下

[root@node1 ~]# monmaptool --print monmap
monmaptool: monmap file monmap
epoch 0
fsid fb4a710d-7b1e-4efe-9482-e46f590a8dcf
last_changed 2019-05-21 13:57:37.783971
created 2019-05-21 13:57:37.783971
0: 10.193.56.91:6789/0 mon.node1 #主要是更改这一部分,将我们新集群的集群网络ip写入到这里
1: 10.193.56.92:6789/0 mon.node2
2: 10.193.56.93:6789/0 mon.node3

使用monmaptool --rm node1 --rm node2 --rm node3 ./monmap删除对应mon.id的配置

[root@node1 ~]# monmaptool --rm node1 --rm node2 --rm node3 monmap
monmaptool: monmap file monmap
monmaptool: removing node1
monmaptool: removing node2
monmaptool: removing node3
monmaptool: writing epoch 0 to monmap (0 monitors)

再次查看monmap内容如下

[root@node1 ~]# monmaptool --print monmap
monmaptool: monmap file monmap
epoch 0
fsid fb4a710d-7b1e-4efe-9482-e46f590a8dcf
last_changed 2019-05-21 13:57:37.783971
created 2019-05-21 13:57:37.783971

将我们当前设备的ip加入到monmap中即可,执行命令monmaptool --add mon.id 10.112.101.141:6789 --add mon.id 10.112.101.143:6789 --add mon.id 10.112.101.142:6789 monmap
这里填写清楚当前mon的名称即可,如下

[root@node1 ~]# monmaptool --add node1 10.112.101.141:6789 --add node2 10.112.101.143:6789 --add node3 10.112.101.142:6789 monmap
monmaptool: monmap file monmap
monmaptool: writing epoch 0 to monmap (3 monitors)
[root@node1 ~]# monmaptool --print monmap
monmaptool: monmap file monmap
epoch 0
fsid fb4a710d-7b1e-4efe-9482-e46f590a8dcf
last_changed 2019-05-21 13:57:37.783971
created 2019-05-21 13:57:37.783971
0: 10.112.101.141:6789/0 mon.node1
1: 10.112.101.142:6789/0 mon.node3
2: 10.112.101.143:6789/0 mon.node2

此时我们已成功完成修改monmap内容,我们将修改后的monmap 通过scp 同步到集群所有节点

monmap注入到集群

注入之前请先停止集群内所有的ceph服务,systemctl stop ceph.service 因为需要所有的组件重新读配置文件,主要是mon重新加载monmap来更改集群通信ip
每个节点执行命令ceph-mon -i node1 --inject-monmap ./monmap,集群都执行结束后每个节点再将所有ceph服务重新拉起即可

CEPH集群更换ip(更换ip前的防范和更换ip后的恢复)相关推荐

  1. Ceph 集群整体迁移方案

    场景介绍:在我们的IDC中,存在着运行了3-6年的Ceph集群的服务器,这些服务器性能和容量等都已经无法满足当前业务的需求,在购入一批高性能机器后,希望将旧机器上的集群整体迁移到新机器上,当然,是保证 ...

  2. ceph客户端挂在ceph集群存储作为本地文件系统来使用

    在前面的一篇文章中 我使用三节点搭建了一个ceph集群,结构如下所示: 主机名 , ip , ceph节点 node1 , 192.168 1.220 , mon node2 , 192.168 1. ...

  3. k8s——kubernetes使用rook部署ceph集群

    kubernetes使用rook部署ceph集群 一:环境准备 1.安装时间服务器进行时间同步 所有的kubernetes的集群节点 [root@master ~]# yum -y install n ...

  4. ceph-deploy离线部署ceph集群及报错解决FAQ

    Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/cou ...

  5. 使用cephadm部署单节点ceph集群,后期可扩容(基于官方文档,靠谱,读起来舒服)

    目录 ceph各种部署工具比较(来自官方文档的翻译,靠谱!) 材料准备 cephadm使用条件 服务器有外网访问能力 服务器没有外网访问能力 安装cephadm cephadm的功能 两种安装方式 基 ...

  6. CEPH集群操作入门--配置

    https://www.cnblogs.com/luxiaodai/p/10006036.ht CEPH集群操作入门--配置l CEPH集群操作入门--配置 阅读目录(Content) 概述 配置 存 ...

  7. CentOS 7 搭建 Ceph 集群(nautilus 版本)

    推荐阅读 Helm3(K8S 资源对象管理工具)视频教程:https://edu.csdn.net/course/detail/32506 Helm3(K8S 资源对象管理工具)博客专栏:https: ...

  8. 部署Ceph集群(块存储,文件系统存储,对象存储)

    一 前言 分布式文件系统(Distributed File System):文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连.分布式文件系统的设计基于C/S模式 1, ...

  9. 离线安装ceph集群(ceph-13.2.10)

    记录:332 场景:在CentOS 7.9操作系统上,使用ceph的rpm-mimic的ceph-13.2.10安装ceph集群.应用ceph对象存储(ceph object store):应用cep ...

  10. Cluster04 - Ceph概述 部署Ceph集群 Ceph块存储

    ceph 快照:可用做备份 一.ceph概述 1.1 什么是分布式文件系统 •  分布式文件系统(Distributed File System)是指文 件系统管理的物理存储资源不一定直接连接在本地节 ...

最新文章

  1. HA: InfinityStones靶机渗透测试
  2. Vue.js 源码目录设计(二)
  3. Weex 版扫雷游戏开发
  4. Windows-Server下加强系统安全性系列之方案【九】
  5. 云上安全保护伞--SLS威胁情报集成实战
  6. java单词测试,java单词 - 在线打字测试(dazi.kukuw.com)
  7. 泛型接口(C# 编程指南)
  8. work summary(3)
  9. galleryview-3.0b3使用小记
  10. 易语言取MySQL错误代码,易语言中“取错误码”命令详解
  11. 如何导出专业的工程图纸(附工图模板)
  12. RAKsmart:Linux SSH 客户端断开后保持进程继续运行配置方法
  13. 看了 web.dev 的 631 篇博客,我总结了这些内容
  14. iPhone十二年了,多希望这是苹果的一个新轮回!
  15. 迁移 VMware 虚拟机到 KVM
  16. 1.1 命题逻辑 笔记
  17. JAVA两年5009_【JAVA】PAT 乙级 1059 C语言竞赛(测试点1、2超时) 内含1-10000的素数表和0-10000是否素数的boolean值...
  18. 计算机系统采用终中断的目的是?
  19. python beep函数_Python winsound.Beep方法代码示例
  20. AWS-Lambda 从传入的 S3 Event 里获取信息

热门文章

  1. markdown 基本语法
  2. 《监控》再起风云,连同创作中的《监控2》成功牵手影视公司
  3. 石英晶体振荡器的结构
  4. [学习]GridView 学习集合 -- GridView中使用超链接的技巧
  5. DIV+CSS一行两列布局
  6. 用vs2017编写html,vs2017可以编写java
  7. linux的网络地址配置,教你如何完成Linux网络地址配置
  8. php if require,php echo()和print()、require()和include()函数区别说明
  9. scrolling=no 无法根据坐标获取元素_汽车制造行业如何选择三坐标测量仪?
  10. 吗 使用的是_论文是可以反复使用吗?