- Ceph监视器(ceph-mon):
ceph mon用来维护集群状态的映射,包括监视器映射,管理器映射,OSD映射,MDS映射和CRUSH映射,这些映射是ceph守护程序相互协调所需的关键状态,另外还负责客户端到ceph存储的身份验证;通常要实现高可用,需要3个或以上的ceph-mon服务。 - Ceph管理器(ceph-mgr):
ceph manager守护进程负责跟踪运行时指标和ceph集群当前的状态,包括存储利用率,当前性能指标和系统负载等,ceph-mgr还托管一些python模块,以实现基于web的ceph仪表盘和rest api,通常要实现高可用至少需要2个ceph-mgr进程,通常ceph-mon和ceph-mgr个数相同,1个ceph-mon同节点会伴随1个ceph-mgr守护进程。 - Ceph对象存储(ceph-osd):
Ceph OSD是对象存储守护程序,是用来存储数据的核心组件,实现数据存储、数据复制和恢复、数据的重新平衡,并会检查其他Ceph OSD守护程序的心跳来向ceph-mon和ceph-mgr提供一些监控信息,通常至少需要3个ceph-osd才能实现冗余和高可用性,部署的时候ceph-osd会和ceph-mon分开节点部署。 - Ceph元数据服务(ceph-mds):
Ceph MDS为ceph文件系统存储元数据,注意Ceph块设备和对象存储不用mds存储元数据,Ceph MDS允许POSIX文件系统用户执行基本命令,而不会将压力都集中到Ceph OSD集群上,通常mds可以选择部署至少2个节点,可以和其他组件一起也可以分开。
node1:hostnamectl set-hostname node1
node2:hostnamectl set-hostname node2
node3:hostnamectl set-hostname node3
配置/etc/hosts文件,三个机器中都需执行
然后分别重启node1机器、node2机器、node3机器
node1为例:
node2和node3机器中也需要分别执行
安装源仓库包和部分必须软件包
配置Loongnix-Ceph-Nautilus.repo
安装过程中会自动安装python3.6以及相关的依赖等,安装完成之后最好再确认一下下面两个python模块是否存在,不存在就需要安装一下
这样ceph基本软件包安装完成,注意所有节点都要安装一遍
生成ceph-mon 映射,存储到/tmp/monmap,注意主机名、ip、fsid要根据实际情况进行修改
创建ceph-mon数据目录
使用刚才生成的密钥环和映射初始化数据目录
调整数据目录权限为ceph
启动ceph-mon服务
【问题描述】
【问题解决】
systemctl daemon-reload
systemctl restart ceph-mon@node1
health: HEALTH_WARN情况分析解决:
1、
【问题解决】
禁用安全模式,ceph config set mon auth_allow_insecure_global_id_reclaim false
2、
【问题解决】
启用msgr2,ceph mon enable-msgr2
ceph-mgr和ceph-mon是成对出现的,在每个ceph-mon的节点上都应该有ceph-mgr进程,然后就是配置并启动ceph-mgr守护进程。
-i参数指定主机名,启动后确认进程是否存在
正常显示active就可以了
部署ceph-osd的步骤应该在所有的osd节点上运行,当然这里是node2和node3,每个节点都要执行同样的操作,首先要将node1上面的osd密钥发送到osd节点,否则创建osd会报错授权失败,如果刚才已经同步可以忽略,否则就在node1上执行:
除了上面的命令,使用下面的步骤也同样可以创建osd节点,步骤更细一些,分为准备和激活两个阶段:
然后编译配置文件:/etc/ceph/ceph.conf,添加如下的配置块:
这里node1就是主机名,注意根据实际的mds节点替换,保存后将配置文件同步到集群所有节点,最后启动ceph-mds守护进程:
这里ceph-mds和ceph-mon是同一个节点,因此都是指定node1,启动之后查看进程是否存在,然后通过ceph -s可以看到mds的状态:
如图所示,目前所有的组件状态都是正常的
ceph所有的存储都是基于存储池才能分配,因此要先创建存储池,初始情况至少创建两个存储池(RADOS):1个用于存储数据,1个用于存储元数据信息,创建命令如下:
存储池可以创建多个,并且所有的存储池共享底层的存储空间,比如A存储池占用了一部分,那个B存储池就只能用剩下的部分了,而且之后挂载后剩余大小的显示也会变小,这个后面可以验证
另外就是注意这里pg大小正常指定128或64就够了,正常默认1个pool最多支持250个pg,可以通过参数调整限制大小,这里两个池都是一样的数据池,后续创建文件系统会指定哪个用于数据,哪个用于元数据存储,这里名字只是个代号
然后基于存储池创建文件系统,命令如下:
执行成功之后通过命令: ceph fs ls 查看存在的文件系统,正常显示如下:
可以通过ceph mds stat查看mds当前的活动状态,也可以通过ceph -s查看
【问题描述】
【问题解决】ceph config set global mon_warn_on_pool_no_redundancy false
正常没有任何错误信息就挂载上了,通过 df -h 可以查看挂载的情况以及容量
查看ceph状态:
到此这篇ceph存储搭建(ceph 搭建)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/cjjbc/64971.html