--- # Copyright 2016, Logan Vig # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - name: Gather ceph-mon facts hosts: ceph-mon gather_facts: "{{ osa_gather_facts | default(True) }}" tags: - always - name: Install ceph mons hosts: ceph-mon user: root gather_facts: false vars_files: - "defaults/{{ install_method }}_install.yml" pre_tasks: - name: Gather additional facts for monitor_address_block include_tasks: "common-tasks/gather-hardware-facts.yml" vars: deployment_extra_facts_filter: "ansible_all_ipv[4,6]_addresses" deployment_extra_facts_subset: "!all,network" when: monitor_address_block is defined tags: - always - name: Gather additional facts for monitor_interface include_tasks: "common-tasks/gather-hardware-facts.yml" vars: deployment_extra_facts_filter: "{{ 'ansible_' ~ monitor_interface | replace('-','_') }}" deployment_extra_facts_subset: "!all,network" when: monitor_interface is defined tags: - always - name: Gather memory facts include_tasks: "common-tasks/gather-hardware-facts.yml" vars: deployment_extra_facts_filter: "ansible_memtotal*" deployment_extra_facts_subset: "!all,hardware" tags: - always - import_tasks: common-tasks/ceph-server.yml - name: Create systemd service directory file: path: "/etc/systemd/system/ceph-mon@.service.d/" state: directory group: "root" owner: "root" mode: "0755" when: - ansible_facts['pkg_mgr'] in ['yum', 'dnf'] - ansible_facts['service_mgr'] == 'systemd' - name: Add systemd override for PrivateDevices copy: dest: "/etc/systemd/system/ceph-mon@.service.d/ceph-mon-systemd-overrides.conf" content: | [Service] PrivateDevices=false when: - ansible_facts['pkg_mgr'] in ['yum', 'dnf'] - ansible_facts['service_mgr'] == 'systemd' roles: - role: ceph-defaults tags: - skip_ansible_lint - role: ceph-facts tags: - skip_ansible_lint - role: ceph-common tags: - skip_ansible_lint - role: ceph-handler tags: - skip_ansible_lint - role: ceph-config tags: - skip_ansible_lint - role: ceph-mon tags: - skip_ansible_lint - role: ceph-mgr tags: - skip_ansible_lint - role: system_crontab_coordination tags: - crontab post_tasks: - include_tasks: "common-tasks/rsyslog-client.yml" vars: rsyslog_client_log_rotate_file: ceph_log_rotate rsyslog_client_log_dir: "/var/log/ceph" rsyslog_client_config_name: "99-ceph-rsyslog-client.conf" environment: "{{ deployment_environment_variables | default({}) }}" tags: - ceph - ceph-mon - name: Gather ceph-osd facts hosts: ceph-osd gather_facts: "{{ osa_gather_facts | default(True) }}" tags: - always - name: Install ceph osds hosts: ceph-osd user: root gather_facts: false vars_files: - "defaults/{{ install_method }}_install.yml" pre_tasks: - name: Gather memory facts include_tasks: "common-tasks/gather-hardware-facts.yml" vars: deployment_extra_facts_filter: "ansible_memtotal*" deployment_extra_facts_subset: "!all,hardware" tags: - always - import_tasks: common-tasks/ceph-server.yml roles: - role: ceph-defaults tags: - skip_ansible_lint - role: ceph-facts tags: - skip_ansible_lint - role: ceph-common tags: - skip_ansible_lint - role: ceph-handler tags: - skip_ansible_lint - role: ceph-config tags: - skip_ansible_lint - role: ceph-osd tags: - skip_ansible_lint - role: system_crontab_coordination tags: - crontab post_tasks: - include_tasks: "common-tasks/rsyslog-client.yml" vars: rsyslog_client_log_rotate_file: ceph_log_rotate rsyslog_client_log_dir: "/var/log/ceph" rsyslog_client_config_name: "99-ceph-rsyslog-client.conf" environment: "{{ deployment_environment_variables | default({}) }}" tags: - ceph - ceph-osd - name: Gather ceph-mds facts hosts: ceph-mds gather_facts: "{{ osa_gather_facts | default(True) }}" tags: - always - name: Install ceph metadata servers hosts: ceph-mds gather_facts: false user: root vars_files: - "defaults/{{ install_method }}_install.yml" pre_tasks: - name: Gather memory facts include_tasks: "common-tasks/gather-hardware-facts.yml" vars: deployment_extra_facts_filter: "ansible_memtotal*" deployment_extra_facts_subset: "!all,hardware" tags: - always roles: - role: ceph-defaults tags: - skip_ansible_lint - role: ceph-facts tags: - skip_ansible_lint - role: ceph-common tags: - skip_ansible_lint - role: ceph-handler tags: - skip_ansible_lint - role: ceph-config tags: - skip_ansible_lint - role: ceph-mds tags: - skip_ansible_lint - role: "system_crontab_coordination" tags: - "system-crontab-coordination" vars: is_metal: "{{ properties.is_metal|default(false) }}" tags: - ceph-mds