3a0b3d2cde
This change adds the scaffolding required to get multi-distro support running in the roles. The change breaks up our playbooks converting all of the tasks into various roles with internal dependencies. While this will improve execution time, the change is being done to reduce boiler plate and to allow us to build on the pattern used in OSA to provide multi-distro capabilities. A side effect of this change is a major improvement in idempotency. The playbooks should now be 100% idempotent. All of the templates have been left in the main playbook directory. This was done to help ease the transition. In a future PR the template structure will be moved into the roles where it needs to be. The main variable files has been left intact. This file will be carved up into role defaults in a future PR. Change-Id: I938a10564128ce4078fa12edcf614dcdbd684b25 Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
63 lines
2.3 KiB
YAML
63 lines
2.3 KiB
YAML
---
|
|
# Copyright 2018, Rackspace US, Inc.
|
|
#
|
|
# 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: Initialise arcsight local facts
|
|
ini_file:
|
|
dest: "/etc/ansible/facts.d/logstash.fact"
|
|
section: arcsight
|
|
option: "initialise"
|
|
value: true
|
|
|
|
- name: refresh local facts
|
|
setup:
|
|
filter: ansible_local
|
|
gather_subset: "!all"
|
|
tags:
|
|
- nova-config
|
|
|
|
- name: Setup arcsight smart connector
|
|
shell: >-
|
|
/usr/local/bin/logstash --modules arcsight {{ (ansible_local['arcsight'][item.host] is defined) | ternary('', '--setup') }}
|
|
-M "arcsight.var.input.smartconnector.bootstrap_servers={{ item.host }}:{{ item.port }}"
|
|
-M "arcsight.var.elasticsearch.hosts=localhost:{{ elastic_port }}"
|
|
-M "arcsight.var.kibana.host={{ hostvars[groups['kibana'][0]]['ansible_host'] }}:{{ kibana_port }}"
|
|
with_items: "{{ logstash_arcsight_smart_connectors }}"
|
|
run_once: true
|
|
register: smart_connector
|
|
until: smart_connector is success
|
|
retries: 5
|
|
delay: 5
|
|
|
|
- name: Setup arcsight event broker
|
|
shell: >-
|
|
/usr/local/bin/logstash --modules arcsight {{ (ansible_local['arcsight'][item.host] is defined) | ternary('', '--setup') }}
|
|
-M "arcsight.var.input.eventbroker.bootstrap_servers={{ item.host }}:{{ item.port }}"
|
|
-M "arcsight.var.elasticsearch.hosts=localhost:{{ elastic_port }}"
|
|
-M "arcsight.var.kibana.host={{ hostvars[groups['kibana'][0]]['ansible_host'] }}:{{ kibana_port }}"
|
|
with_items: "{{ logstash_arcsight_event_brokers }}"
|
|
run_once: true
|
|
register: event_broker
|
|
until: event_broker is success
|
|
retries: 5
|
|
delay: 5
|
|
|
|
- name: Set arcsight local facts
|
|
ini_file:
|
|
dest: "/etc/ansible/facts.d/logstash.fact"
|
|
section: arcsight
|
|
option: "{{ item.host }}"
|
|
value: "{{ item.port }}"
|
|
with_items: "{{ logstash_arcsight_smart_connectors | union(logstash_arcsight_event_brokers) }}"
|