f89d87c4b5
With minimal facts gathering we will experience failures while trying to evaluate amount of threads for apis or mounts for hardening. So to avoid gathering full hardware subset, we add common-task which will gather only specific subset that can be additionally filtered. Gathering processor or mounts subsent simply does not work with ansible and result in full hardware subset as well. Change-Id: Ia5802b4ec0b18271b8c5fbcc5574b484c5233a01
222 lines
5.8 KiB
YAML
222 lines
5.8 KiB
YAML
---
|
|
# Copyright 2016, Logan Vig <logan2211@gmail.com>
|
|
#
|
|
# 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
|