mirror of https://github.com/ceph/ceph-ansible.git
commit
30ce781c79
|
@ -0,0 +1,73 @@
|
||||||
|
---
|
||||||
|
- name: set_fact ceph_config_keys
|
||||||
|
set_fact:
|
||||||
|
ceph_config_keys:
|
||||||
|
- /var/lib/ceph/bootstrap-mds/{{ cluster }}.keyring
|
||||||
|
|
||||||
|
- name: stat for ceph config and keys
|
||||||
|
local_action: stat path={{ fetch_directory }}/{{ fsid }}/{{ item }}
|
||||||
|
with_items: "{{ ceph_config_keys }}"
|
||||||
|
changed_when: false
|
||||||
|
become: false
|
||||||
|
failed_when: false
|
||||||
|
always_run: true
|
||||||
|
register: statconfig
|
||||||
|
|
||||||
|
- name: try to fetch ceph config and keys
|
||||||
|
copy:
|
||||||
|
src: "{{ fetch_directory }}/{{ fsid }}/{{ item.0 }}"
|
||||||
|
dest: "{{ item.0 }}"
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0644
|
||||||
|
changed_when: false
|
||||||
|
with_together:
|
||||||
|
- "{{ ceph_config_keys }}"
|
||||||
|
- "{{ statconfig.results }}"
|
||||||
|
when: item.1.stat.exists == true
|
||||||
|
|
||||||
|
- name: set selinux permissions
|
||||||
|
shell: |
|
||||||
|
chcon -Rt svirt_sandbox_file_t {{ item }}
|
||||||
|
with_items:
|
||||||
|
- "{{ ceph_conf_key_directory }}"
|
||||||
|
- /var/lib/ceph
|
||||||
|
changed_when: false
|
||||||
|
when: sestatus.stdout != 'Disabled'
|
||||||
|
|
||||||
|
- name: generate systemd unit file
|
||||||
|
become: true
|
||||||
|
template:
|
||||||
|
src: "{{ role_path }}/templates/ceph-mds.service.j2"
|
||||||
|
dest: /etc/systemd/system/ceph-mds@.service
|
||||||
|
owner: "root"
|
||||||
|
group: "root"
|
||||||
|
mode: "0644"
|
||||||
|
|
||||||
|
- name: systemd start mds container
|
||||||
|
systemd:
|
||||||
|
name: ceph-mds@{{ ansible_hostname }}
|
||||||
|
state: started
|
||||||
|
enabled: yes
|
||||||
|
daemon_reload: yes
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: wait for mds socket to exist
|
||||||
|
command: "{{ docker_exec_cmd }} stat /var/run/ceph/{{ cluster }}-mds.{{ ansible_hostname }}.asok"
|
||||||
|
register: multi_mds_socket
|
||||||
|
retries: 5
|
||||||
|
delay: 15
|
||||||
|
until: multi_mds_socket.rc == 0
|
||||||
|
|
||||||
|
- name: enable multimds if requested when mon is containerized
|
||||||
|
command: "{{ docker_exec_cmd }} ceph --cluster {{ cluster }} fs set {{ cephfs }} allow_multimds true --yes-i-really-mean-it"
|
||||||
|
changed_when: false
|
||||||
|
when:
|
||||||
|
- mds_allow_multimds
|
||||||
|
|
||||||
|
- name: set max_mds when mon is containerized
|
||||||
|
command: "{{ docker_exec_cmd }} ceph --cluster {{ cluster }} fs set {{ cephfs }} max_mds {{ mds_max_mds }}"
|
||||||
|
changed_when: false
|
||||||
|
when:
|
||||||
|
- mds_allow_multimds
|
||||||
|
- mds_max_mds > 1
|
|
@ -1,39 +0,0 @@
|
||||||
---
|
|
||||||
- name: set_fact ceph_config_keys
|
|
||||||
set_fact:
|
|
||||||
ceph_config_keys:
|
|
||||||
- /etc/ceph/{{ cluster }}.client.admin.keyring
|
|
||||||
- /var/lib/ceph/bootstrap-mds/{{ cluster }}.keyring
|
|
||||||
|
|
||||||
- name: stat for ceph config and keys
|
|
||||||
local_action: stat path={{ fetch_directory }}/{{ fsid }}/{{ item }}
|
|
||||||
with_items: "{{ ceph_config_keys }}"
|
|
||||||
changed_when: false
|
|
||||||
become: false
|
|
||||||
failed_when: false
|
|
||||||
always_run: true
|
|
||||||
register: statconfig
|
|
||||||
|
|
||||||
- name: try to fetch ceph config and keys
|
|
||||||
copy:
|
|
||||||
src: "{{ fetch_directory }}/{{ fsid }}/{{ item.0 }}"
|
|
||||||
dest: "{{ item.0 }}"
|
|
||||||
owner: root
|
|
||||||
group: root
|
|
||||||
mode: 0644
|
|
||||||
changed_when: false
|
|
||||||
with_together:
|
|
||||||
- "{{ ceph_config_keys }}"
|
|
||||||
- "{{ statconfig.results }}"
|
|
||||||
when: item.1.stat.exists == true
|
|
||||||
|
|
||||||
- name: set selinux permissions
|
|
||||||
shell: |
|
|
||||||
chcon -Rt svirt_sandbox_file_t {{ item }}
|
|
||||||
with_items:
|
|
||||||
- "{{ ceph_conf_key_directory }}"
|
|
||||||
- /var/lib/ceph
|
|
||||||
changed_when: false
|
|
||||||
when:
|
|
||||||
- ansible_os_family == 'RedHat'
|
|
||||||
- sestatus.stdout != 'Disabled'
|
|
|
@ -1,22 +0,0 @@
|
||||||
---
|
|
||||||
- name: wait for mds socket to exist
|
|
||||||
command: "{{ docker_exec_cmd }} stat /var/run/ceph/{{ cluster }}-mds.{{ ansible_hostname }}.asok"
|
|
||||||
register: multi_mds_socket
|
|
||||||
retries: 5
|
|
||||||
delay: 15
|
|
||||||
until: multi_mds_socket.rc == 0
|
|
||||||
|
|
||||||
- name: enable multimds if requested when mon is containerized
|
|
||||||
command: "{{ docker_exec_cmd }} ceph --cluster {{ cluster }} fs set {{ cephfs }} allow_multimds true --yes-i-really-mean-it"
|
|
||||||
changed_when: false
|
|
||||||
when:
|
|
||||||
- containerized_deployment
|
|
||||||
- mds_allow_multimds
|
|
||||||
|
|
||||||
- name: set max_mds when mon is containerized
|
|
||||||
command: "{{ docker_exec_cmd }} ceph --cluster {{ cluster }} fs set {{ cephfs }} max_mds {{ mds_max_mds }}"
|
|
||||||
changed_when: false
|
|
||||||
when:
|
|
||||||
- containerized_deployment
|
|
||||||
- mds_allow_multimds
|
|
||||||
- mds_max_mds > 1
|
|
|
@ -1,13 +0,0 @@
|
||||||
---
|
|
||||||
- name: set_fact docker_exec_cmd
|
|
||||||
set_fact:
|
|
||||||
docker_exec_cmd: "docker exec ceph-mds-{{ ansible_hostname }}"
|
|
||||||
|
|
||||||
- name: include copy_configs.yml
|
|
||||||
include: copy_configs.yml
|
|
||||||
|
|
||||||
- name: include start_docker_mds.yml
|
|
||||||
include: start_docker_mds.yml
|
|
||||||
|
|
||||||
- name: include enable_multimds.yml
|
|
||||||
include: enable_multimds.yml
|
|
|
@ -1,17 +0,0 @@
|
||||||
---
|
|
||||||
- name: generate systemd unit file
|
|
||||||
become: true
|
|
||||||
template:
|
|
||||||
src: "{{ role_path }}/templates/ceph-mds.service.j2"
|
|
||||||
dest: /etc/systemd/system/ceph-mds@.service
|
|
||||||
owner: "root"
|
|
||||||
group: "root"
|
|
||||||
mode: "0644"
|
|
||||||
|
|
||||||
- name: systemd start mds container
|
|
||||||
systemd:
|
|
||||||
name: ceph-mds@{{ ansible_hostname }}
|
|
||||||
state: started
|
|
||||||
enabled: yes
|
|
||||||
daemon_reload: yes
|
|
||||||
changed_when: false
|
|
|
@ -1,8 +1,8 @@
|
||||||
---
|
---
|
||||||
- name: include pre_requisite.yml
|
- name: non_containerized.yml
|
||||||
include: pre_requisite.yml
|
include: non_containerized.yml
|
||||||
when: not containerized_deployment
|
when: not containerized_deployment
|
||||||
|
|
||||||
- name: docker/main.yml
|
- name: containerized.yml
|
||||||
include: docker/main.yml
|
include: containerized.yml
|
||||||
when: containerized_deployment
|
when: containerized_deployment
|
||||||
|
|
|
@ -23,7 +23,6 @@ ExecStart=/usr/bin/docker run --rm --net=host \
|
||||||
{% endif -%}
|
{% endif -%}
|
||||||
-v /etc/localtime:/etc/localtime:ro \
|
-v /etc/localtime:/etc/localtime:ro \
|
||||||
-e CLUSTER={{ cluster }} \
|
-e CLUSTER={{ cluster }} \
|
||||||
-e CEPHFS_CREATE=1 \
|
|
||||||
-e CEPH_DAEMON=MDS \
|
-e CEPH_DAEMON=MDS \
|
||||||
{{ ceph_mds_docker_extra_env }} \
|
{{ ceph_mds_docker_extra_env }} \
|
||||||
--name=ceph-mds-{{ ansible_hostname }} \
|
--name=ceph-mds-{{ ansible_hostname }} \
|
||||||
|
|
|
@ -4,32 +4,32 @@
|
||||||
# the role 'ceph-common' doesn't get inherited so the condition can not be evaluate
|
# the role 'ceph-common' doesn't get inherited so the condition can not be evaluate
|
||||||
# since those check are performed by the ceph-common role
|
# since those check are performed by the ceph-common role
|
||||||
- name: create filesystem pools
|
- name: create filesystem pools
|
||||||
command: ceph --cluster {{ cluster }} osd pool create {{ item }} {{ osd_pool_default_pg_num }}
|
command: "{{ docker_exec_cmd }} ceph --cluster {{ cluster }} osd pool create {{ item }} {{ osd_pool_default_pg_num }}"
|
||||||
with_items:
|
with_items:
|
||||||
- cephfs_data
|
- cephfs_data
|
||||||
- cephfs_metadata
|
- cephfs_metadata
|
||||||
changed_when: false
|
changed_when: false
|
||||||
|
|
||||||
- name: check if ceph filesystem already exists
|
- name: check if ceph filesystem already exists
|
||||||
command: ceph --cluster {{ cluster }} fs get {{ cephfs }}
|
command: "{{docker_exec_cmd }} ceph --cluster {{ cluster }} fs get {{ cephfs }}"
|
||||||
register: check_existing_cephfs
|
register: check_existing_cephfs
|
||||||
changed_when: false
|
changed_when: false
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: create ceph filesystem
|
- name: create ceph filesystem
|
||||||
command: ceph --cluster {{ cluster }} fs new {{ cephfs }} {{ cephfs_metadata }} {{ cephfs_data }}
|
command: "{{ docker_exec_cmd}} ceph --cluster {{ cluster }} fs new {{ cephfs }} {{ cephfs_metadata }} {{ cephfs_data }}"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
when: check_existing_cephfs.rc != 0
|
when: check_existing_cephfs.rc != 0
|
||||||
|
|
||||||
- name: allow multimds
|
- name: allow multimds
|
||||||
command: ceph --cluster {{ cluster }} fs set {{ cephfs }} allow_multimds true --yes-i-really-mean-it
|
command: "{{ docker_exec_cmd }} ceph --cluster {{ cluster }} fs set {{ cephfs }} allow_multimds true --yes-i-really-mean-it"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
when:
|
when:
|
||||||
- ceph_release_num.{{ ceph_release }} >= ceph_release_num.jewel
|
- ceph_release_num.{{ ceph_release }} >= ceph_release_num.jewel
|
||||||
- mds_allow_multimds
|
- mds_allow_multimds
|
||||||
|
|
||||||
- name: set max_mds
|
- name: set max_mds
|
||||||
command: ceph --cluster {{ cluster }} fs set {{ cephfs }} max_mds {{ mds_max_mds }}
|
command: "{{ docker_exec_cmd }} ceph --cluster {{ cluster }} fs set {{ cephfs }} max_mds {{ mds_max_mds }}"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
when:
|
when:
|
||||||
- ceph_release_num.{{ ceph_release }} >= ceph_release_num.jewel
|
- ceph_release_num.{{ ceph_release }} >= ceph_release_num.jewel
|
||||||
|
|
|
@ -16,14 +16,6 @@
|
||||||
# this avoids the bug mentioned here: https://github.com/ansible/ansible/issues/18206
|
# this avoids the bug mentioned here: https://github.com/ansible/ansible/issues/18206
|
||||||
static: no
|
static: no
|
||||||
|
|
||||||
- name: include create_mds_filesystems.yml
|
|
||||||
include: create_mds_filesystems.yml
|
|
||||||
when:
|
|
||||||
- not containerized_deployment
|
|
||||||
- groups[mds_group_name] is defined
|
|
||||||
- "{{ groups[mds_group_name]|length > 0 }}"
|
|
||||||
- "{{ inventory_hostname == groups[mon_group_name] | last }}"
|
|
||||||
|
|
||||||
- name: include secure_cluster.yml
|
- name: include secure_cluster.yml
|
||||||
include: secure_cluster.yml
|
include: secure_cluster.yml
|
||||||
when:
|
when:
|
||||||
|
@ -34,6 +26,13 @@
|
||||||
include: docker/main.yml
|
include: docker/main.yml
|
||||||
when: containerized_deployment
|
when: containerized_deployment
|
||||||
|
|
||||||
|
- name: include create_mds_filesystems.yml
|
||||||
|
include: create_mds_filesystems.yml
|
||||||
|
when:
|
||||||
|
- groups[mds_group_name] is defined
|
||||||
|
- groups[mds_group_name]|length > 0
|
||||||
|
- inventory_hostname == groups[mon_group_name] | last
|
||||||
|
|
||||||
- name: include calamari.yml
|
- name: include calamari.yml
|
||||||
include: calamari.yml
|
include: calamari.yml
|
||||||
when: calamari
|
when: calamari
|
||||||
|
|
Loading…
Reference in New Issue