4 添加和删除OSD

​新加节点 hostname: ceph-node04 IP: 172.16.1.34 OS: CentOS7.5 Cpu/Memory: 2vcpu/2GB disk /: 60GB​

4.1 添加OSD
1 在新创建的 172.16.1.34 节点上新增加两块未使用的硬盘"/dev/sdb(20GB)、/dev/sdc(20GB)"。
[root@ceph-node04 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 60G 0 disk
├─sda1 8:1 0 200M 0 part /boot
├─sda2 8:2 0 2G 0 part
└─sda3 8:3 0 57.8G 0 part /
sdb 8:16 0 20G 0 disk
sdc 8:32 0 20G 0 disk
sr0 11:0 1 1024M 0 rom

2 在 ceph-deploy 节点上添加 ceph-node04 节点的 hosts 解析
[root@ceph-deploy my-cluster]# echo "172.16.1.34 ceph-node04" >> /etc/hosts

3 在 ceph-deploy 节点上分发秘钥到 ceph-node04 节点上
(1) 分发秘钥
[root@ceph-deploy my-cluster]# ssh-copy-id root@ceph-node04

(2) 检查秘钥是否分发成功
[root@ceph-deploy my-cluster]# ssh root@ceph-node04
[root@ceph-node04 ~]# exit

4 在 ceph-node04 节点上配置阿里云 yum 源
(1) 配置 ceph 源
[root@ceph-node04 ~]# cat > /etc/yum.repos.d/ceph.repo << EOF
[Ceph]
name=Ceph packages for $basearch
baseurl=http://mirrors.aliyun.com/ceph/rpm-octopus/el7/\$basearch
gpgcheck=0
[Ceph-noarch]
name=Ceph noarch packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-octopus/el7/noarch
gpgcheck=0
[ceph-source]
name=Ceph source packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-octopus/el7/SRPMS
gpgcheck=0
EOF

(2) 配置 base、epel 源
[root@ceph-node04 ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
[root@ceph-node04 ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

(3) 生成 yum 源缓存
[root@ceph-node04 ~]# yum clean all
[root@ceph-node04 ~]# yum makecache

5 通过 ceph-deploy 命令在 ceph-node04 节点上安装 ceph 相关的软件包
[root@ceph-deploy my-cluster]# ceph-deploy install --no-adjust-repos ceph-node04

6 使用 ceph-deploy 命令将配置文件 ceph.conf 和 admin key 复制到 ceph-node04 节点的 "/etc/ceph" 目录下,以便每次执行
ceph CLI 命令无需指定 monitor 地址和 ceph.client.admin.keyring
[root@ceph-deploy my-cluster]# ceph-deploy admin ceph-node04

7 通过 ceph-deploy 命令添加 ceph-node04 节点上的 OSD 到 ceph 集群
[root@ceph-deploy my-cluster]# ceph-deploy osd create --data /dev/sdb ceph-node04
[root@ceph-deploy my-cluster]# ceph-deploy osd create --data /dev/sdc ceph-node04

8 在 ceph-node04 节点查看 osd 进程
[root@ceph-node04 ~]# ceph -s
cluster:
id: 14912382-3d84-4cf2-9fdb-eebab12107d8
health: HEALTH_OK

services:
mon: 3 daemons, quorum ceph-node01,ceph-node02,ceph-node03 (age 12m)
mgr: ceph-node01(active, since 12m), standbys: ceph-node03, ceph-node02
osd: 8 osds: 8 up (since 3m), 8 in (since 3m)

data:
pools: 1 pools, 1 pgs
objects: 0 objects, 0 B
usage: 8.1 GiB used, 152 GiB / 160 GiB avail
pgs: 1 active+clean

[root@ceph-node04 ~]# ps -ef | grep -v grep | grep ceph

图示: ​

5.6、ceph集群添加和删除OSD_ubuntu

4.2 删除OSD

​将 ceph-node04 172.16.1.34 节点 osd.6、osd.7 下线​

说明:
ceph-node04 节点上 /dev/sdb 磁盘对应的 osd id 为 6,/dev/sdc 磁盘对应的 osd id 为 7。
注意: 我这里下线的 osd 数为 2 个,pg 的副本数为3,下线的 osd 数量没有大于 pg 的副本数量。

0 为了方便测试添加一个 cephfs 存储池
(1) 部署cephfs存储池
1) 部署 MDS 服务
首先要创建两个 pool,一个是 cephfs-data,一个是 cephfs-metadate,分别存储文件数据和文件元数据,这个 pg 也可以设置小一点,这个
根据 OSD 去配置。
[root@ceph-deploy ~]# cd /root/my-cluster/
[root@ceph-deploy my-cluster]# ceph-deploy mds create ceph-node01 ceph-node02 ceph-node03
# 查看mds节点状态
[root@ceph-deploy my-cluster]# ceph mds stat
3 up:standby

2) 创建存储池
[root@ceph-deploy my-cluster]# ceph osd pool create cephfs_data 64 64
[root@ceph-deploy my-cluster]# ceph osd pool create cephfs_metadata 64 64
[root@ceph-deploy my-cluster]# ceph osd pool ls
device_health_metrics
cephfs_data
cephfs_metadata

3) 创建文件系统
格式: ceph fs new <fs_name> <metadata> <data>
[root@ceph-deploy my-cluster]# ceph fs new cephfs cephfs_metadata cephfs_data
new fs with metadata pool 3 and data pool 2

