千家信息网

ceph中mds与cephx有什么用

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,这篇文章主要介绍ceph中mds与cephx有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在CEPH中,块和对象是不用MDS的,在其文件系统中,元数据服务器MDS才是必
千家信息网最后更新 2025年12月03日ceph中mds与cephx有什么用

这篇文章主要介绍ceph中mds与cephx有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

对于完全分布式的系统,数据迁移和扩容是值得关注的痛点,那么Metadata Server是很需要避免单点故障和数据瓶颈的问题。

Ceph cephx认证配置

认证

注:当更新的时候,建议把认证的注解掉,然后在升级,一旦升级接收就激活认证。
默认情况下cephx协议是打开的,同时认证服务是要一定的计算资源的,如果你的网络环境很安全,你不想使用认证,你也可以把它关掉,但是不建议关掉。如果关闭认证,你就很有可能受到中间人***篡改client/server消息,这会导致严重的安全问题。

部署情景:

有两种主要的部署方式,一个是使用ceph-deploy工具,第一次部署最普遍使用的方式,也是最简单的,另一个是使用第三方的部署工具(chef,juju,puppet,etc。。。)在这个中情况下你就需要手动的执行或者配置你的部署工具来引导monitors。

Ceph-deploy

使用ceph-deploy部署集群,你不需要手动引导monitors或者创建client.admin用户或者钥匙环。这些在你执行ceph-deploy的时候都会帮你创建好的。
当你执行ceph-deploy new {initial-monitors},ceph会帮你创建monitor 钥匙环和生成一个ceph配置文件,里面有认证设置,默认是启用的。:
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
当执行ceph-deploy mon create-initial,ceph会引导初始化monitors,为client.admin用户检索包含key的ceph.client.admin.keyring文件。另外它也会检索给ceph-deploy和ceph-disk使用程序预备和激活osds和metadata 服务的钥匙环。
当执行ceph-deploy admin {node-name}(ceph必须在此之前安装)它会把配置文件和ceph.client.admin.keyring文件推送到每个节点的/etc/ceph目录下。这样你就可以在节点的命令行上以root用户执行ceph管理员的功能。

Manual deploy

当你手动部署集群的时候,你需要手动的引导monitors和创建用户和钥匙环。这里不做详细。
启用/禁用cephx
使用cephx认证就需要你为monitors,osd和metadata server提供一个key。如果你只是做启用或者禁用cephx的操作,则就没有必要重复引导过程。
启用cephx,ceph就会在默认的路径下寻找keyring,/etc/ceph/cluster.name.keyring.可以在配置文件ceph.conf的[global]部分的使用keyring选项来更改这个地址。但是不建议这么做。
执行下面的程序可以把cephx从禁用状态转到启用状态。如果你已经有key了,可以跳过创建key的步骤。
1.创建用户client.admin的key,并为客户端保存key的副本
Ceph auth get-or-create client.admin mon 'allow ' mds 'allow ' osd 'allow *' -o /etc/ceph/ceph.client.admin.keyring
注:如果/etc/ceph/ceph.client.admin.keyring已经存在,就不要再执行这一步。
2.为monitors集群产生一个keyring,并生成一个monitors 秘钥。
ceph-authtool -create-keyring /tmp/ceph.mon.keyring -gen-key -n mon. -cap mon 'allow *'
3.把keyring拷贝到每一个mon data路径下,如:拷贝到mon.a路径下:
cp /tmp/ceph.mon.keyring /var/lib/ceph/mon/ceph-a/keyring
4.为每个osd生成一个key,{id}时osd的编号。
ceph auth get-or-create osd.{id} mon 'allow rwx' osd 'allow *' -o /var/lib/ceph/osd/ceph-{id}/keyring
5.为每个mds生成一个key,{id}是mds的号
ceph auth get-or-create mds.{id} mon 'allow rwx' osd 'allow *' mds 'allow *' -o /var/lib/ceph/mds/ceph-{id}/keyring
6.通过设置[global]下的这几个选项来启用cephx.
Auth cluster required =cephx
auth service require = cephx
Auth client required = cephx
7.启动或者重启ceph集群。

