Changeset View
Changeset View
Standalone View
Standalone View
winery-test-environment/ceph.yml
- This file was added.
# | |||||
# notes to install a client | |||||
# https://docs.ceph.com/en/latest/cephadm/client-setup/ | |||||
# ceph config generate-minimal-conf > /etc/ceph/ceph.conf | |||||
# ceph auth get-or-create client.admin > /etc/ceph/ceph.keyring | |||||
# | |||||
- hosts: localhost | |||||
gather_facts: false | |||||
pre_tasks: | |||||
- name: keygen ceph_key | |||||
shell: | | |||||
mkdir -p context | |||||
ssh-keygen -f context/ceph_key -N '' -t rsa | |||||
args: | |||||
creates: context/ceph_key | |||||
- hosts: all | |||||
become: true | |||||
pre_tasks: | |||||
- name: mkdir /root/.ssh | |||||
file: | |||||
path: /root/.ssh | |||||
state: directory | |||||
mode: 0700 | |||||
- name: touch /root/.ssh/authorized_keys | |||||
file: | |||||
path: /root/.ssh/authorized_keys | |||||
state: touch | |||||
- name: add context/ceph_key.pub to /root/.ssh/authorized_keys | |||||
lineinfile: | |||||
path: /root/.ssh/authorized_keys | |||||
line: "{{ lookup('file', 'context/ceph_key.pub') }}" | |||||
- name: apt install | |||||
apt: | |||||
name: | |||||
- htop | |||||
- iotop | |||||
- iftop | |||||
- iperf | |||||
- hosts: ceph | |||||
become: true | |||||
pre_tasks: | |||||
- name: apt install lvm2 curl gnupg2 | |||||
apt: | |||||
name: | |||||
- lvm2 | |||||
- curl | |||||
- gnupg2 | |||||
- name: apt-key https://download.ceph.com/keys/release.asc | |||||
apt_key: | |||||
url: https://download.ceph.com/keys/release.asc | |||||
- name: add repository | |||||
apt_repository: | |||||
repo: "deb https://download.ceph.com/debian-pacific/ bullseye main" | |||||
filename: ceph | |||||
- name: apt install cephadm ceph-common | |||||
apt: | |||||
name: | |||||
- cephadm | |||||
- ceph-common | |||||
roles: | |||||
- geerlingguy.docker | |||||
- hosts: all | |||||
become: true | |||||
# so that lineinfile does not race against itself | |||||
serial: 1 | |||||
tasks: | |||||
- name: "add {{ inventory_hostname }} to /etc/hosts" | |||||
lineinfile: | |||||
path: /etc/hosts | |||||
line: "{{ hostvars[inventory_hostname]['ansible_default_ipv4']['address'] }} {{ inventory_hostname }}" | |||||
delegate_to: ceph1 | |||||
- name: set hostname | |||||
hostname: | |||||
name: "{{ inventory_hostname }}" |