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
相关推荐
老wang你好1 天前
Ceph分布式存储系统全解析
ceph
一个行走的民14 天前
分布式系统中 Map 增量(Delta)是否需要持久化
ceph
一个行走的民16 天前
BlueStore 核心原理与关键机制
ceph
奋斗的小青年I18 天前
Proxmox VE Ceph 超融合集群落地实战
windows·ceph·vmware·pve·超融合·proxmox
一个行走的民18 天前
深度剖析 Ceph PG 分裂机制:原理、底层、实操、影响、线上避坑(最全完整版)
ceph·算法
一个行走的民18 天前
Ceph 核心概念精讲:彻底搞懂 PG、PGP、pg_num、pgp_num
ceph
Mr.王8351 个月前
Kubernetes宿主机本地盘池化管理
ceph·云原生·容器·kubernetes
一个行走的民1 个月前
CEPH OSD心跳机制
ceph
一个行走的民1 个月前
Ceph PG 状态详解与线上故障处理
网络·ceph
一个行走的民1 个月前
Ceph MDS 状态机与 Monitor 中的状态流转分析
ceph