ceph-ansible部署Ceph Pacific版本集群

环境规划

总共9个节点,3个mon节点,6个osd节点,每个osd节点3块50G的osd磁盘

主机名os角色public_ipcluster_iposd磁盘
ceph-mon-01.linux.ioubuntu20.04mon/mgr/deploy-node192.168.122.33192.168.200.2
ceph-mon-02.linux.ioubuntu20.04mon/mgr192.168.122.34192.168.200.2
ceph-mon-03.linux.ioubuntu20.04osd192.168.122.35192.168.200.2
ceph-osd-01.linux.ioubuntu20.04osd192.168.122.36192.168.200.2vdb/vdc/vdd
ceph-osd-02.linux.ioubuntu20.04osd192.168.122.37192.168.200.2vdb/vdc/vdd
ceph-osd-03.linux.ioubuntu20.04osd192.168.122.38192.168.200.2vdb/vdc/vdd
ceph-osd-04 .linux.ioubuntu20.04osd192.168.122.39192.168.200.2vdb/vdc/vdd
ceph-osd-05.linux.ioubuntu20.04osd192.168.122.40192.168.200.2vdb/vdc/vdd
ceph-osd-06.linux.ioubuntu20.04osd192.168.122.41192.168.200.2vdb/vdc/vdd

节点初始化设置

ssh免密

配置mon-01到所有节点的ssh免密

for i in {33..41};do ssh-copy-id 192.168.122.$i;done
主机名解析

在所有主机的/etc/hosts添加以下解析

192.168.122.33 ceph-mon-01.linux.io ceph-mon-01
192.168.122.34 ceph-mon-02.linux.io ceph-mon-02
192.168.122.35 ceph-mon-03.linux.io ceph-mon-03
192.168.122.36 ceph-osd-01.linux.io ceph-osd-01
192.168.122.37 ceph-osd-02.linux.io ceph-osd-02
192.168.122.38 ceph-osd-03.linux.io ceph-osd-03
192.168.122.39 ceph-osd-04.linux.io ceph-osd-04
192.168.122.40 ceph-osd-05.linux.io ceph-osd-05
192.168.122.41 ceph-osd-06.linux.io ceph-osd-06
时间同步

设置mon-01作为时间同步服务器,其他节点同步mon-01时间

在所有节点安装chrony

apt -y install chrony

修改mon-01节点chrony配置

# cat /etc/chrony/chrony.conf |grep -Ev '^#'

server ntp.aliyun.com iburst

keyfile /etc/chrony/chrony.keys

driftfile /var/lib/chrony/chrony.drift


logdir /var/log/chrony

allow 192.168.122.0/24

maxupdateskew 100.0

rtcsync

makestep 1 3

修改其它节点chrony配置

# cat /etc/chrony/chrony.conf |grep -Ev '^#'

server 192.168.122.33 iburst

keyfile /etc/chrony/chrony.keys

driftfile /var/lib/chrony/chrony.drift

logdir /var/log/chrony

maxupdateskew 100.0

rtcsync
makestep 1 3

所有节点启动chrony服务

systemctl restart chrony.service

验证时间同步状态

chronyc sources -v

在这里插入图片描述

关闭防火墙
ufw disable

部署ceph

下载ceph-ansible

ceph-ansible项目地址:https://github.com/ceph/ceph-ansible
ceph-ansible官方文档:https://docs.ceph.com/projects/ceph-ansible/en/latest/

安装Ceph Pacific需要使用ceph-asible stable-6.0分支,同时ceph-asible stable-6.0对ansible的版本要求是2.10往上
在这里插入图片描述

wget https://github.com/ceph/ceph-ansible/archive/refs/heads/stable-6.0.zip -O ceph-ansible-stable-6.0.zip
unzip ceph-ansible-stable-6.0.zip
cd ceph-ansible-stable-6.0
pip install -r requirements.txt	#这一步会安装ansible和其它依赖
修改配置文件

定义主机清单inventroy文件

cd ceph-ansible-stable-6.0/
vim hosts	#暂时只包含1个mon和5个osd节点,剩余的节点用于后边扩容测试
#################
[mons]
ceph-mon-01

