Bookstack storage on host
This commit is contained in:
parent
b0e2ba125c
commit
ce8252b4dc
6
host_vars/ceph01.yml
Normal file
6
host_vars/ceph01.yml
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
location:
|
||||||
|
root: default
|
||||||
|
labels:
|
||||||
|
- mon
|
||||||
|
- osd
|
||||||
|
- mgr
|
||||||
6
host_vars/ceph02.yml
Normal file
6
host_vars/ceph02.yml
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
location:
|
||||||
|
root: default
|
||||||
|
labels:
|
||||||
|
- mon
|
||||||
|
- osd
|
||||||
|
- mgr
|
||||||
5
host_vars/ceph03.yml
Normal file
5
host_vars/ceph03.yml
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
location:
|
||||||
|
root: default
|
||||||
|
labels:
|
||||||
|
- mon
|
||||||
|
- osd
|
||||||
|
|
@ -5,19 +5,27 @@
|
||||||
gather_facts: true
|
gather_facts: true
|
||||||
diff: true
|
diff: true
|
||||||
vars:
|
vars:
|
||||||
ceph_repo: "https://download.ceph.com/debian-squid"
|
ceph_repo: "https://download.ceph.com/debian-reef"
|
||||||
ntp_server: "ntp.int.nt-com.ru"
|
ntp_server: "ntp.int.nt-com.ru"
|
||||||
first_mon_ip: "10.63.1.19"
|
first_mon_ip: "10.63.1.19"
|
||||||
cluster_network: "10.63.0.0/24"
|
cluster_network: "10.63.0.0/24"
|
||||||
public_network: "10.63.1.0/24"
|
public_network: "10.63.1.0/24"
|
||||||
CEPH_RELEASE: '19.2.0'
|
CEPH_RELEASE: '19.2.0'
|
||||||
|
initial_dashboard_user: 'admin'
|
||||||
|
initial_dashboard_password: 'qweqwe'
|
||||||
|
allow_fqdn_hostname: 'true'
|
||||||
tasks:
|
tasks:
|
||||||
- name: download asc from ceph
|
- name: download asc from ceph
|
||||||
get_url:
|
get_url:
|
||||||
url: https://download.ceph.com/keys/release.asc
|
url: https://download.ceph.com/keys/release.asc
|
||||||
dest: /tmp
|
dest: /tmp
|
||||||
|
|
||||||
- name: get gpg key and import it
|
- name: Delete previously install ceph.gpg
|
||||||
|
file:
|
||||||
|
path: /usr/share/keyrings/ceph.gpg
|
||||||
|
state: absent
|
||||||
|
|
||||||
|
- name: import downloaded asc
|
||||||
shell:
|
shell:
|
||||||
chdir: /tmp
|
chdir: /tmp
|
||||||
cmd: echo y | gpg -o /usr/share/keyrings/ceph.gpg --dearmor release.asc;
|
cmd: echo y | gpg -o /usr/share/keyrings/ceph.gpg --dearmor release.asc;
|
||||||
|
|
@ -28,33 +36,58 @@
|
||||||
repo: "deb [signed-by=/usr/share/keyrings/ceph.gpg] {{ ceph_repo }} {{ ansible_distribution_release }} main"
|
repo: "deb [signed-by=/usr/share/keyrings/ceph.gpg] {{ ceph_repo }} {{ ansible_distribution_release }} main"
|
||||||
state: present
|
state: present
|
||||||
|
|
||||||
block: # here bootstrap the cluster
|
# - name: here bootstrap the the first node
|
||||||
- name: download cepadm bootstrapper
|
# block:
|
||||||
get_url:
|
# - name: download cephadm bootstrapper
|
||||||
url: https://download.ceph.com/rpm-${CEPH_RELEASE}/el9/noarch/cephadm
|
# get_url:
|
||||||
dest: /tmp
|
# url: https://download.ceph.com/rpm-{{CEPH_RELEASE}}/el9/noarch/cephadm
|
||||||
mode: '777'
|
# dest: /tmp
|
||||||
|
# mode: '777'
|
||||||
|
|
||||||
|
- name: Prepare customized ceph.conf
|
||||||
|
template:
|
||||||
|
src: ceph.conf.j2
|
||||||
|
dest: /root/ceph.conf
|
||||||
|
|
||||||
|
- name: install packages
|
||||||
|
apt:
|
||||||
|
pkg:
|
||||||
|
- ceph-common
|
||||||
|
- cephadm
|
||||||
|
- lvm2
|
||||||
|
- podman
|
||||||
|
- chrony
|
||||||
|
- mc
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: Setup ntp client
|
||||||
|
template:
|
||||||
|
src: chrony.yaml.j2
|
||||||
|
dest: /etc/chrony/chrony.conf
|
||||||
|
notify:
|
||||||
|
- ceph-rollout:restart
|
||||||
|
|
||||||
|
- name: Templating cluster-spec
|
||||||
|
template:
|
||||||
|
src: cluster_spec.yml.j2
|
||||||
|
dest: /root/cluster_spec.yml
|
||||||
|
trim_blocks: true
|
||||||
|
lstrip_blocks: true
|
||||||
|
run_once: true
|
||||||
|
delegate_to: ceph01
|
||||||
|
|
||||||
|
- name: Flush restart handlers
|
||||||
|
meta: flush_handlers
|
||||||
|
|
||||||
|
- name: running ceph bootstrap
|
||||||
|
pause:
|
||||||
|
prompt: run this command to bootstrap 1st node "cephadm bootstrap --mon-ip {{ first_mon_ip }} --cluster-network {{ cluster_network }}
|
||||||
|
--initial-dashboard-user {{ initial_dashboard_user }} --initial-dashboard-password {{ initial_dashboard_password }} --apply-spec /root/cluster_spec.yml"
|
||||||
|
|
||||||
|
handlers:
|
||||||
|
- name: ceph-rollout:restart
|
||||||
|
ansible.builtin.systemd_service:
|
||||||
|
state: restarted
|
||||||
|
name: chronyd
|
||||||
|
listen: "restart chronyd service"
|
||||||
|
|
||||||
# - name: install packages
|
|
||||||
# apt:
|
|
||||||
# pkg:
|
|
||||||
# - cephadm
|
|
||||||
# - lvm2
|
|
||||||
# - podman
|
|
||||||
# - chrony
|
|
||||||
# state: present
|
|
||||||
#
|
|
||||||
# - name: Setup ntp client
|
|
||||||
# template:
|
|
||||||
# src: chrony.yaml.j2
|
|
||||||
# dest: /etc/chrony/chrony.conf
|
|
||||||
# notify:
|
|
||||||
# - ceph-rollout:restart
|
|
||||||
#
|
|
||||||
# handlers:
|
|
||||||
# - name: ceph-rollout:restart
|
|
||||||
# ansible.builtin.systemd_service:
|
|
||||||
# state: restarted
|
|
||||||
# name: chronyd
|
|
||||||
# listen: "restart chronyd service"
|
|
||||||
3
templates/ceph.conf.j2
Normal file
3
templates/ceph.conf.j2
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
[global]
|
||||||
|
public_network = {{ public_network }}
|
||||||
|
cluster_network = {{ cluster_network }}
|
||||||
35
templates/cluster_spec.yml.j2
Normal file
35
templates/cluster_spec.yml.j2
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
{% macro nodes() %}
|
||||||
|
{%- for _host in groups['all'] %}
|
||||||
|
service_type: host
|
||||||
|
addr: {{hostvars[_host]['ansible_host']}}
|
||||||
|
hostname: {{ _host }}
|
||||||
|
location:
|
||||||
|
{% for key, value in hostvars[_host]['location'].items() %}
|
||||||
|
{{key}}: {{value}}
|
||||||
|
{% endfor %}
|
||||||
|
labels:
|
||||||
|
{% for i in hostvars[_host]['labels']%}
|
||||||
|
- {{ i }}
|
||||||
|
{% endfor %}
|
||||||
|
---
|
||||||
|
{% endfor %}
|
||||||
|
{% endmacro %}
|
||||||
|
{{ nodes() }}
|
||||||
|
service_type: mon
|
||||||
|
placement:
|
||||||
|
label: "mon"
|
||||||
|
---
|
||||||
|
service_type: mgr
|
||||||
|
service_name: mgr
|
||||||
|
placement:
|
||||||
|
label: "mgr"
|
||||||
|
---
|
||||||
|
service_type: osd
|
||||||
|
service_id: 12_SDD
|
||||||
|
service_name: osd.all-available-devices
|
||||||
|
placement:
|
||||||
|
label: "osd"
|
||||||
|
spec:
|
||||||
|
data_devices:
|
||||||
|
all: true
|
||||||
|
---
|
||||||
Loading…
Reference in New Issue
Block a user