Ceph MDS 命令详解

Ceph MDS 命令详解

MDS(Metadata Server)是 CephFS(Ceph File System)的元数据服务器,负责存储文件系统的元数据,如目录结构、文件属性等。MDS 使得 Ceph 能够提供 POSIX 兼容的文件系统接口。

MDS 基础命令

1. 查看 MDS 状态

bash 复制代码
# 查看 MDS 状态概览
ceph mds stat

# 查看 MDS 详细信息
ceph mds metadata

2. MDS 管理命令

bash 复制代码
# 启动 MDS 服务
ceph mds start <mds_name>

# 停止 MDS 服务
ceph mds stop <mds_name>

# 设置 MDS 集群状态
ceph mds set_state <gid> <state>

MDS 部署和管理

1. 使用 orch 命令管理 MDS

在 cephadm 环境中,使用 orch 命令来管理 MDS:

bash 复制代码
# 查看 MDS 服务状态
ceph orch ls --service-type mds

# 查看 MDS daemon 状态(相当统一查看进程)
ceph orch ps --daemon-type mds

# 部署 MDS 服务
ceph orch apply mds mds_name --placement="<node1> <node2>"
ceph orch apply mds zjl_cephfs --placement="count:2"

# 手动添加 MDS 实例
ceph orch daemon add mds mds_name <node>
ceph orch daemon add mds zjl_cephfs ceph1

# 移除 MDS 实例
ceph orch daemon rm <mds_daemon_name>
ceph orch daemon rm mds.zjl_cephfs.ceph3.hvihou 

# 删除 MDS 服务
ceph orch rm mds.mds_name
ceph orch rm mds.zjl_cephfs

2. 文件系统和 MDS 管理

bash 复制代码
# 创建文件系统(自动创建 MDS)
ceph fs volume create <fs_name>
ceph fs volume create test
# 此命令会创建
# 1、文件系统以及pool:name: test, metadata pool: cephfs.test.meta, data pools: [cephfs.test.data ]
# 2、mds:mds.test.ceph3.fqxnaa             ceph3         running (3m)     3m ago   3m    15.9M        -  17.2.8   259b35566514  e5314ffbd008  
#    mds.test.ceph4.droahw             ceph4         running (3m)     3m ago   3m    13.3M        -  17.2.8   259b35566514  841c45175775



# 删除文件系统
# ==============================
# 1. 停用文件系统(强制使所有 MDS 失效)
# ==============================
ceph fs fail fs_name

# ==============================
# 2. 删除 CephFS 文件系统元数据
# ==============================
ceph fs rm fs_name --yes-i-really-mean-it

# ==============================
# 3. 删除由 cephadm 管理的 MDS 服务
#    (服务名通常为 mds.fs_name)
# ==============================
ceph orch rm mds.fs_name

# ==============================
# 4. (可选)删除关联的存储池(需先启用 pool 删除权限)
# ==============================
# 4.1 启用 pool 删除(高危操作,仅临时开启)
ceph config set mon mon_allow_pool_delete true

# 4.2 删除数据池和元数据池(名称需根据实际情况调整)
#    通常默认命名规则为:fs_name_data / fs_name_meta 注意要写两遍pool的名字
ceph osd pool rm fs_name_data fs_name_data --yes-i-really-really-mean-it
ceph osd pool rm fs_name_meta fs_name_meta --yes-i-really-really-mean-it

# 4.3 禁用 pool 删除(安全加固,强烈建议执行)
ceph config set mon mon_allow_pool_delete false



# 查看所有文件系统
ceph fs ls

# 获取文件系统详细信息
ceph fs get <fs_name>

常用 MDS 管理场景

场景 1:创建 CephFS 文件系统

创建一个新的 CephFS 文件系统:

bash 复制代码
# 1. 创建文件系统(会自动创建相关的存储池和 MDS)
ceph fs volume create myfs

# 2. 查看文件系统状态
ceph fs status myfs

# 3. 查看 MDS 状态
ceph mds stat