4) 查看创建后的cephfs
[root@ceph-deploy my-cluster]# ceph fs ls
name: cephfs, metadata pool: cephfs_metadata, data pools: [cephfs_data ]

(2) 挂载 cephfs 存储池
[root@ceph-deploy my-cluster]# cd ~
[root@ceph-deploy ~]# mkdir -p /data/
[root@ceph-deploy ~]# mount -t ceph 172.16.1.31:6789,172.16.1.32:6789,172.16.1.33:6789:/ /data -o \
name=admin,secret=AQArL5JhBEiAKRAAymBtomUPKP6M/BSI17oXyg==

(3) 上传数据到"/data/"挂载点
[root@ceph-deploy ~]# cd /data/
# 上传了一个大小为 1.17G 的ubuntu镜像到"/data/"目录下并进行MD5的计算
[root@ceph-deploy data]# md5sum ubuntu-20.04.3-live-server-amd64.iso > ubuntu.md5
[root@ceph-deploy data]# md5sum -c ubuntu.md5
ubuntu-20.04.3-live-server-amd64.iso: OK
[root@ceph-deploy data]# cd /root/my-cluster/

(4) 查看 ceph 集群相关信息
[root@ceph-deploy my-cluster]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda3 xfs 58G 2.2G 56G 4% /
devtmpfs devtmpfs 981M 0 981M 0% /dev
tmpfs tmpfs 992M 0 992M 0% /dev/shm
tmpfs tmpfs 992M 9.6M 982M 1% /run
tmpfs tmpfs 992M 0 992M 0% /sys/fs/cgroup
/dev/sda1 xfs 197M 102M 95M 52% /boot
tmpfs tmpfs 199M 0 199M 0% /run/user/0
172.16.1.31:6789,172.16.1.32:6789,172.16.1.33:6789:/ ceph 48G 1.2G 47G 3% /data
[root@ceph-deploy my-cluster]#
[root@ceph-deploy my-cluster]#
[root@ceph-deploy my-cluster]# ceph -s
cluster:
id: 14912382-3d84-4cf2-9fdb-eebab12107d8
health: HEALTH_OK

services:
mon: 3 daemons, quorum ceph-node01,ceph-node02,ceph-node03 (age 20m)
mgr: ceph-node01(active, since 20m), standbys: ceph-node03, ceph-node02
mds: cephfs:1 {0=ceph-node02=up:active} 2 up:standby
osd: 8 osds: 8 up (since 20m), 8 in (since 29h)

data:
pools: 3 pools, 81 pgs
objects: 325 objects, 1.2 GiB
usage: 12 GiB used, 148 GiB / 160 GiB avail
pgs: 81 active+clean

