ceph集群扩容与缩容节点

一. 扩容常规添加节点即可

1
2
3
4
5
6
7
8
9
10
11
12
13
# 关闭自动添加osd
ceph orch apply osd --all-available-devices --unmanaged=true
# 添加ceph-4为新节点
ssh-copy-id ceph-4
ssh-copy-id -f -i /etc/ceph/ceph.pub root@ceph-4
# ceph-4 换源
# 设置ceph quincy源
# 设置docker镜像加速 >> 略 (ceph-4操作)
hostnamectl set-hostname ceph-4
apt install -y python3 systemd lvm2 ceph-common
curl -sSL https://get.daocloud.io/docker | sh
# 主节点执行添加节点
ceph orch host add ceph-4

二. 节点缩容( 注意顺序 )–暂未测试

此处需要注意副本数 比如集群为三副本三台服务器缩减为两台时 此时集群缺失一节点就变成了 两副本 移除节点需要调整副本数 副本数不能小于2即最小能支持的缩减为3节点 >> 2节点

osd坏盘剔除参考此处链接即可

cephadm部署方式更改配置参考此处含ceph-deploy方式更改副本数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 首先设置不迁移数据
ceph osd set noout
# 若节点为3节点锁容为2节点则需要 更改副本数为2 ceph的crashmap默认以主机为单位 (副本数不能小于2)
ceph config help osd_pool_default_size # 查看当前副本数配置
ceph config-key set config/global/osd_pool_default_size 2 # 设置副本数为2
systemctl restart ceph.target # 重启生效
# 已经存在的pool需要手动设置副本数 (副本数不能小于2)
ceph osd pool set ceph-demo size 2

# 其他如mds mgr mon等节点数量也要对应缩减
ceph orch apply mon --placement="2 ceph-1 ceph-2"
ceph orch apply mgr --placement="2 ceph-1 ceph-2"
ceph orch apply rgw foo --placement="2 ceph-1 ceph-2" --port=8000

# 从集群中删除关于该ceph-3主机的所有守护进程
ceph orch host drain ceph-3
# 将_no_schedule标签应用于主机至于维护模式
ceph orch host label add ceph-3 _no_schedule

# 关闭自动添加osd
ceph orch apply osd --all-available-devices --unmanaged=true
# 移除osd
ceph osd out osd.1
ceph osd purge osd.1 --yes-i-really-mean-it
ceph osd rm osd.1
ceph orch daemon rm osd.1 --force