Déployer le cluster ceph à l'aide d'ansible

Configuration de base

Les trois environnements sont centos7.9, et la configuration suivante doit être exécutée sur chaque machine

Configurer la résolution des hôtes

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

Éteignez le pare-feu et selinux

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

Définissez le nom d'hôte sur les trois nœuds respectivement

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

Configurer la synchronisation de l'heure de l'hôte

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

Configurer la connexion sans mot de passe

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

Installez pip et ansible, git

yum install python-pip ansible git -y

Déployer le cluster ceph

Cloner le référentiel

Ici, je choisis d'installer la version ceph nautilus

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

Installer le package de dépendances ansible

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

Modifier le fichier d'hôtes, ajouter des nœuds installés

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

Sauvegardez le fichier yml sous group_vars

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

Modifier la configuration 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

Modifier la configuration group_vars / osds.yml

devices:
  - /dev/sdb

Modifier la configuration site.yml
image.png

Lancez l'installation

Laissez le reste à l'heure, il sera installé dans une dizaine de minutes

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

Vérifiez l'état de l'installation et vous avez trouvé un avertissement. En effet, la configuration all.yml précédente n'est pas activée pour permettre l'ajustement automatique du nombre de pgs dans le pool. Vous pg_autoscale_mode: Falsepouvez la définir manuellement

ceph osd pool set <pool-name> pg_autoscale_mode on

image.png
image.png
image.png


Bienvenue pour suivre le compte public personnel "Histoire de développement d'exploitation et de maintenance"
Déployer le cluster ceph à l'aide d'ansible

Je suppose que tu aimes

Origine blog.51cto.com/12970189/2603435
conseillé
Classement