[root@ceph-deploy my-cluster]#
[root@ceph-deploy my-cluster]#
[root@ceph-deploy my-cluster]# ceph osd df
ID CLASS WEIGHT REWEIGHT SIZE RAW USE DATA OMAP META AVAIL %USE VAR PGS STATUS
0 hdd 0.01949 1.00000 20 GiB 1.4 GiB 369 MiB 4 KiB 1024 MiB 19 GiB 6.80 0.92 22 up
1 hdd 0.01949 1.00000 20 GiB 1.6 GiB 602 MiB 4 KiB 1024 MiB 18 GiB 7.94 1.07 33 up
2 hdd 0.01949 1.00000 20 GiB 1.3 GiB 330 MiB 1 KiB 1024 MiB 19 GiB 6.62 0.89 27 up
3 hdd 0.01949 1.00000 20 GiB 1.7 GiB 669 MiB 4 KiB 1024 MiB 18 GiB 8.27 1.12 35 up
4 hdd 0.01949 1.00000 20 GiB 1.4 GiB 454 MiB 4 KiB 1024 MiB 19 GiB 7.22 0.97 27 up
5 hdd 0.01949 1.00000 20 GiB 1.6 GiB 583 MiB 1 KiB 1024 MiB 18 GiB 7.85 1.06 40 up
6 hdd 0.01949 1.00000 20 GiB 1.4 GiB 417 MiB 4 KiB 1024 MiB 19 GiB 7.04 0.95 27 up
7 hdd 0.01949 1.00000 20 GiB 1.5 GiB 523 MiB 1 KiB 1024 MiB 18 GiB 7.55 1.02 32 up
TOTAL 160 GiB 12 GiB 3.9 GiB 29 KiB 8.0 GiB 148 GiB 7.41
MIN/MAX VAR: 0.89/1.12 STDDEV: 0.55
[root@ceph-deploy my-cluster]#
[root@ceph-deploy my-cluster]#
[root@ceph-deploy my-cluster]# ceph df
--- RAW STORAGE ---
CLASS SIZE AVAIL USED RAW USED %RAW USED
hdd 160 GiB 148 GiB 3.9 GiB 12 GiB 7.41
TOTAL 160 GiB 148 GiB 3.9 GiB 12 GiB 7.41

--- POOLS ---
POOL ID PGS STORED OBJECTS USED %USED MAX AVAIL
device_health_metrics 1 1 0 B 0 0 B 0 46 GiB
cephfs_data 2 64 1.2 GiB 302 3.5 GiB 2.48 46 GiB
cephfs_metadata 3 16 182 KiB 23 2.1 MiB 0 46 GiB
[root@ceph-deploy my-cluster]#
[root@ceph-deploy my-cluster]#

1 调整 osd 的 crush weight 为 0
weight表示设备(device)的容量,1TB对应1.00,500G对应0.5,这个值一般在刚 init osd 的时候根据 osd 的容量进行设置,对于它的调整会
立即重新分配pg,迁移数据,所以pg的分配取决于weigh值。这个地方不光调整了osd 的crush weight,实际上同时调整了host 的 weight,这样
会调整集群的整体的 crush 分布,在 osd 的 crush 为 0 后,再对这个 osd 的任何删除相关操作都不会影响到集群的数据的分布。

[root@ceph-deploy my-cluster]# ceph osd crush reweight osd.6 0.0
[root@ceph-deploy my-cluster]# ceph osd crush reweight osd.7 0.0
[root@ceph-deploy my-cluster]# ceph osd df
ID CLASS WEIGHT REWEIGHT SIZE RAW USE DATA OMAP META AVAIL %USE VAR PGS STATUS
0 hdd 0.01949 1.00000 20 GiB 1.5 GiB 536 MiB 4 KiB 1024 MiB 18 GiB 7.62 1.03 35 up
1 hdd 0.01949 1.00000 20 GiB 1.7 GiB 757 MiB 4 KiB 1024 MiB 18 GiB 8.70 1.17 46 up
2 hdd 0.01949 1.00000 20 GiB 1.5 GiB 469 MiB 1 KiB 1024 MiB 19 GiB 7.29 0.98 35 up
3 hdd 0.01949 1.00000 20 GiB 1.8 GiB 824 MiB 4 KiB 1024 MiB 18 GiB 9.02 1.22 46 up
4 hdd 0.01949 1.00000 20 GiB 1.6 GiB 653 MiB 4 KiB 1024 MiB 18 GiB 8.19 1.10 40 up
5 hdd 0.01949 1.00000 20 GiB 1.6 GiB 640 MiB 1 KiB 1024 MiB 18 GiB 8.13 1.09 41 up
6 hdd 0 1.00000 20 GiB 1.0 GiB 45 MiB 4 KiB 1024 MiB 19 GiB 5.22 0.70 0 up
7 hdd 0 1.00000 20 GiB 1.0 GiB 45 MiB 1 KiB 1024 MiB 19 GiB 5.22 0.70 0 up
TOTAL 160 GiB 12 GiB 3.9 GiB 29 KiB 8.0 GiB 148 GiB 7.42
MIN/MAX VAR: 0.70/1.22 STDDEV: 1.37


