ansibleを使用してcephクラスターをデプロイする

基本構成

3つの環境はcentos7.9であり、各マシンで次の構成を実行する必要があります

ホストの解決を構成する

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

3つのノードにそれぞれホスト名を設定します

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クラスターをデプロイする

リポジトリのクローンを作成する

ここでは、cephnautilusバージョンをインストールすることを選択します

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

ホストファイルを変更し、インストールされたノードを追加します

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構成を変更します
image.png

インストールを開始します

残りは時間に任せて、約10分でインストールされます

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

インストールステータスを確認し、警告を見つけました。これは、以前のall.yml構成が有効になっておらず、プール内のpgs数を自動調整できないためです。pg_autoscale_mode: False手動で設定できます。

ceph osd pool set <pool-name> pg_autoscale_mode on

image.png
image.png
image.png


個人公開アカウント「運用・保守開発ストーリー」のフォローへようこそ
ansibleを使用してcephクラスターをデプロイする

おすすめ

転載: blog.51cto.com/12970189/2603435