ceph pre-deploy playbook
This commit is contained in:
parent
4c601feca0
commit
b0e2ba125c
|
|
@ -6,26 +6,55 @@
|
||||||
diff: true
|
diff: true
|
||||||
vars:
|
vars:
|
||||||
ceph_repo: "https://download.ceph.com/debian-squid"
|
ceph_repo: "https://download.ceph.com/debian-squid"
|
||||||
|
ntp_server: "ntp.int.nt-com.ru"
|
||||||
|
first_mon_ip: "10.63.1.19"
|
||||||
|
cluster_network: "10.63.0.0/24"
|
||||||
|
public_network: "10.63.1.0/24"
|
||||||
|
CEPH_RELEASE: '19.2.0'
|
||||||
tasks:
|
tasks:
|
||||||
|
- name: download asc from ceph
|
||||||
|
get_url:
|
||||||
|
url: https://download.ceph.com/keys/release.asc
|
||||||
|
dest: /tmp
|
||||||
|
|
||||||
- name: get gpg key and import it
|
- name: get gpg key and import it
|
||||||
command:
|
shell:
|
||||||
chdir: /tmp
|
chdir: /tmp
|
||||||
cmd: "{{ item }}"
|
cmd: echo y | gpg -o /usr/share/keyrings/ceph.gpg --dearmor release.asc;
|
||||||
loop:
|
|
||||||
- wget -q 'https://download.ceph.com/keys/release.asc' -O release.asc;
|
|
||||||
- echo y | gpg -o /usr/share/keyrings/ceph.gpg --dearmor release.asc; # echo y in case of rewriting existing gpg key
|
|
||||||
|
|
||||||
- name: Add ceph repo
|
- name: Add ceph repo
|
||||||
apt_repository:
|
apt_repository:
|
||||||
filename: ceph
|
filename: ceph
|
||||||
repo: "deb [signed-by=/usr/share/keyrings/ceph.gpg] {{ ceph_repo }} jammy main"
|
repo: "deb [signed-by=/usr/share/keyrings/ceph.gpg] {{ ceph_repo }} {{ ansible_distribution_release }} main"
|
||||||
state: present
|
state: present
|
||||||
|
|
||||||
- name: install packages
|
block: # here bootstrap the cluster
|
||||||
apt:
|
- name: download cepadm bootstrapper
|
||||||
pkg:
|
get_url:
|
||||||
- cephadm
|
url: https://download.ceph.com/rpm-${CEPH_RELEASE}/el9/noarch/cephadm
|
||||||
- lvm2
|
dest: /tmp
|
||||||
- podman
|
mode: '777'
|
||||||
- chrony
|
|
||||||
state: present
|
|
||||||
|
# - 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"
|
||||||
63
templates/chrony.yaml.j2
Normal file
63
templates/chrony.yaml.j2
Normal file
|
|
@ -0,0 +1,63 @@
|
||||||
|
# Welcome to the chrony configuration file. See chrony.conf(5) for more
|
||||||
|
# information about usable directives.
|
||||||
|
|
||||||
|
# Include configuration files found in /etc/chrony/conf.d.
|
||||||
|
confdir /etc/chrony/conf.d
|
||||||
|
|
||||||
|
# This will use (up to):
|
||||||
|
# - 4 sources from ntp.ubuntu.com which some are ipv6 enabled
|
||||||
|
# - 2 sources from 2.ubuntu.pool.ntp.org which is ipv6 enabled as well
|
||||||
|
# - 1 source from [01].ubuntu.pool.ntp.org each (ipv4 only atm)
|
||||||
|
# This means by default, up to 6 dual-stack and up to 2 additional IPv4-only
|
||||||
|
# sources will be used.
|
||||||
|
# At the same time it retains some protection against one of the entries being
|
||||||
|
# down (compare to just using one of the lines). See (LP: #1754358) for the
|
||||||
|
# discussion.
|
||||||
|
#
|
||||||
|
# About using servers from the NTP Pool Project in general see (LP: #104525).
|
||||||
|
# Approved by Ubuntu Technical Board on 2011-02-08.
|
||||||
|
# See http://www.pool.ntp.org/join.html for more information.
|
||||||
|
server {{ ntp_server }} iburst prefer
|
||||||
|
pool ntp.ubuntu.com iburst maxsources 4
|
||||||
|
pool 0.ubuntu.pool.ntp.org iburst maxsources 1
|
||||||
|
pool 1.ubuntu.pool.ntp.org iburst maxsources 1
|
||||||
|
pool 2.ubuntu.pool.ntp.org iburst maxsources 2
|
||||||
|
|
||||||
|
# Use time sources from DHCP.
|
||||||
|
sourcedir /run/chrony-dhcp
|
||||||
|
|
||||||
|
# Use NTP sources found in /etc/chrony/sources.d.
|
||||||
|
sourcedir /etc/chrony/sources.d
|
||||||
|
|
||||||
|
# This directive specify the location of the file containing ID/key pairs for
|
||||||
|
# NTP authentication.
|
||||||
|
keyfile /etc/chrony/chrony.keys
|
||||||
|
|
||||||
|
# This directive specify the file into which chronyd will store the rate
|
||||||
|
# information.
|
||||||
|
driftfile /var/lib/chrony/chrony.drift
|
||||||
|
|
||||||
|
# Save NTS keys and cookies.
|
||||||
|
ntsdumpdir /var/lib/chrony
|
||||||
|
|
||||||
|
# Uncomment the following line to turn logging on.
|
||||||
|
#log tracking measurements statistics
|
||||||
|
|
||||||
|
# Log files location.
|
||||||
|
logdir /var/log/chrony
|
||||||
|
|
||||||
|
# Stop bad estimates upsetting machine clock.
|
||||||
|
maxupdateskew 100.0
|
||||||
|
|
||||||
|
# This directive enables kernel synchronisation (every 11 minutes) of the
|
||||||
|
# real-time clock. Note that it can't be used along with the 'rtcfile' directive.
|
||||||
|
rtcsync
|
||||||
|
|
||||||
|
# Step the system clock instead of slewing it if the adjustment is larger than
|
||||||
|
# one second, but only in the first three clock updates.
|
||||||
|
makestep 1 3
|
||||||
|
|
||||||
|
# Get TAI-UTC offset and leap seconds from the system tz database.
|
||||||
|
# This directive must be commented out when using time sources serving
|
||||||
|
# leap-smeared time.
|
||||||
|
leapsectz right/UTC
|
||||||
0
templates/cluster_spec.yml
Normal file
0
templates/cluster_spec.yml
Normal file
Loading…
Reference in New Issue
Block a user