注:
(1) 这个阶段 ceph 会自动将数据迁移到其他状态正常的 OSD 上,所以在执行完成后,需要使用 ceph -w 查看数据迁移流程,等到不再有输出
后,数据迁移完毕。
[root@ceph-deploy my-cluster]# ceph -w
cluster:
id: 14912382-3d84-4cf2-9fdb-eebab12107d8
health: HEALTH_WARN
Degraded data redundancy: 193/972 objects degraded (19.856%), 32 pgs degraded

services:
mon: 3 daemons, quorum ceph-node01,ceph-node02,ceph-node03 (age 16m)
mgr: ceph-node01(active, since 16m), standbys: ceph-node03, ceph-node02
mds: cephfs:1 {0=ceph-node01=up:active} 2 up:standby
osd: 8 osds: 8 up (since 16m), 8 in (since 4d); 7 remapped pgs

data:
pools: 3 pools, 81 pgs
objects: 324 objects, 1.2 GiB
usage: 12 GiB used, 148 GiB / 160 GiB avail
pgs: 193/972 objects degraded (19.856%)
20/972 objects misplaced (2.058%)
40 active+clean
31 active+recovery_wait+degraded
8 active+remapped+backfill_wait
1 active+recovering
1 active+recovering+degraded

io:
recovery: 19 MiB/s, 4 objects/s


2021-12-24T23:07:46.106426+0800 mon.ceph-node01 [WRN] Health check update: Degraded data redundancy: 160/972 objects degraded (16.461%), 24 pgs degraded (PG_DEGRADED
)2021-12-24T23:07:51.110490+0800 mon.ceph-node01 [WRN] Health check update: Degraded data redundancy: 108/972 objects degraded (11.111%), 15 pgs degraded (PG_DEGRADED
)2021-12-24T23:07:56.113596+0800 mon.ceph-node01 [WRN] Health check update: Degraded data redundancy: 54/972 objects degraded (5.556%), 8 pgs degraded (PG_DEGRADED)
2021-12-24T23:08:01.115724+0800 mon.ceph-node01 [WRN] Health check update: Degraded data redundancy: 8/972 objects degraded (0.823%), 1 pg degraded (PG_DEGRADED)
2021-12-24T23:08:04.136586+0800 mon.ceph-node01 [INF] Health check cleared: PG_DEGRADED (was: Degraded data redundancy: 8/972 objects degraded (0.823%), 1 pg degraded)
2021-12-24T23:08:04.136613+0800 mon.ceph-node01 [INF] Cluster is now healthy

(2) PG 修复
不是数据迁移结束后就万事大吉了,可以通过下面这个命令看到数据迁移后 pg 状态是否有不正常需要修复的。
[root@ceph-deploy my-cluster]# ceph health detail
如果有不正常的 pg,使用如下命令,执行 repair 命令来修复,如果还是不成功,可以使用 scrub 来进行数据清理。
[root@ceph-deploy my-cluster]# ceph pg repair {pg-name}
[root@ceph-deploy my-cluster]# ceph pg scrub {pg-name}

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

[root@ceph-node04 ~]# systemctl stop ceph-osd@6.service
[root@ceph-node04 ~]# systemctl stop ceph-osd@7.service
[root@ceph-node04 ~]# ps -ef | grep -v grep | grep ceph
root 786 1 0 23:09 ? 00:00:00 /usr/bin/python3.6 /usr/bin/ceph-crash
[root@ceph-node04 ~]# ceph osd df
ID CLASS WEIGHT REWEIGHT SIZE RAW USE DATA OMAP META AVAIL %USE VAR PGS STATUS
0 hdd 0.01949 1.00000 20 GiB 1.5 GiB 536 MiB 4 KiB 1024 MiB 18 GiB 7.62 1.03 35 up
1 hdd 0.01949 1.00000 20 GiB 1.7 GiB 757 MiB 4 KiB 1024 MiB 18 GiB 8.70 1.17 46 up
2 hdd 0.01949 1.00000 20 GiB 1.5 GiB 470 MiB 1 KiB 1024 MiB 19 GiB 7.30 0.98 35 up
3 hdd 0.01949 1.00000 20 GiB 1.8 GiB 824 MiB 4 KiB 1024 MiB 18 GiB 9.03 1.22 46 up
4 hdd 0.01949 1.00000 20 GiB 1.6 GiB 653 MiB 4 KiB 1024 MiB 18 GiB 8.19 1.10 40 up
5 hdd 0.01949 1.00000 20 GiB 1.6 GiB 640 MiB 1 KiB 1024 MiB 18 GiB 8.13 1.09 41 up
6 hdd 0 1.00000 20 GiB 1.0 GiB 45 MiB 4 KiB 1024 MiB 19 GiB 5.22 0.70 0 down
7 hdd 0 1.00000 20 GiB 1.0 GiB 45 MiB 1 KiB 1024 MiB 19 GiB 5.22 0.70 0 down
TOTAL 160 GiB 12 GiB 3.9 GiB 29 KiB 8.0 GiB 148 GiB 7.43
MIN/MAX VAR: 0.70/1.22 STDDEV: 1.37

