Ceph BlueFS 溢出修复

Ceph BlueFS 溢出修复

  • [Ceph BlueFS 溢出修复](#Ceph BlueFS 溢出修复)
    • 问题概述
      • [检查 osd.383 的详细信息](#检查 osd.383 的详细信息)
      • [查看 BlueFS 空间使用情况](#查看 BlueFS 空间使用情况)
      • [方案一: RocksDB Compact (推荐先尝试)](#方案一: RocksDB Compact (推荐先尝试))
      • [执行方案二:重启 OSD.383](#执行方案二:重启 OSD.383)
        • [步骤 1: 确认 OSD 可以安全重启](#步骤 1: 确认 OSD 可以安全重启)
        • [步骤 2: 在 ceph116 节点执行重启](#步骤 2: 在 ceph116 节点执行重启)
        • [步骤 3: 验证健康状态](#步骤 3: 验证健康状态)

Ceph BlueFS 溢出修复

问题概述

集群信息:

  • Ceph 版本: 14.2.22 (Nautilus stable)

告警信息:

bash 复制代码
HEALTH_WARN BlueFS spillover detected on 1 OSD(s)
BLUEFS_SPILLOVER BlueFS spillover detected on 1 OSD(s)
     osd.383 spilled over 352 MiB metadata from 'db' device (28 GiB used of 58 GiB) to slow device

影响:

  • OSD.383 的元数据溢出到 HDD,导致性能下降

检查 osd.383 的详细信息

bash 复制代码
ceph osd metadata osd.383

设备配置:

json 复制代码
{
  "hostname": "ceph116",
  "bluefs_db_dev_node": "/dev/dm-102",
  "bluefs_db_size": "62277025792",  // 58 GiB
  "bluefs_db_type": "ssd",
  "bluestore_bdev_dev_node": "/dev/dm-28",
  "bluestore_bdev_size": "16000896466944",  // 14.5 TiB
  "bluestore_bdev_type": "hdd",
  "devices": "nvme0n1,sds"
}

查看 BlueFS 空间使用情况

bash 复制代码
ceph tell osd.383 bluestore bluefs available

BlueFS 空间使用:

json 复制代码
{
  "BDEV_DB (NVMe)": {
    "total": "58 GiB",
    "used": "28.3 GiB",
    "free": "29.7 GiB"
  },
  "BDEV_SLOW (HDD)": {
    "spillover": "352 MiB",
    "free": "595 GiB"
  }
}

方案一: RocksDB Compact (推荐先尝试)

执行压缩操作

Compact 操作会压缩 RocksDB,有可能将溢出的数据迁移回 DB 设备。

bash 复制代码
# ceph tell osd.383 compact
compacted omap in 278.544 seconds
bash 复制代码
tail -f /var/log/ceph/ceph-osd.383.log | grep -i compact

执行方案二:重启 OSD.383

Compact 操作虽然成功执行,但溢出告警仍然存在。这是因为已经溢出到 HDD 的 352 MiB 数据不会自动迁移回 DB 设备

步骤 1: 确认 OSD 可以安全重启
bash 复制代码
ceph osd ok-to-stop 383
步骤 2: 在 ceph116 节点执行重启
bash 复制代码
systemctl restart ceph-osd@383
步骤 3: 验证健康状态
bash 复制代码
ceph health detail
相关推荐
逐流人2 天前
Ceph对象存储与文件系统存储管理:从RADOS网关、S3与Swift到CephFS快照同步
linux·运维·ceph·云原生·云计算·swift·rados
逐流人2 天前
Ceph分布式存储集群配置与池管理:从配置优先级到PG、复本池与纠删码池
运维·分布式·ceph·云原生·云计算·rados
月落汀兰3 天前
建池后类型不可修改!深度拆解 Ceph PG 放置组,副本 / 纠删码池选型,快照与命名空间避坑
运维·ceph
.冰块.3 天前
Ceph 分布式存储实战(二):存储池管理与 cephx 认证授权
分布式·ceph·rados·纠删码·复本池·cephx认证与用户权限
.冰块.3 天前
Ceph 分布式存储实战(一):架构入门与 cephadm 集群部署
分布式·ceph·架构·cephadm
fengkai45454 天前
十、Ceph 分布式存储5-8
运维·ceph·容器
SeanQhl14 天前
基于华为云ECS平台的分布式存储系统Ceph-部署指导
ceph·分布式存储·华为云ecs
あ-15 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》第十八章:Rook-Ceph 企业级备份、容灾与数据保护体系
ceph
あ-15 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》- 第六章:Kubernetes Rook-Ceph 运维手册 v1.0(生产版)
ceph
あ-15 天前
《Kubernetes Rook-Ceph 运维手册 v1.0(生产版)》- 第十二章:Rook-Ceph 监控、告警与可观测性体系ds
ceph