Loading

5.6、ceph集群添加和删除OSD

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

图示: ceph thread

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

posted @ 2021-12-29 17:14  云起时。  阅读(955)  评论(0编辑  收藏  举报