1、什么是ceph?
Ceph是一个开放、自我修复和自我管理的统一分布式存储系统。具有高扩展性、高性能、高可靠性的优点。
2、为什么要使用ceph?
ceph目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack kubernetes都可与Ceph整合以支持虚拟机镜像的后端存储。
3、ceph分布式存储有哪些优势?
高扩展性:使用普通X86服务器,支持10~1000台服务器,支持TB到EB级的扩展。
高可靠性:没有单点故障,多数据副本,自动管理,自动修复。
高性能:数据分布均衡。
Ceph支持三种调用接口:
块存储:类似传统的存储服务器。
文件存储: 解决文件共享
对象存储:
4、Ceph IO流程及数据分布
企业生产环境部署Ceph集群,至少要3台服务器。
分布式最终是要把性能归结到 “带宽” 和 “磁盘”上。我们要考虑机器分布问题。
Moniter一般至少要部署3个,里面存储map,根据这个地图能找到哪个节点有我想要的对象。
OSD就是实际存储数据对象的节点,分为primary和replica,副本的目的是为了容错。osd越多越好,部署在不同的网络中。
ceph数据读写过程
(1)client创建cluster handler;
(2)client读取配置文件;
(3)client连接上monitor,获取集群map信息;
(4)client读写io根据crshmap算法请求对应的主osd数据节点。
(5)主osd数据节点同时写入另外两个副本节点数据;
(6)等待主节点以及另外两个副本节点写完数据状态;
(7)主节点及副本节点写入状态都成功后,返回给client,io写入完成。【强一致性】
primary和replica的数据同步很快,使用万兆网卡。
5、Ceph的三个主要进程
Monitor监控整个集群的状态,维护集群的cluster MAP数据分布图(二进制表),保证集群数据的一致性。
OSD用于集群中所有数据与对象的存储,处理集群数据的复制、恢复、回填、再均衡,并向其他osd守护进程发送心跳,然后向Monitor提供监控信息。
MDS(可选)为Ceph文件系统提供元数据计算、缓存与同步。MDS进程并不是必须的进程,只有需要使用CephFS时,才需要配置MDS 节点。
6、怎么做?如何在生产环境快速部署ceph
推荐
1、存储集群采用全万兆网络。
2、集群网络与公共网络分离。
3、mon、mds与osd分离部署在不同机器上。
4、osd使用SATA即可。
5、根据容量规划集群
6、至强E5 2620 V3或以上cpu,64GB或更高内存。
7、集群主机分散部署,避免机柜故障(电源、网络)
本地三台虚机模拟部署
生产环境每台机器的磁盘肯定至少1TB以上了,试验环境就是保证每台虚拟机都挂上磁盘就行。
替换yum的源为阿里源。
安装chrony,设置时钟同步。