3 将 osd 设置 out
通知集群这个osd不再映射数据了,不提供服务了,因为本身没权重,就不会影响到整体的分布,也就没有迁移。

[root@ceph-deploy my-cluster]# ceph osd out 6
[root@ceph-deploy my-cluster]# ceph osd out 7
[root@ceph-deploy my-cluster]# ceph osd df
ID CLASS WEIGHT REWEIGHT SIZE RAW USE DATA OMAP META AVAIL %USE VAR PGS STATUS
0 hdd 0.01949 1.00000 20 GiB 1.5 GiB 537 MiB 4 KiB 1024 MiB 18 GiB 7.62 0.93 35 up
1 hdd 0.01949 1.00000 20 GiB 1.7 GiB 758 MiB 4 KiB 1024 MiB 18 GiB 8.70 1.07 46 up
2 hdd 0.01949 1.00000 20 GiB 1.5 GiB 470 MiB 1 KiB 1024 MiB 19 GiB 7.30 0.89 35 up
3 hdd 0.01949 1.00000 20 GiB 1.8 GiB 824 MiB 4 KiB 1024 MiB 18 GiB 9.03 1.11 46 up
4 hdd 0.01949 1.00000 20 GiB 1.6 GiB 654 MiB 4 KiB 1024 MiB 18 GiB 8.19 1.00 40 up
5 hdd 0.01949 1.00000 20 GiB 1.6 GiB 641 MiB 1 KiB 1024 MiB 18 GiB 8.13 1.00 41 up
6 hdd 0 0 0 B 0 B 0 B 0 B 0 B 0 B 0 0 0 down
7 hdd 0 0 0 B 0 B 0 B 0 B 0 B 0 B 0 0 0 down
TOTAL 120 GiB 9.8 GiB 3.8 GiB 23 KiB 6.0 GiB 110 GiB 8.16
MIN/MAX VAR: 0.89/1.11 STDDEV: 0.59

4 立即执行删除 OSD 中数据
从集群中删除OSD的所有痕迹,包括其cephx加密密钥,dm-crypt lockbox秘钥,OSD ID和crush map entry

[root@ceph-deploy my-cluster]# ceph osd purge osd.6 --yes-i-really-mean-it
[root@ceph-deploy my-cluster]# ceph osd purge osd.7 --yes-i-really-mean-it
[root@ceph-deploy my-cluster]# ceph osd df
ID CLASS WEIGHT REWEIGHT SIZE RAW USE DATA OMAP META AVAIL %USE VAR PGS STATUS
0 hdd 0.01949 1.00000 20 GiB 1.5 GiB 537 MiB 4 KiB 1024 MiB 18 GiB 7.62 0.93 35 up
1 hdd 0.01949 1.00000 20 GiB 1.7 GiB 758 MiB 4 KiB 1024 MiB 18 GiB 8.70 1.07 46 up
2 hdd 0.01949 1.00000 20 GiB 1.5 GiB 470 MiB 1 KiB 1024 MiB 19 GiB 7.30 0.89 35 up
3 hdd 0.01949 1.00000 20 GiB 1.8 GiB 824 MiB 4 KiB 1024 MiB 18 GiB 9.03 1.11 46 up
4 hdd 0.01949 1.00000 20 GiB 1.6 GiB 654 MiB 4 KiB 1024 MiB 18 GiB 8.19 1.00 40 up
5 hdd 0.01949 1.00000 20 GiB 1.6 GiB 641 MiB 1 KiB 1024 MiB 18 GiB 8.13 1.00 41 up
TOTAL 120 GiB 9.8 GiB 3.8 GiB 23 KiB 6.0 GiB 110 GiB 8.16
MIN/MAX VAR: 0.89/1.11 STDDEV: 0.59

