Kevin Carter eb3bcb8daa Add local facts for template creations
The template creates can take a lot of time when dealing with large data
sets. This change makes it so template create will only happen on a
greenfield installation or when upgrading. A simple rerun of the
playbooks will not trigger template creations which will allow deployers
the ability to better change or modify deploymens without having to
worry about extended runtimes due to template interactions.

Change-Id: Ia9b77277553fbdbe0444737f39ec3de75f07cc0f
2018-12-19 17:59:21 -06:00

61 lines
1.7 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: Refresh local facts
setup:
filter: ansible_local
gather_subset: "!all"
tags:
- always
- name: Load templates
shell: >-
packetbeat setup
{{ item }}
-E 'output.logstash.enabled=false'
-E 'output.elasticsearch.hosts={{ coordination_nodes | to_json }}'
-E 'setup.template.enabled=true'
-E 'setup.template.overwrite=true'
-e -v
with_items:
- "--template"
- "--pipelines"
- "--machine-learning"
- "--dashboards"
register: templates
environment:
no_proxy: "{{ hostvars[groups['kibana'][0]]['ansible_host'] }}"
until: templates is success
retries: 5
delay: 5
run_once: true
when:
- ((ansible_local['elastic']['setup']['packetbeat_loaded_templates'] is undefined) or
(not (ansible_local['elastic']['setup']['packetbeat_loaded_templates'] | bool))) or
(elk_package_state | default('present')) == "latest"
tags:
- setup
- name: Set template fact
ini_file:
dest: "/etc/ansible/facts.d/elastic.fact"
section: "setup"
option: packetbeat_loaded_templates
value: true
when:
- templates is changed
tags:
- setup