[mgrs]
ceph-mon-0[1:3]

[osds]
ceph-osd-0[1:5]

[monitoring]
ceph-mon-0[1:3]
####################

修改ceph部署过程中需要使用的配置参数

cd ceph-ansible-stable-6.0/
cp group_vars/all.yml.sample group_vars/all.yml	
cp osds.yml.sample osds.yml	

vim group_vars/all.yml	#ceph全局配置参数
#######################
---
dummy:
mon_group_name: mons
osd_group_name: osds
rgw_group_name: rgws
mds_group_name: mdss
iscsi_gw_group_name: iscsigws
mgr_group_name: mgrs
monitoring_group_name: monitoring
#ceph安装方式设置,详细解释可以参考官网文档https://docs.ceph.com/projects/ceph-ansible/en/latest/installation/non-containerized.html
ceph_origin: repository
ceph_repository: community
ceph_mirror: https://mirrors.tuna.tsinghua.edu.cn/ceph/		#ceph安装源
ceph_stable_key: https://mirrors.tuna.tsinghua.edu.cn/ceph/keys/release.asc
ceph_stable_release: pacific	#ceph版本
ceph_stable_repo: "{{ ceph_mirror }}/debian-{{ ceph_stable_release }}"
monitor_interface: enp1s0	#ceph-mon节点服务监听网卡
monitor_address_block: 192.168.122.0/24	#ceph-mon节点服务监听地址所在网段
ip_version: ipv4
public_network: 192.168.122.0/24	#public-netework子网
cluster_network: 192.168.200.0/24	#cluster-network子网
osd_objectstore: bluestore		#osd使用的存储后端
dashboard_enabled: True		#启用ceph-dashboard
dashboard_admin_user: admin	#ceph-dashboard用户名和密码
dashboard_admin_password: Admin@123
grafana_admin_user: admin	#grafana用户名和密码
grafana_admin_password: admin
#######################

vim  group_vars/osds.yml	#osd相关配置参数
########################
---
dummy:
devices:	#每个节点上用作osd的磁盘
  - /dev/vdb
  - /dev/vdc
  - /dev/vdd
osd_auto_discovery: false	#关闭osd自动发现
#########################
执行部署
cd ceph-ansible-stable-6.0/
cp site.yml.sample site.yaml

ansible-playbook -i hosts site.yaml

等待playbook执行完成且无报错即可

在这里插入图片描述

验证集群状态

再mon-01节点执行ceph -s查看集群状态
在这里插入图片描述

这里存在一个警告,执行下面的命令,禁用mon节点不安全模式即可消除

ceph config set mon auth_allow_insecure_global_id_reclaim false

在这里插入图片描述

登录ceph-dashboard,https://192.168.122.33:8443

在这里插入图片描述

扩容mon节点

修改hosts文件,将新的mon节点,加入到对应的组中

cd ceph-ansible-stable-6.0/
vim hosts
##################
[mons]
ceph-mon-01
ceph-mon-02	#添加
ceph-mon-03 #添加

[mgrs]
ceph-mon-01
ceph-mon-02
ceph-mon-03

[osds]
ceph-osd-0[1:5]

[monitoring]
ceph-mon-0[1:3]
###################

执行扩容

cd ceph-ansible-stable-6.0/
ansible-playbook -i hosts infrastructure-playbooks/add-mon.yml

等待playbook执行完成后,查看集群状态,可以看到新的mon节点已经添加进去
在这里插入图片描述

扩容osd节点

修改hosts文件,将新的mon节点,加入到对应的组中

cd ceph-ansible-stable-6.0/
vim hosts
##################
[mons]
ceph-mon-01
ceph-mon-02
ceph-mon-03

[mgrs]
ceph-mon-01
ceph-mon-02
ceph-mon-03

[osds]
ceph-osd-0[1:5]
ceph-osd-06 #添加

[monitoring]
ceph-mon-0[1:3]
###################

执行扩容

cd ceph-ansible-stable-6.0/
ansible-playbook -vv -i hosts site.yaml --limit ceph-osd-06

等待playbook执行完成后,查看集群状态,可以看到新的osd已经添加进去

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值