[root@ceph-deploy my-cluster]# ceph -s
cluster:
id: 14912382-3d84-4cf2-9fdb-eebab12107d8
health: HEALTH_OK

services:
mon: 3 daemons, quorum ceph-node01,ceph-node02,ceph-node03 (age 31m)
mgr: ceph-node01(active, since 30m), standbys: ceph-node03, ceph-node02
mds: cephfs:1 {0=ceph-node02=up:active} 2 up:standby
osd: 6 osds: 6 up (since 5m), 6 in (since 4m)

data:
pools: 3 pools, 81 pgs
objects: 325 objects, 1.2 GiB
usage: 9.8 GiB used, 110 GiB / 120 GiB avail
pgs: 81 active+clean

[root@ceph-deploy my-cluster]# ceph df
--- RAW STORAGE ---
CLASS SIZE AVAIL USED RAW USED %RAW USED
hdd 120 GiB 110 GiB 3.8 GiB 9.8 GiB 8.16
TOTAL 120 GiB 110 GiB 3.8 GiB 9.8 GiB 8.16

--- POOLS ---
POOL ID PGS STORED OBJECTS USED %USED MAX AVAIL
device_health_metrics 1 1 0 B 0 0 B 0 34 GiB
cephfs_data 2 64 1.2 GiB 302 3.5 GiB 3.30 34 GiB
cephfs_metadata 3 16 182 KiB 23 2.1 MiB 0 34 GiB

5 卸载磁盘
[root@ceph-node04 ~]# umount /var/lib/ceph/osd/ceph-6
[root@ceph-node04 ~]# umount /var/lib/ceph/osd/ceph-7

6 卸载 ceph 包并清理数据
[root@ceph-deploy my-cluster]# ceph-deploy purge ceph-node04

执行的命令实际为:
# yum -y -q remove ceph ceph-release ceph-common ceph-radosgw
"/etc/ceph/"目录会被移除。

7 清理 ceph-node04 节点上的数据
[root@ceph-deploy my-cluster]# ceph-deploy purgedata ceph-node04

执行的命令为:
Running command: rm -rf --one-file-system -- /var/lib/ceph
Running command: rm -rf --one-file-system -- /etc/ceph/

8 彻底清理 ceph 相关软件包
[root@ceph-node04 ~]# rpm -qa |grep 15.2.15 |xargs -i yum remove {} -y

9 取消 OSD 盘创建的 LVM 逻辑卷映射关系
[root@ceph-node04 ~]# dmsetup info -C |awk '/ceph/{print $1}' |xargs -i dmsetup remove {}

10 清除 OSD 盘 GPT 数据结构
[root@ceph-node04 ~]# yum install gdisk -y
# 从硬盘中删除所有分区
[root@ceph-node04 ~]# sgdisk --zap-all /dev/sdb
[root@ceph-node04 ~]# sgdisk --zap-all /dev/sdc

11 将 ceph-deploy 节点上 ceph-node04 的 hosts 解析删除

12 验证 ceph 集群 osd 缩容后数据的完整性
[root@ceph-deploy my-cluster]# cd /data/
[root@ceph-deploy data]# md5sum -c ubuntu.md5
ubuntu-20.04.3-live-server-amd64.iso: OK

5 扩容PG

(1) 命令格式
# ceph osd pool set {pool-name} pg_num 128
# ceph osd pool set {pool-name} pgp_num 128

注:
1) 扩容大小取跟它接近的2的N次方
2) 在更改 pool 的 PG 数量时,需同时更改 PGP 的数量。PGP 是为了管理 placement 而存在的专门的 PG,它和 PG 的数量应该保持一致。如果
你增加pool的 pg_num,就需要同时增加 pgp_num,保持它们大小一致,这样集群才能正常 rebalancing。

(2) 命令举例
[root@ceph-deploy ~]# ceph osd pool set rbd-pool pg_num 128
[root@ceph-deploy ~]# ceph osd pool set rbd-pool pgp_num 128