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
相关推荐
泡沫·3 天前
CEPH的基本认识
ceph
2301_767902644 天前
ceph分布式存储(三)
分布式·ceph
2301_767902645 天前
ceph分布式存储(一)
分布式·ceph
2301_767902645 天前
ceph分布式存储(二)
分布式·ceph
FJW0208147 天前
cephadm部署ceph集群以及k8s对接
ceph·容器·kubernetes
韭菜张师傅8 天前
Ceph RBD 命令详解
ceph
韭菜张师傅9 天前
Ceph FS 命令详解
ceph
韭菜张师傅9 天前
Ceph MDS 命令详解
网络·ceph
lpruoyu9 天前
【云原生】Kubernetes平台存储系统搭建_CRI、CNI、CSI
ceph·云原生·容器·kubernetes
JNU freshman10 天前
Ceph 中与“重构/恢复/回填/重平衡”相关的参数表
java·ceph·重构