禁用cephx

禁用cephx认证时非常简单的。
1.禁用cephx,在配置文件ceph.conf中的[global]部分设置下面几个参数。
auth cluster required = none
auth service required =none
auth client required =none
2.启动或者重启ceph集群
Keys
Key是用于集群中用户认证的。如果启用了cephx认证系统,就需要key;否则,不需要。一般key的默认保存路径在/etc/ceph目录下。给管理员或者client提供key的普遍方式是把可包含在/etc/ceph/目录下的keyring文件中(对于使用ceph-deploy部署工具)。文件格式通常是$cluster.client.admin.keyring;如果放在/etc/ceph目录下,则就不需要再在ceph的配置文件中指定keyring参数,如果没有则需要在ceph配置文件中指定keyring参数。
注:确保keyring文件的权限合适。
你可以在ceph配置文件中指定key,或者使用keyring指定key的路径。
参数:
Keyring:keyring文件的路径
Key:key的值
Keyfile:key文件路径
进程keyring
管理员用户或者部署工具(ceph-deploy)也会跟普通用户生成keyring方式一样,生成一个守护进程keyring。一般情况下,守护进程的keyring是在他们数据目录里面。默认Keyring位置和capabilities对于守护进程的功能来说是必须的。

ceph-mon
Location: mondata/keyringCapabilities:mon'allow′cephosdLocation:osd_data/keyring
Capabilities: mon 'allow profile osd' osd 'allow *'
ceph-mds
Location: mdsdata/keyringCapabilities:mds'allow′mon'allowprofilemds′osd'allowrwx′radosgwLocation:rgw_data/keyring
Capabilities: mon 'allow rwx' osd 'allow rwx'
守护进程的默认数据路径格式是:
/var/lib/ceph/type/cluster-$id
签名
在ceph Bobtail和以后的版本中我们都倾向于对所有的消息使用签名,使用session key来建立初始话认证,然而Ceph Argonaut和更早的版本确没有对消息做认证,为了保持兼容性,消息签名默认是关闭的。如果你是Bobtail或者更新的版本可以打开。
在认证上,Ceph提供了细粒度的控制,所以你可以在client和ceph的消息上启用或者禁用签名,也可以在对ceph进程之间的消息做启用或者禁用消息签名,这些可以使用下面的参数来配置:
cephx requite signatures :决定是否对client和ceph storage cluster,及ceph的守护进程之间的消息做数字签名,默认是false。
cephx cluster require signatures:决定是否对ceph的进程之间的消息签名,默认是false。
cephx service require signature :决定是否对client和ceph storage cluster之间的消息做认证,默认是false。
cephx sign messegs:如果ceph的版本支持消息签名,ceph将对所有的消息签名,默认是true。

存活时间

auth service ticket ttl:当ceph storage cluster发送给client一个ticket,这个选项用来定义这个ticket的存活时间(有效时间),默认是60*60。

Ceph集群中如何摘除一个包含mon、osd和mds的节点

步骤如下:

1、摘除mon

[root@bgw-os-node153 ~]# ceph mon remove bgw-os-node153

removed mon.bgw-os-node153 at 10.240.216.153:6789/0, there are now 2 monitors

2、摘除此节点上所有的osd

1)、查看此节点的osd

[root@bgw-os-node153 ~]# ceph osd tree

-4 1.08 host bgw-os-node153

8 0.27 osd.8 up 1

9 0.27 osd.9 up 1

10 0.27 osd.10 up 1

11 0.27 osd.11 up 1

2)、把上面的节点的osd进程停掉

[root@bgw-os-node153 ~]# /etc/init.d/ceph stop osd

=== osd.10 ===

Stopping Ceph osd.10 on bgw-os-node153...kill 2251...done

=== osd.9 ===

Stopping Ceph osd.9 on bgw-os-node153...kill 2023...kill 2023...done

=== osd.8 ===