场景 2:扩展 MDS 集群

为提高文件系统性能,可以部署多个 MDS 实例:

bash 复制代码
# 1. 查看当前 MDS 配置
ceph fs get myfs

# 2. 增加 MDS 实例数量
ceph orch apply mds myfs --placement="3"

# 3. 验证 MDS 状态
ceph mds stat

场景 3:配置 MDS 故障转移

配置 MDS 高可用性:

bash 复制代码
# 1. 设置允许的活跃 MDS 数量
ceph fs set myfs max_mds 2

# 2. 设置 standby MDS 数量
ceph fs set myfs standby_count_wanted 2

# 3. 验证配置
ceph fs status myfs

场景 4:故障 MDS 恢复

当 MDS 发生故障时,进行恢复操作:

bash 复制代码
# 1. 查看 MDS 状态
ceph mds stat

# 2. 如果 MDS 未自动恢复,重启 MDS 服务
ceph orch daemon restart <mds_daemon_name>

# 3. 验证恢复状态
ceph mds stat

MDS 最佳实践

1. 部署建议

  • 数量:根据文件系统负载部署适当数量的 MDS
  • 分布:将 MDS 分布在不同的物理节点上
  • 资源:为 MDS 分配足够的内存和 CPU 资源

2. 性能优化

  • 缓存配置:根据工作负载调整 MDS 缓存大小
  • 负载均衡:启用并配置 MDS 负载均衡器
  • 文件大小:合理设置最大文件大小限制

3. 监控建议

  • 健康检查:定期检查 MDS 健康状态
  • 性能监控:监控 MDS 性能指标
  • 日志分析:定期分析 MDS 日志

注意事项

  1. 依赖关系:MDS 依赖于底层的 OSD 集群
  2. 存储池:创建文件系统时会自动创建元数据和数据存储池
  3. 客户端连接:确保客户端能够访问 MDS 和 OSD
  4. 权限控制:合理配置文件系统访问权限

总结

MDS 是 CephFS 的核心组件,负责管理文件系统的元数据。通过合理配置和管理 MDS,可以为用户提供高性能、高可用的分布式文件系统服务。在实际运维中,应密切关注 MDS 的状态和性能,及时处理可能出现的问题。

参考文档

  1. Ceph 官方文档 - MDS
  2. Ceph 官方文档 - 文件系统管理
  3. Ceph 官方文档 - MDS 配置

温馨提示

由于网络环境或文件存储等因素,若相关文件或图片链接暂时无法访问,您也可以通过访问张师傅的好来斯技术博客获取更多相关资源和最新信息。

本篇文章原始链接:

复制代码
https://www.howlaisi.com/categories/ceph/ceph-mds-ming-ling-xiang-jie
相关推荐
2401_865382508 小时前
密评与等保的关系:不是替代,而是互补
网络·信息化造价
白狐_79810 小时前
408计算机网络第3章:PPP协议——帧格式、LCP/NCP、状态机与真题精讲
网络·计算机网络·智能路由器
MIXLLRED10 小时前
解决——Ubuntu远程桌面指令更换网络
linux·网络·ubuntu
zt1985q12 小时前
本地部署开源网络书签与内容管理工具 Karakeep 并实现外部访问
运维·服务器·网络·数据库·网络协议·开源
白狐_79814 小时前
408计算机网络第3章:以太网交换机与共享式以太网——知识总结
服务器·网络·计算机网络
笨鸟先飞,勤能补拙14 小时前
网络安全等级保护 2.0:从定级备案、建设整改到持续合规的系统指南
网络·人工智能·windows·安全·web安全·网络安全·github
wgh65315 小时前
策略路由实验
网络
難釋懷16 小时前
Nginx日志
前端·网络·nginx
Loongproxy16 小时前
大规模采集为啥用隧道代理IP?会话保持如何做到无感轮换
java·服务器·网络
老赵的博客16 小时前
工控机之UDP组播
网络·网络协议·udp