使用ansible部署ceph集群

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 使用ansible部署ceph集群

基础配置


三台环境为centos7.9,以下配置需要在每台机器上执行


配置hosts解析


cat >> /etc/hosts <<EOF
192.168.2.23 node1
192.168.2.24 node2
192.168.2.25 node3
EOF


关闭防火墙和selinux


systemctl stop firewalld && systemctl disable firewalld
setenforce 0 && sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config


分别在三个节点设置主机名


hostnamectl set-hostname node1
hostnamectl set-hostname node2
hostnamectl set-hostname node3


配置主机时间同步


systemctl restart chronyd.service && systemctl enable chronyd.service


配置免密登录


ssh-keygen
ssh-copy-id -i .ssh/id_rsa.pub node1
ssh-copy-id -i .ssh/id_rsa.pub node2
ssh-copy-id -i .ssh/id_rsa.pub node3


安装pip和ansible、git


yum install python-pip ansible git -y


部署ceph集群


克隆存储库


这里我选择安装的是ceph nautilus版本


git clone https://github.com/ceph/ceph-ansible.git
cd ceph-ansible
git checkout stable-4.0


安装ansible依赖包


pip install --upgrade pip
pip install -r requirements.txt


修改hosts文件,添加安装的节点


cat >> /etc/ansible/hosts <<EOF
[mons]
node1
node2
node3
[osds]
node1
node2
node3
[mgrs]
node1
[mdss]
node1
node2
node3
[clients]
node1
node2
node3
[rgws]
node1
node2
node3
[grafana-server]
node1
EOF


备份group_vars下的yml文件


cd ceph-ansible/group_vars
for file in *;do cp $file ${file%.*};done


修改group_vars/all.yml配置


---
dummy:
mon_group_name: mons
osd_group_name: osds
rgw_group_name: rgws
mds_group_name: mdss
client_group_name: clients
mgr_group_name: mgrs
grafana_server_group_name: grafana-server
configure_firewall: False
ceph_origin: repository
ceph_origin: repository
ceph_repository: community
ceph_mirror: http://mirrors.aliyun.com/ceph
ceph_stable_key: http://mirrors.aliyun.com/ceph/keys/release.asc
ceph_stable_release: nautilus
ceph_stable_repo: "{{ ceph_mirror }}/rpm-{{ ceph_stable_release }}"
public_network: "192.168.2.0/24"
cluster_network: "192.168.2.0/24"
monitor_interface: ens33
osd_auto_discovery: true
osd_objectstore: filestore
radosgw_interface: ens33
dashboard_admin_password: asd123456
grafana_admin_password: admin
pg_autoscale_mode: True


修改group_vars/osds.yml配置


devices:
  - /dev/sdb


修改site.yml配置


640.png


开始进行安装


剩下的交给时间吧,十分钟左右就装好了


ansible-playbook -i /etc/ansible/hosts site.yml


查看安装状态,发现有一个警告,这是因为在之前的all.yml配置没有开启允许自动调整pool中的pg数pg_autoscale_mode: False,手动设置下即可


ceph osd pool set <pool-name> pg_autoscale_mode on


640.png


640.png


640.png

相关文章
|
9月前
|
运维 负载均衡 关系型数据库
【运维知识进阶篇】用Ansible Roles重构LNMP架构(Linux+Nginx+Mariadb+PHP),实现4个项目一键部署
【运维知识进阶篇】用Ansible Roles重构LNMP架构(Linux+Nginx+Mariadb+PHP),实现4个项目一键部署
113 0
|
10月前
管理工具ansible的部署
管理工具ansible的部署
66 0
管理工具ansible的部署
|
6月前
|
Linux 网络安全 调度
使用docker部署awx-1.7.1.0(ansible图形化界面)
使用docker部署awx-1.7.1.0(ansible图形化界面)
352 0
|
6月前
|
弹性计算 关系型数据库 数据库
通过计算巢轻松部署 Ansible Semaphore
AnsibleSemaphore是一个现代化的Ansible用户界面,通过计算巢可轻松部署。
153 1
通过计算巢轻松部署 Ansible Semaphore
|
10月前
|
运维 NoSQL Oracle
ansible快速部署cassandra3集群
借助ansible快速部署cassandra3集群,省事儿方便
ansible快速部署cassandra3集群
|
运维 安全 持续交付
利用ansible的角色快速批量一键部署基础docker环境
利用ansible的角色快速批量一键部署基础docker环境
377 0
利用ansible的角色快速批量一键部署基础docker环境
|
12月前
|
Unix 应用服务中间件 Linux
ansible在web集群中批量部署nfs
ansible在web集群中批量部署nfs
154 0
|
12月前
|
监控 网络安全 开发工具
Ansible批量部署zabbix-agent(含zabbix-agent的yum源,zabbix自动发现和添加的界面操作)
Ansible批量部署zabbix-agent(含zabbix-agent的yum源,zabbix自动发现和添加的界面操作)
220 0
|
12月前
|
Kubernetes 负载均衡 Docker
ansible学习之旅(ansible依托kubeadm安装一个简单的k8s集群)
ansible学习之旅(ansible依托kubeadm安装一个简单的k8s集群)
119 0
|
12月前
|
负载均衡 关系型数据库 Linux
实战案例——Ansible部署高可用OpenStack平台
实战案例——Ansible部署高可用OpenStack平台
526 0