Stopping Ceph osd.8 on bgw-os-node153...kill 1724...kill 1724...done

=== osd.11 ===

Stopping Ceph osd.11 on bgw-os-node153...kill 1501...done

3)、再次查看ceph osd状态

[root@bgw-os-node153 ~]# ceph osd tree

-4 1.08 host bgw-os-node153

8 0.27 osd.8 down 1

9 0.27 osd.9 down 1

10 0.27 osd.10 down 1

11 0.27 osd.11 down 1

4)、删除所有的osd

[root@bgw-os-node153 ~]# ceph osd rm 8

removed osd.8

[root@bgw-os-node153 ~]# ceph osd rm 9

removed osd.9

[root@bgw-os-node153 ~]# ceph osd rm 10

^[[Aremoved osd.10

[root@bgw-os-node153 ~]# ceph osd rm 11

removed osd.11

5)、删除所有osd的crush map

[root@bgw-os-node153 ~]# ceph osd crush rm osd.8

removed item id 8 name 'osd.8' from crush map

[root@bgw-os-node153 ~]# ceph osd crush rm osd.9

removed item id 9 name 'osd.9' from crush map

[root@bgw-os-node153 ~]# ceph osd crush rm osd.10

^[[Aremoved item id 10 name 'osd.10' from crush map

[root@bgw-os-node153 ~]# ceph osd crush rm osd.11

removed item id 11 name 'osd.11' from crush map

6)、删除所有osd的认证

[root@bgw-os-node153 ~]# ceph auth del osd.8

updated

[root@bgw-os-node153 ~]# ceph auth del osd.9

updated

[root@bgw-os-node153 ~]# ceph auth del osd.10

updated

[root@bgw-os-node153 ~]# ceph auth del osd.11

updated

7)、在ceph osd tree中删除此机器host的crush map

[root@bgw-os-node153 ~]# ceph osd crush rm bgw-os-node153

removed item id -4 name 'bgw-os-node153' from crush map

8)、卸载所有挂载在osd的硬盘

[root@bgw-os-node153 ~]# umount /var/lib/ceph/osd/ceph-8

[root@bgw-os-node153 ~]# umount /var/lib/ceph/osd/ceph-9

[root@bgw-os-node153 ~]# umount /var/lib/ceph/osd/ceph-10

[root@bgw-os-node153 ~]# umount /var/lib/ceph/osd/ceph-11

3、摘掉mds

1、直接关闭此节点的mds进程

[root@bgw-os-node153 ~]# /etc/init.d/ceph stop mds

=== mds.bgw-os-node153 ===

Stopping Ceph mds.bgw-os-node153 on bgw-os-node153...kill 4981...done

[root@bgw-os-node153 ~]#

2、删除此mds的认证

[root@bgw-os-node153 ~]# ceph auth del mds.bgw-os-node153

updated

以上是"ceph中mds与cephx有什么用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

文件 认证 消息 进程 配置 用户 路径 节点 集群 数据 系统 生成 参数 工具 目录 之间 手动 方式 版本 钥匙 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 地理信息数据库要素分层 中国知网是哪种类型数据库 hypixel服务器ip 天龙无法打开服务器列表 数据库安全技术实训总结 微博平台怎么抓取数据库 当前企业网络安全现状 数据库系统包括哪些内容 网络技术是怎样出现的 长沙专业软件开发机构 关于网络安全好看的黑板报高中 应用数据库连接不上 数据库错误1461 搭建数据库的功能 广州鼎隆网络技术有限公司 2021国家对网络安全 武汉工业能源管理系统软件开发 数据库职工姓名不能为空字符 怎样做能保证内部网络安全 信承诺互联网科技有限公司 网络安全金融进校园手抄报 河东区网络安全应急指挥中心 web程序直连数据库安全吗 怎么实现通过境外服务器玩游戏 北京中电太极软件开发怎么样 滨州企业党建软件开发 学校网站租用云服务器 吉林企业进销存软件开发 丹东级差制软件开发哪家好 网鼎网络安全千锋
0