Skip to content

Commit

Permalink
Merge pull request #1968 from ceph/bz-1488999
Browse files Browse the repository at this point in the history
refact MDS role
  • Loading branch information
leseb authored Oct 2, 2017
2 parents 3c2c31a + 62770cd commit 30ce781
Show file tree
Hide file tree
Showing 10 changed files with 89 additions and 109 deletions.
73 changes: 73 additions & 0 deletions roles/ceph-mds/tasks/containerized.yml
Original file line number Diff line number Diff line change
@@ -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/[email protected]
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
39 changes: 0 additions & 39 deletions roles/ceph-mds/tasks/docker/copy_configs.yml

This file was deleted.

22 changes: 0 additions & 22 deletions roles/ceph-mds/tasks/docker/enable_multimds.yml

This file was deleted.

13 changes: 0 additions & 13 deletions roles/ceph-mds/tasks/docker/main.yml

This file was deleted.

17 changes: 0 additions & 17 deletions roles/ceph-mds/tasks/docker/start_docker_mds.yml

This file was deleted.

8 changes: 4 additions & 4 deletions roles/ceph-mds/tasks/main.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
- name: include pre_requisite.yml
include: pre_requisite.yml
- name: non_containerized.yml
include: non_containerized.yml
when: not containerized_deployment

- name: docker/main.yml
include: docker/main.yml
- name: containerized.yml
include: containerized.yml
when: containerized_deployment
File renamed without changes.
1 change: 0 additions & 1 deletion roles/ceph-mds/templates/ceph-mds.service.j2
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ ExecStart=/usr/bin/docker run --rm --net=host \
{% endif -%}
-v /etc/localtime:/etc/localtime:ro \
-e CLUSTER={{ cluster }} \
-e CEPHFS_CREATE=1 \
-e CEPH_DAEMON=MDS \
{{ ceph_mds_docker_extra_env }} \
--name=ceph-mds-{{ ansible_hostname }} \
Expand Down
10 changes: 5 additions & 5 deletions roles/ceph-mon/tasks/create_mds_filesystems.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,32 +4,32 @@
# 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
- 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:
- cephfs_data
- cephfs_metadata
changed_when: false

- 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
changed_when: false
failed_when: false

- 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
when: check_existing_cephfs.rc != 0

- 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
when:
- ceph_release_num.{{ ceph_release }} >= ceph_release_num.jewel
- mds_allow_multimds

- 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
when:
- ceph_release_num.{{ ceph_release }} >= ceph_release_num.jewel
Expand Down
15 changes: 7 additions & 8 deletions roles/ceph-mon/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,6 @@
# this avoids the bug mentioned here: https://github.com/ansible/ansible/issues/18206
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
include: secure_cluster.yml
when:
Expand All @@ -34,6 +26,13 @@
include: docker/main.yml
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
include: calamari.yml
when: calamari

0 comments on commit 30ce781

Please sign in to comment.