CentOS 7.2 安装部署 Ceph 及添加 PG

前期准备:
准备三台CentOS 7.2系统,每台机器三块硬盘,关闭selinux,关闭iptables,做好时间同步,做好本地域名解析,并对每台机器做互信。
192.168.10.101 ceph-node1
192.168.10.22 ceph-node2
192.168.10.33 ceph-node3
每台机器上有三个osd,整个集群共九个osd。


在每台机器上 /etc/yum.repos.d/目录下创建 ceph.repo然后写入以下内容

[Ceph]
name=Ceph packages for $basearch
baseurl=http://mirrors.163.com/ceph/rpm-jewel/el7/$basearch
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.163.com/ceph/keys/release.asc
priority=1

[Ceph-noarch]
name=Ceph noarch packages
baseurl=http://mirrors.163.com/ceph/rpm-jewel/el7/noarch
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.163.com/ceph/keys/release.asc
priority=1

[ceph-source]
name=Ceph source packages
baseurl=http://mirrors.163.com/ceph/rpm-jewel/el7/SRPMS
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.163.com/ceph/keys/release.asc
priority=1


在ceph-node1创建文件夹,用ceph-deploy安装时,会生成很多文件。
mkidr /home/ceph && cd /home/ceph

安装ceph-depoly
yum install -y ceph-deploy

创建ceph集群
ceph-depoly new ceph-node1 ceph-node2 ceph-node3

ceph初始默认三副本,可以更改副本数。在生成的ceph.conf中加入(写入[global] 段下)
osd pool default size = 2

如果有多个网卡,可以把 public network 写入 ceph 配置文件的 [global] 段下
public network = 192.168.10.0/24

安装ceph
ceph-deploy install ceph-node1 ceph-node2 ceph-node3

向ceph集群上报osd
ceph-deploy osd prepare ceph-node1:/dev/sdb ceph-node1:/dev/sdc ceph-node1:/dev/sdd ceph-node2:/dev/sdb ceph-node2:/dev/sdc ceph-node2:/dev/sdd ceph-node3:/dev/sdb ceph-node3:/dev/sdc ceph-node3:/dev/sdd

激活集群中的osd
ceph-deploy osd activate ceph-node1:/dev/sdb ceph-node1:/dev/sdc ceph-node1:/dev/sdd ceph-node2:/dev/sdb ceph-node2:/dev/sdc ceph-node2:/dev/sdd ceph-node3:/dev/sdb ceph-node3:/dev/sdc ceph-node3:/dev/sdd

ceph -s 查看健康状况 创建完成!!!


[root@ceph-node1 local]# ceph -s
cluster dc045fd8-0851-4052-8791-25cb6e5b3e8e
health HEALTH_WARN
too few PGs per OSD (21 < min 30)
monmap e1: 3 mons at {ceph-node1=192.168.10.101:6789/0,ceph-node2=192.168.10.22:6789/0,ceph-node3=192.168.10.33:6789/0}
election epoch 8, quorum 0,1,2 ceph-node2,ceph-node3,ceph-node1
osdmap e44: 9 osds: 9 up, 9 in
flags sortbitwise,require_jewel_osds
pgmap v113: 64 pgs, 1 pools, 0 bytes data, 0 objects
971 MB used, 45009 MB / 45980 MB avail
64 active+clean

由于改集群是新建集群,只有一个池,由于pg过少导致每个osd上的pg未达到配置文件的上线所以存在告警

查看某个池的pg个数 <rbd池>
ceph osd pool get rbd pg_num
pg_num: 64

pgs为64,因为是3副本的配置,所以当有9个osd的时候,每个osd上均分了64/9 *3=21个pgs,也就是出现了如上的告警 小于最小配置30个

修改rbd池的pg个数
ceph osd pool set rbd pg_num 256
set pool 0 pg_num to 256

gpg的个数要与pg个数一致 修改rbd池的pgp个数
sudo ceph osd pool set rbd pgp_num 256
set pool 0 pgp_num to 256
修改完成等待集群同步,故障解决。

注意:生产环境不可以批量添加pg,pgp。要没添加一个,等待同步完成再添加下一个pg。

每个池添加pg个数根据如下公式计算:

