![Kevin Carter](/assets/img/avatar_default.png)
Elasticsearch can be used as a smart load balancer for all traffic which will remove the requirement for a VIP and move the cluster to a mesh topology. All of the Kibana nodes will now run elasticsearch as cordonator. * Kibana will now connect to elasticsearch on localhost. * All of the beats have been setup to use use the new mesh topology. * jvm memory management has been updated to reflect the additional services. More on node assigments can be found here: * https://www.elastic.co/guide/en/elasticsearch/reference/6.2/modules-node.html#modules-node * The readme has been updated to reflect these changes. Change-Id: I769e0251072f5dbde56fcce7753236d37d5c3b19 Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
68 lines
1.5 KiB
YAML
68 lines
1.5 KiB
YAML
---
|
|
- name: Install apm-server
|
|
hosts: apm-server
|
|
become: true
|
|
vars:
|
|
haproxy_ssl: false
|
|
|
|
vars_files:
|
|
- vars/variables.yml
|
|
|
|
environment: "{{ deployment_environment_variables | default({}) }}"
|
|
|
|
pre_tasks:
|
|
- include_tasks: common_task_data_node_hosts.yml
|
|
|
|
tasks:
|
|
- include_tasks: common_task_install_elk_repo.yml
|
|
|
|
- name: Ensure apm-server is installed
|
|
apt:
|
|
name: "{{ item }}"
|
|
state: "{{ elk_package_state | default('present') }}"
|
|
update_cache: true
|
|
with_items:
|
|
- apm-server
|
|
tags:
|
|
- package_install
|
|
|
|
- name: exit playbook after uninstall
|
|
meta: end_play
|
|
when:
|
|
- elk_package_state | default('present') == 'absent'
|
|
|
|
post_tasks:
|
|
- name: Drop apm-server conf file
|
|
template:
|
|
src: templates/apm-server.yml.j2
|
|
dest: /etc/apm-server/apm-server.yml
|
|
|
|
- name: Enable and restart APM Server
|
|
systemd:
|
|
name: "apm-server"
|
|
enabled: true
|
|
state: restarted
|
|
|
|
- name: Load apm-server Dashboards
|
|
hosts: apm-server[0]
|
|
become: true
|
|
vars_files:
|
|
- vars/variables.yml
|
|
tasks:
|
|
- name: Load templates
|
|
shell: >-
|
|
apm-server setup
|
|
{{ item }}
|
|
-E 'apm-server.host=localhost:8200'
|
|
-E 'output.elasticsearch.hosts={{ coordination_nodes | to_json }}'
|
|
-e -v
|
|
with_items:
|
|
- "--template"
|
|
- "--dashboards"
|
|
register: templates
|
|
until: templates is success
|
|
retries: 3
|
|
delay: 2
|
|
tags:
|
|
- beat-setup
|