openstack-ansible-os_masakari/tasks/masakari_post_install.yml
Dmitriy Rabotjagov d0e8674f92 Basic implementation of masakari-monitors
With this change masakari-monitors will be installed on hosts
which are in group masakari-monitor (supposed to be nova compute hosts)

hostmonitor depends on pacemaker with corosync, which are implemented by
https://github.com/mit-scripts/ansible-pacemaker-corosync

Masakari api/engine config was simplified and unneccesary defaults
were removed from it.

Role now uses default ``systemd_service`` role for systemctl configuration

Co-Authored-By: Jesse Pretorius <jesse.pretorius@rackspace.co.uk>
Implements: blueprint masakari-ansible-plugin
Change-Id: I334877c0111a45d3f3a74e7f56931786f4301713
2018-11-06 19:46:53 +02:00

64 lines
2.6 KiB
YAML

---
# Copyright (c) 2018 NTT DATA
#
# 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: Deploy masakari configuration files
config_template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: "root"
group: "{{ masakari_system_group_name }}"
mode: "0640"
config_overrides: "{{ item.config_overrides }}"
config_type: "{{ item.config_type }}"
when: item.condition | default(True)
with_items:
- src: "api-paste.ini.j2"
dest: "{{ masakari_etc_dir }}/api-paste.ini"
config_overrides: "{{ masakari_api_paste_ini_overrides }}"
config_type: "ini"
condition: "{{ masakari_services['masakari-api']['group'] in group_names or masakari_services['masakari-engine']['group'] in group_names }}"
- src: "masakari.conf.j2"
dest: "{{ masakari_etc_dir }}/masakari.conf"
config_overrides: "{{ masakari_masakari_conf_overrides }}"
config_type: "ini"
condition: "{{ masakari_services['masakari-api']['group'] in group_names or masakari_services['masakari-engine']['group'] in group_names }}"
- src: "policy.json.j2"
dest: "{{ masakari_etc_dir }}/policy.json"
config_overrides: "{{ masakari_policy_json_overrides }}"
config_type: "json"
condition: "{{ masakari_services['masakari-api']['group'] in group_names or masakari_services['masakari-engine']['group'] in group_names }}"
- src: "masakarimonitors.conf.j2"
dest: "{{ masakari_monitor_etc_dir }}/masakarimonitors.conf"
config_overrides: "{{ masakari_monitors_conf_overrides }}"
config_type: "ini"
condition: "{{ 'masakari_monitor' in group_names }}"
- src: "process_list.yaml.j2"
dest: "{{ masakari_monitor_etc_dir }}/process_list.yaml"
config_overrides: "{{ masakari_monitors_process_overrides }}"
config_type: "yaml"
condition: "{{ 'masakari_monitor' in group_names }}"
notify:
- Restart masakari services
- name: Deploy masakari-monitors sudoers files
template:
src: "masakari_sudoers.j2"
dest: "/etc/sudoers.d/masakari_sudoers"
owner: "root"
group: "root"
mode: "0440"
validate: '/usr/sbin/visudo -cf %s'
when: "'masakari_monitor' in group_names"