You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在cephadm部署的Ceph集群中为OSD启用dm-crypt?

如何在cephadm部署的Ceph集群中为OSD启用dm-crypt?

嘿,刚好我之前处理过类似的场景,用cephadm给OSD加dm-crypt其实挺简单的,分两种方式,看你是想全局默认加密还是只给特定OSD加密:

方式一:全局配置,所有新OSD自动启用dm-crypt

如果希望之后添加的所有OSD都默认加密,先给集群设置全局参数:

ceph config set osd osd_dmcrypt_enable true

设置完之后,你原来用的添加OSD的命令不需要改,直接执行:

ceph orch daemon add osd ceph-osd-01:/dev/sdb
ceph orch daemon add osd ceph-osd-02:/dev/sdb
ceph orch daemon add osd ceph-osd-03:/dev/sdb

cephadm会自动为每个磁盘创建dm-crypt加密设备,然后在加密层上部署OSD,密钥会自动存在Ceph的密钥环里,不用你手动管理。

方式二:仅给单个/部分OSD启用加密

如果不想全局开启,只想给特定的OSD加密,在添加的时候加上--dmcrypt参数就行:

ceph orch daemon add osd --dmcrypt ceph-osd-01:/dev/sdb
ceph orch daemon add osd --dmcrypt ceph-osd-02:/dev/sdb
ceph orch daemon add osd --dmcrypt ceph-osd-03:/dev/sdb

验证加密是否生效

添加完之后,你可以登录到OSD节点,用以下方法确认:

  • 执行lsblk,能看到对应磁盘(比如/dev/sdb)下面挂载了/dev/mapper/ceph-xxxx的加密设备,OSD的数据就存在这个加密设备上
  • 或者用ceph osd metadata <你的OSD ID>,输出内容里会包含dmcrypt_enabled: true的字段

另外要注意几点:

  • 用来做OSD的磁盘必须是空的,不能有已有的分区或文件系统,cephadm会自动清理并创建加密分区
  • 如果是用Ansible配合cephadm批量部署,也可以在Ansible的配置变量里加上osd_dmcrypt_enable: true,这样批量添加OSD时会自动启用加密

备注:内容来源于stack exchange,提问作者Swampcritter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 08:33:04