forked from ceph/ceph-ansible
-
Notifications
You must be signed in to change notification settings - Fork 0
/
take-over-existing-cluster.yml
49 lines (42 loc) · 1.58 KB
/
take-over-existing-cluster.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
---
# NOTE (leseb):
# The playbook aims to takeover a cluster that was not configured with
# ceph-ansible.
#
# The procedure is as follows:
#
# 1. Install Ansible and add your monitors and osds hosts in it. For more detailed information you can read the [Ceph Ansible Wiki](https://github.com/ceph/ceph-ansible/wiki)
# 2. Set `generate_fsid: false` in `group_vars`
# 3. Get your current cluster fsid with `ceph fsid` and set `fsid` accordingly in `group_vars`
# 4. Run the playbook called: `take-over-existing-cluster.yml` like this `ansible-playbook take-over-existing-cluster.yml`.
# 5. Eventually run Ceph Ansible to validate everything by doing: `ansible-playbook site.yml`.
- hosts: mons
become: True
vars_files:
- roles/ceph-common/defaults/main.yml
- group_vars/all
roles:
- ceph-fetch-keys
- hosts: all
become: true
tasks:
- include_vars: roles/ceph-common/defaults/main.yml
- include_vars: group_vars/all
- name: get the name of the existing ceph cluster
shell: "ls /etc/ceph/*.conf"
changed_when: false
register: ceph_conf
- name: stat ceph.conf
stat:
path: "{{ ceph_conf.stdout }}"
register: ceph_conf_stat
- name: generate ceph configuration file
action: config_template
args:
src: "roles/ceph-common/templates/ceph.conf.j2"
dest: "{{ ceph_conf.stdout }}"
owner: "{{ ceph_conf_stat.stat.pw_name }}"
group: "{{ ceph_conf_stat.stat.gr_name }}"
mode: "{{ ceph_conf_stat.stat.mode }}"
config_overrides: "{{ ceph_conf_overrides }}"
config_type: ini