博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ceph osd 替换
阅读量:4922 次
发布时间:2019-06-11

本文共 1352 字,大约阅读时间需要 4 分钟。

从crushmap中删除操作

  1. 调整osd的crush weight
ceph osd crush reweight osd.0 0.1

说明:这个地方如果想慢慢的调整就分几次将crush 的weight 减低到0 ,这个过程实际上是让数据不分布在这个节点上,让数据慢慢的分布到其他节点上,直到最终为没有分布在这个osd,并且迁移完成

这个地方不光调整了osd 的crush weight ,实际上同时调整了host 的 weight ,这样会调整集群的整体的crush 分布,在osd 的crush 为0 后, 再对这个osd的任何删除相关操作都不会影响到集群的数据的分布

  1. 停止osd进程
/etc/init.d/ceph stop osd.0

停止到osd的进程,这个是通知集群这个osd进程不在了,不提供服务了,因为本身没权重,就不会影响到整体的分布,也就没有迁移

  1. 将节点状态标记为out
ceph osd out osd.0

停止到osd的进程,这个是通知集群这个osd不再映射数据了,不提供服务了,因为本身没权重,就不会影响到整体的分布,也就没有迁移

  1. 从crush中移除节点
ceph osd crush remove osd.0

这个是从crush中删除,因为已经是0了 所以没影响主机的权重,也就没有迁移了

  1. 删除节点
ceph osd rm osd.0

这个是从集群里面删除这个节点的记录

  1. 删除节点认证(不删除编号会占住)
ceph auth del osd.0

这个是从认证当中去删除这个节点的信息

 

上面操作完成之后,已经将osd从crushmap中删除了osd节点,可以通过ceph osd tree 查看对应的osd节点是否已经删除

 

添加osd到crushmap中

 

添加ceph osd,必须在ceph-deploy节点上操作(172.16.205.103)

ssh root@172.16.205.103

su - ceph

cd ceph-deploy-dir/ 在此目录下执行下面命令操作

 

准备osd节点

ceph-deploy --overwrite-conf osd prepare 77

 

激活osd节点

ceph-deploy --overwrite-conf osd activate 77

 

查看ceph osd tree 此osd77 是否状态是up,如果没有,则重启77这个osd。启动之后。然后更新crushmap即可。

【当然也可以通过手动命令将对应的osd加入到crushmap】

 

更新crushmap

更新之前,可以先暂停ceph数据写入

 

暂停osd (暂停后整个集群不再接收数据)

[root@admin ~]# ceph osd pause

 

再次开启osd (开启后再次接收数据)

[root@admin ~]# ceph osd unpause

unset pauserd,pausewr

 

sudo ceph osd setcrushmap -i compiled-crushmap-openstack.20161230.add.ser16.map

转载于:https://www.cnblogs.com/schangech/p/8036173.html

你可能感兴趣的文章
Linux常用网络命令整理
查看>>
C++ 面向对象
查看>>
Maven Nexus
查看>>
js 判断滚动条的滚动方向
查看>>
css,js文件后面加一个版本号
查看>>
webpack第一节(2)
查看>>
python之asyncio三种应用方法
查看>>
转:[Server] 在 Windows 上安裝 PHP 5.3 開發環境
查看>>
【IE6的疯狂之二】IE6中PNG Alpha透明(全集)
查看>>
第一个Shell脚本
查看>>
C++ 小笔记
查看>>
Mysql 语句优化
查看>>
例子:进度条
查看>>
包含单引号的sql
查看>>
HTML 基础 2
查看>>
Java 最常见 200+ 面试题全解析:面试必备(转载)
查看>>
LinkedList
查看>>
Spring框架下PropertyPlaceholderConfigurer类配置roperties文件
查看>>
[原创]独立模式安装Hive
查看>>
链表实现单链表创建、排序(升序)
查看>>