Ceph添加、删除osd及故障硬盘更换

添加或删除osd均在ceph部署节点的cent用户下的ceph目录进行。

1. 添加osd

当前ceph集群中有如下osd,现在准备新添加osd:

  (1)选择一个osd节点,添加好新的硬盘:

  (2)显示osd节点中的硬盘,并重置新的osd硬盘:

列出节点磁盘:

ceph-deploy disk list rab1

擦净节点磁盘:

ceph-deploy disk zap rab1 /dev/sbd(或者)ceph-deploy disk zap rab1:/dev/vdb1

  (3)准备Object Storage Daemon:

ceph-deploy osd prepare rab1:/var/lib/ceph/osd1

  (4)激活Object Storage Daemon:

ceph-deploy osd activate rab1:/var/lib/ceph/osd1

2. 删除osd

现在要将 rab1中的 osd.4 删除:

(1)把 OSD 踢出集群

ceph osd out osd.4

(2)在相应的节点,停止ceph-osd服务

systemctl stop ceph-osd@4.service
systemctl disable ceph-osd@4.service

(3)删除 CRUSH 图的对应 OSD 条目,它就不再接收数据了

ceph osd crush remove osd.4

(4)删除 OSD 认证密钥

ceph auth del osd.4

(5)删除osd.4

ceph osd rm osd.4

3. ceph osd故障硬盘更换

正常状态:

故障状态:

实施更换步骤:

(1)关闭ceph集群数据迁移:

  osd硬盘故障,状态变为down。在经过mod osd down out interval 设定的时间间隔后,ceph将其标记为out,并开始进行数据迁移恢复。为了降低ceph进行数据恢复或scrub等操作对性能的影响,可以先将其暂时关闭,待硬盘更换完成且osd恢复后再开启:

for i in noout nobackfill norecover noscrub nodeep-scrub;do ceph osd set $i;done

(2)定位故障osd

ceph osd tree | grep -i down

(3)进入osd故障的节点,卸载osd挂载目录

[root@node3 ~]# umount /var/lib/ceph/osd/ceph-5

(4)从crush map 中移除osd

[root@node1 ~]# ceph osd crush remove osd.5
removed item id 5 name 'osd.5' from crush map

 (5)删除故障osd的密钥

[root@node1 ~]# ceph auth del osd.5
updated

(6)删除故障osd

[root@node1 ~]# ceph osd rm 5
removed osd.5

(7)更换完新硬盘后,注意新硬盘的盘符,并创建osd

(8)在部署节点,切换为cent用户,添加新的osd

[cent@deploy ceph]$ ceph-deploy osd create --data /dev/sdd node3

(9)待新osd添加crush map后,重新开启集群禁用标志

for i in noout nobackfill norecover noscrub nodeep-scrub;do ceph osd unset $i;done

ceph集群经过一段时间的数据迁移后,恢复active+clean状态

 

转载于:https://www.cnblogs.com/ajunyu/p/11165950.html

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ceph 集群中添加 OSD 通常可以通过以下步骤完成: 1. 在 OSD 节点上创建 OSD 数据存储目录,通常为一个独立的磁盘分区。你需要确保这个分区已经格式化为 XFS 或者 Btrfs 文件系统,并且已经挂载到一个目录下。 2. 在 OSD 节点上安装 Ceph OSD 守护进程。你可以使用系统包管理器来安装 `ceph-osd` 包,或者手动编译和安装 Ceph。 3. 在 OSD 节点上创建 OSD 标识。你需要使用 `ceph-authtool` 工具来生成一个新的 OSD 密钥,然后在 Ceph MON 节点上使用 `ceph auth add` 命令将这个密钥添加Ceph 集群中。 4. 在 Ceph MON 节点上创建 OSD 配置文件。你需要使用 `ceph-conf` 工具来生成一个新的 OSD 配置文件,并将这个文件复制到 OSD 节点的 `/etc/ceph` 目录下。 5. 在 Ceph MON 节点上添加 OSD 节点。你需要使用 `ceph-deploy` 工具来将 OSD 节点添加Ceph 集群中,例如:`ceph-deploy osd create <OSD节点名>:<OSD磁盘挂载目录>`。 6. 在 OSD 节点上启动 OSD 守护进程。你需要使用 `systemctl` 命令来启动 `ceph-osd.target` 服务,并将其设置为开机自启动。 7. 在 Ceph MON 节点上检查 OSD 状态。你需要使用 `ceph osd tree` 命令来查看 OSD 是否已经成功加入 Ceph 集群,并且是否在正常工作状态。 注意,上述步骤中的 `<OSD节点名>` 是指你要添加 OSD 的节点的名称,而 `<OSD磁盘挂载目录>` 是指你要添加 OSD 的磁盘挂载目录,例如 `/dev/sdb`。如果你要添加多个 OSD,可以重复执行上述步骤,每次使用不同的 OSD 节点和磁盘挂载目录。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值