{(每个OSD的目标PG)x(OSD#)x(%数据)}/(尺寸)
1.每个OSD的目标PG约100个
2.如果上述计算的值小于(OSD#)/(大小)的值,则将该值更新为(OSD#)/(大小)的值。这是为了通过为每个池的每个OSD分配至少一个主要或辅助PG来确保均匀的负载/数据分发。
3.然后将输出值四舍五入到最接近的2的幂。
提示:最接近的2的幂提供了CRUSH算法效率的微小改进。
4.如果最接近的2的幂次方比原始值低25%以上,则使用下一个更高的2的幂。

转载于:https://blog.51cto.com/12150465/2315548

简介: 4 一:安装配置环境介绍 5 1:系统版本: 5 2:内核版本: 5 3:ceph版本: 5 4:ceph-deploy版本: 5 4:网络拓扑图 6 5:设备位置图 6 6:服务器配置信息及运行服务统计 7 二:系统软件基础包初始化: 10 1:安装 EPEL 软件源: 10 2:常用软件包、常用工具等(非必须、推荐安装) 10 三:集群主机系统初始化准备 10 1:规范系统主机名; 11 2:添加hosts文件实现集群主机名与主机名之间相互能够解析 11 3:每台 ssh-copy-id 完成这些服务器之间免ssh密码登录; 11 4:关闭防火墙或者开放 6789/6800~6900端口、关闭SELINUX; 11 5:关闭防火墙及开机启动 12 5:配置ntp服务,保证集群服务器间统一; 12 6:系统优化类 12 四:集群优化配置 12 1:优化前提 12 2: 开启VT和HT 13 3:关闭CPU节能 13 4:关闭NUMA 13 5:网络优化 15 6:修改read_ahead 15 7:关闭swap 16 8:调整Kernel pid max 16 9:修改I/O Scheduler 16 五:安装部署主机(ceph-deploy)安装环境准备 17 1:建立主机列表 17 2:为所有集群主机创建一个 ceph 工作目录 17 3:同步hosts文件 17 4:测试主机名解析 17 5:ceph-deploy安装配置 18 六:创建mon 节点 18 1:安装部署集群软件包: 18 2:在安装部署节使用ceph-deploy创建,生成MON信息: 18 3:添加初始monitor节点和收集秘钥 18 4:验证集群mon节点安装成功 19 七:安装集群osd服务 19 1:查看一下 Ceph 存储节点的硬盘情况: 19 2:批量格式化磁盘 20 3:执行osd初始化命令 21 4:验证日志写入位置在ssd 硬盘分区成功 22 5:验证osd启动状态 22 6:PGs per OSD (2 < min 30)报错解决: 23 7:官方推荐pg计算公式 24 八:添加元数据服务器 24 1:添加元数据服务器 24 2:验证mds服务 24 3:删除mds节点 26 4:同步集群配置文件 26 九:crush 规则配置 26 1:ceph crush规则介绍 26 2:集群crush规则配置 27 3:修改crushmap信息 28 十:集群配置清理 29 1:清理软件包 29 2:卸载之前挂载的osd磁盘 29 3:将写入分区表的分区挂载 29 4:查看一下状态,仅剩余系统盘 30 5:清理残余key文件和残余目录 30 6:新建安装目录 30 7:重新部署集群 30 十一:集群配置参数优化 30 1:配置参数优化 30 2:同步集群配置文件 49 十二:ceph集群启动、重启、停止 49 1:ceph 命令的选项 49 2:启动所有守护进程 50 3:启动单一实例 50 十三:维护常用命令 50 1:检查集群健康状况 50 1:检查集群健康状况 50 2:检查集群的使用情况 51 3:检查集群状态 51 4:检查MONITOR状态 52 5:检查 MDS 状态: 52 十四:集群命令详解 52 1:mon 相关 52 2: msd 相关 53 4:ceph auth 相关 54 5:osd 相关 54 6:pool 相关 56 7:rados命令相关 57 8:PG 相关 59 9: rbd命令相关 61 十五:ceph 日志和调试设置 63 1:配置文件修改 63 2:在线修改日志输出级别 63 3:修改集群子系统,日志和调试设置 64 4:日志输出级别默认值 65
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值