xsky/ceph rbd新建pool后,无法创建新盘

按网上说的创建了新的pool

bash 复制代码
ceph osd pool create kubernetes 128 128 replicated
rbd create --size 1G kubernetes/test-image

新池创建没问题,然而在rbd create --size 1G kubernetes/test-image时卡死了,网上搜了一堆,也没解决

ceph status 正常

ceph health detail 输出一堆的类似如下信息:

复制代码
pg 8.7c1 is stuck inactive for 489.141989, current state creating, last acting []

last acting 列表是空的,意味着目前没有任何一个 OSD 被选为这个 PG 的副本目标。换句话说,Ceph 的 CRUSH 算法无法为这个 PG 计算出应该把数据放在哪几个 OSD 上。

为什么这样呢?

ceph osd pool get kubernetes crush_rule

查看到kubernetes 走的是default树上

重新建一个规则:

sh 复制代码
ceph osd crush rule create-replicated kubernetes-rule \
  7ab5f91009724c85a73d5aedb3ec286a-root \
  host

将pool切换到新规则

bash 复制代码
ceph osd pool set kubernetes crush_rule kubernetes-rule

修改规则后,需要让集群重新计算PG分布:

bash 复制代码
ceph osd pool set kubernetes pgp_num 1024  # 先调小
ceph osd pool set kubernetes pgp_num 2048  # 再调回原值

调小可能很慢,不必等待,不是真的要调整,是要触发规则生效,接着调回原值,再建新盘,你会发现成功的。

相关推荐
SeanQhl6 天前
基于华为云ECS平台的分布式存储系统Ceph-部署指导
ceph·分布式存储·华为云ecs
あ-7 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》第十八章:Rook-Ceph 企业级备份、容灾与数据保护体系
ceph
あ-8 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》- 第六章:Kubernetes Rook-Ceph 运维手册 v1.0(生产版)
ceph
あ-8 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》- 第十二章:Rook-Ceph 监控、告警与可观测性体系ds
ceph
あ-8 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》- 第十一章:Rook-Ceph 升级、扩容与生命周期管理
ceph
あ-8 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》- 第十章:Rook-Ceph 安全加固与生产合规
ceph
あ-8 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》- 第七章:Rook-Ceph 生产故障案例库
ceph
あ-8 天前
Proxmox Ceph 集群故障排查手册
ceph
あ-8 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》- 第八章:Rook-Ceph 性能优化与生产调优
ceph
RobinDevNotes12 天前
Palmier Pro:AI时代的Mac视频编辑器
人工智能·ceph·macos·ai·音视频·视频编辑·mcp