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 天前
腾讯云 CVM 搭建 Ceph 集群部署笔记
笔记·ceph·腾讯云
刘某的Cloud4 天前
ceph osd 导入导出 rbd volume 卷
linux·运维·ceph·volume
heimeiyingwang4 天前
【架构实战】Kubernetes存储实战:从EmptyDir到Ceph CSI的持久化存储选型指南
ceph·架构·kubernetes
DLYSB_15 天前
存储运维实战:基于 Ceph Event 监听与 Python 适配器的分布式存储健康度物理声光响应架构
运维·ceph·python·报警灯
AAA@峥18 天前
Ceph 分布式文件系统 CephFS 实战指南
运维·分布式·ceph
AAA@峥23 天前
Ceph RBD 块存储全解析:原理与实操汇总
运维·分布式·ceph
AAA@峥24 天前
Ceph 集群配置管理完整指南
运维·数据库·分布式·ceph
胖兔纸21 个月前
OpenStack 1.7.2 & Ceph 9.2.1 运维命令
运维·ceph·openstack
seacracker1 个月前
Ceph 太重运维成本高?轻量统一存储 PowerFS 对比测评(HPC/AI 场景首选)
运维·人工智能·ceph·ai存储·统一存储
牛奶咖啡131 个月前
CEPH分布式存储应用实践——基于Docker安装部署Ceph分布式存储环境
ceph·安装部署ceph分布式存储·cephv20.2.2·docker中手动部署ceph·cephadm部署ceph·docker部署ceph准备·分布式存储环境部署