ceph安装部署
ceph简介
不管你是想为云平台提供Ceph 对象存储和/或 Ceph 块设备,还是想部署一个 Ceph 文件系统或者把 Ceph 作为他用,所有 Ceph 存储集群的部署都始于部署一个个 Ceph 节点、网络和 Ceph 存储集群。 Ceph 存储集群至少需要一个 Ceph Monitor 和两个 OSD 守护进程。而运行 Ceph 文件系统客户端时,则必须要有元数据服务器( Metadata Server )。
- Ceph OSDs: Ceph OSD 守护进程( Ceph OSD )的功能是存储数据,处理数据的复制、恢复、回填、再均衡,并通过检查其他OSD 守护进程的心跳来向 Ceph Monitors 提供一些监控信息。当 Ceph 存储集群设定为有2个副本时,至少需要2个 OSD 守护进程,集群才能达到 active+clean 状态( Ceph 默认有3个副本,但你可以调整副本数)。
- Monitors: Ceph Monitor维护着展示集群状态的各种图表,包括监视器图、 OSD 图、归置组( PG )图、和 CRUSH 图。 Ceph 保存着发生在Monitors 、 OSD 和 PG上的每一次状态变更的历史信息(称为 epoch )。
- MDSs: Ceph 元数据服务器( MDS )为 Ceph 文件系统存储元数据(也就是说,Ceph 块设备和 Ceph 对象存储不使用MDS )。元数据服务器使得 POSIX 文件系统的用户们,可以在不对 Ceph 存储集群造成负担的前提下,执行诸如 ls、find 等基本命令
Ceph组件:osd
- OSD 守护进程,至少两个
- 用于存储数据、处理数据拷贝、恢复、回滚、均衡
- 通过心跳程序向monitor提供部分监控信息
- 一个ceph集群中至少需要两个OSD守护进程
Ceph组件:mon
- 维护集群的状态映射信息
- 包括monitor、OSD、placement Group(PG)
- 还维护了monitor、OSD和PG的状态改变历史信息
Ceph组件:mgr(新功能)
- 负责ceph集群管理,如pg map
- 对外提供集群性能指标(如cpeh -s 下IO信息)
- 具有web界面的监控系统(dashboard)
ceph逻辑结构
数据通过ceph的object存储到PG,PG在存储到osd daemon,osd对应disk
object只能对应一个pg
一个raid可以对应一个osd
一整块硬盘可以对应一个osd
一个分区可以对应一个osd
monitor:奇数个 osd : 几十到上万,osd越多性能越好
pg概念
- 副本数
- crush规则(pg怎么找到osd acting set)
- 用户及权限
- epoach:单调递增的版本号
- acting set: osd列表,第一个为primary osd,replicated osd
- up set :acting set过去的版本
- pg tmp:临时pg组
osd状态:默认每2秒汇报自己给mon(同时监控组内osd,如300秒没有给mon汇报状态,则会把这个osd踢出pg组)
- up 可以提供io
- down 挂掉了
- in 有数据
- out 没数据了
ceph应用场景:通过tgt支持iscsi挂载
- 公司内部文件共享
- 海量文件,大流量,高并发
- 需要高可用、高性能文件系统
- 传统单服务器及NAS共享难以满足需求,如存储容量,高可用
ceph生产环境推荐
- 存储集群采用全万兆网络
- 集群网络(不对外)与公共网络分离(使用不同网卡)
- mon、mds与osd分离部署在不同机器上
- journal推荐使用PCI SSD,一般企业级IOPS可达40万以上
- OSD使用SATA亦可
- 根据容量规划集群
- 至强E5 2620 V3或以上cpu,64GB或更高内存
- 最后,集群主机分散部署,避免机柜故障(电源、网络)
1. 准备好epel源
2. 准备好ceph源
3. 设置时间同步
4. 安装deploy
5. 分区为journal 的数据日志缓存做准备
...中间 各种deploy安装
直接创建了不用准备后激活
6. ceph-deploy osd create ceph-node0 --data /dev/sdd --journal /dev/sdb2
luminous 版本需要启动 mgr, 否则 ceph -s 会有 no active mgr 提示
官方文档建议在每个 monitor 上都启动一个 mgr
7. ceph-deploy mgr create ceph-node0:ceph-node0 ceph-node1:ceph-node1 ceph-node2:ceph-node2
ceph源
[Ceph]
name=Ceph packages for $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-luminous/el7/$basearch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.tuna.tsinghua.edu.cn/ceph/keys/release.asc
[Ceph-noarch]
name=Ceph noarch packages
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-luminous/el7/noarch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.tuna.tsinghua.edu.cn/ceph/keys/release.asc
[ceph-source]
name=Ceph source packages
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-luminous/el7/SRPMS
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.tuna.tsinghua.edu.cn/ceph/keys/release.asc
链接https://www.cnblogs.com/zhangzihong/p/9771035.html
dashboard
https://www.cnblogs.com/gzxbkk/p/7755729.html