一:存储基础
1、单机存储设备
(1)DAS(直接附加存储,是直接接到计算机的主板总线上去的存储)
(2)NAS(网络附加存储,是通过网络附加到当前主机文件系统之上的存储)
(3)SAN(存储区域网络)
2、单机存储的问题
(1)存储处理能力不足
(2)存储空间能力不足
(3)单点故障问题
3、商业存储解决方案
4、分布式存储(软件定义的存储 SDS)
5、分布式存储的类型
(1)块存储
(2)文件存储
(3)对象存储
二:Ceph 介绍
1、Ceph 简介
2、Ceph 优势
3、Ceph 架构
(1)RADOS 基础存储系统
(2)LIBRADOS 基础库
(3)高层应用接口
(4)应用层
4、Ceph 核心组件
(1)OSD(Object Storage Daemon,守护进程 ceph-osd)
(2)PG(Placement Group 归置组)
(3)Pool
(4)Monitor(守护进程 ceph-mon)
(5)Manager(守护进程 ceph-mgr)
(6)MDS(Metadata Server,守护进程 ceph-mds)
5、OSD 存储后端
(1)Filestore
(2)Bluestore
6、Ceph 数据的存储过程
7、Ceph 版本发行生命周期
8、Ceph 集群部署
(1)ceph-deploy
(2)cephadm
(3)二进制
三:基于 ceph-deploy 部署 Ceph 集群
1、Ceph 生产环境推荐
2、环境准备
3、关闭 selinux 与防火墙
4、 根据规划设置主机名
5、 配置 hosts 解析
6、 安装常用软件和依赖包
7、 在 admin 管理节点配置 ssh 免密登录所有节点
8、配置时间同步
9、配置 Ceph yum源
10、执行完上面所有的操作之后重启所有主机(可选)
四:部署 Ceph 集群
1、为所有节点都创建一个 Ceph 工作目录,后续的工作都在该目录下进行
2、admin服务器安装 安装 ceph-deploy 部署工具
3、在管理节点为其它节点安装 Ceph 软件包
4、生成初始配置
5、在管理节点初始化 mon 节点
6、部署能够管理 Ceph 集群的节点(可选)
7、部署 osd 存储节点,管理节点操作
8、部署 mgr 节点
9、开启监控模块
五:资源池 Pool 管理
1、向 Ceph 中存储数据
2、创建 Pool 资源池--(增、查)
3、 修改资源池信息--(修)
4、删除 Pool 资源池--(删)
可以看到显示有一台osd down, 这是只需要重新配置一下时间同步,然后重启一下就好了
systemctl enable --now chronyd
timedatectl set-ntp true #开启 NTP
timedatectl set-timezone Asia/Shanghai #设置时区
chronyc -a makestep #强制同步下系统时钟
timedatectl status #查看时间同步状态
chronyc sources -v #查看 ntp 源服务器信息
timedatectl set-local-rtc 0 #将当前的UTC时间写入硬件时钟#重启依赖于系统时间的服务
systemctl restart rsyslog
systemctl restart crond#关闭无关服务
systemctl disable --now postfix
重启
reboot重启mon(可选)
systemctl restart ceph-mon.target
3、 修改资源池信息--(修)
#修改 pg_num 和 pgp_num 的数量为 128
ceph osd pool set mypool pg_num 128
ceph osd pool set mypool pgp_num 128ceph osd pool get mypool pg_num
ceph osd pool get mypool pgp_num#修改 Pool 副本数量为 2
ceph osd pool set mypool size 2ceph osd pool get mypool size管理节点
#修改默认副本数为 2
vim ceph.conf
......
osd_pool_default_size = 2ceph-deploy --overwrite-conf config push node01 node02 node03
4、删除 Pool 资源池--(删)
1)删除存储池命令存在数据丢失的风险,Ceph 默认禁止此类操作,需要管理员先在 ceph.conf 配置文件中开启支持删除存储池的操作
vim ceph.conf
......
[mon]
mon allow pool delete = true2)推送 ceph.conf 配置文件给所有 mon 节点
ceph-deploy --overwrite-conf config push node01 node02 node033)所有 mon 节点重启 ceph-mon 服务
systemctl restart ceph-mon.target4)执行删除 Pool 命令
ceph osd pool rm pool01 pool01 --yes-i-really-really-mean-it
发表评论 取消回复