Update docs and add inventory example
Change-Id: I686644ad78f184f8ec6f101aeac6f0e6a41d8eae Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
This commit is contained in:
parent
fb9637f0d1
commit
28f51ecae0
51
elk_metrics_6x/inventory.example.yml
Normal file
51
elk_metrics_6x/inventory.example.yml
Normal file
@ -0,0 +1,51 @@
|
||||
---
|
||||
|
||||
################################## ALL HOSTS ##################################
|
||||
all:
|
||||
hosts:
|
||||
# Local host
|
||||
localhost:
|
||||
ansible_connection: local
|
||||
|
||||
################################## REQUIRED ###################################
|
||||
logging01:
|
||||
ansible_host: 172.16.27.100
|
||||
ansible_user: root
|
||||
|
||||
############################## OPTIONAL TARGETS ###############################
|
||||
target1:
|
||||
ansible_host: 172.16.27.200
|
||||
ansible_user: root
|
||||
|
||||
vars: {}
|
||||
|
||||
|
||||
################################### GROUPS ####################################
|
||||
|
||||
# The hosts group is used to target physical host machines. Enter all physical
|
||||
# host machines here.
|
||||
hosts:
|
||||
hosts:
|
||||
target1:
|
||||
|
||||
# This is the location where elasticsearch(s) and logstash(s) will live.
|
||||
elastic-logstash:
|
||||
hosts:
|
||||
logging01:
|
||||
|
||||
# This is the location where kibana(s) will live
|
||||
kibana:
|
||||
hosts:
|
||||
logging01:
|
||||
|
||||
# These groups are all optional groups used within the stack to agment the data
|
||||
# collection in an OpenStack environment.
|
||||
ceph-mon: {}
|
||||
galera_all: {}
|
||||
nova_compute: {}
|
||||
haproxy_all: {}
|
||||
horizon_all: {}
|
||||
memcached_all: {}
|
||||
rabbitmq_all: {}
|
||||
shared-infra_hosts: {}
|
||||
utility_all: {}
|
@ -8,8 +8,64 @@ About this repository
|
||||
This set of playbooks will deploy elk cluster (Elasticsearch, Logstash, Kibana)
|
||||
with topbeat to gather metrics from hosts metrics to the ELK cluster.
|
||||
|
||||
Process
|
||||
-------
|
||||
**These playbooks require Ansible 2.4+.**
|
||||
|
||||
OpenStack-Ansible Integration
|
||||
-----------------------------
|
||||
|
||||
These playbooks can be used as standalone inventory or as an integrated part of
|
||||
an OpenStack-Ansible deployment. For a simple example of standalone inventory,
|
||||
see ``inventory.example.yml``.
|
||||
|
||||
Optional | Load balancer VIP address
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
In order to use multi-node elasticsearch a loadbalancer is required. Haproxy can
|
||||
provide the load balancer functionality needed. The option
|
||||
`internal_lb_vip_address` is used as the endpoint (virtual IP address) services
|
||||
like Kibana will use when connecting to elasticsearch. If this option is
|
||||
omitted, the first node in the elasticsearch cluster will be used.
|
||||
|
||||
Optional | configure haproxy endpoints
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Edit the `/etc/openstack_deploy/user_variables.yml` file and add fiel following
|
||||
lines
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
haproxy_extra_services:
|
||||
- service:
|
||||
haproxy_service_name: kibana
|
||||
haproxy_ssl: False
|
||||
haproxy_backend_nodes: "{{ groups['kibana'] | default([]) }}"
|
||||
haproxy_port: 81 # This is set using the "kibana_nginx_port" variable
|
||||
haproxy_balance_type: tcp
|
||||
- service:
|
||||
haproxy_service_name: elastic-logstash
|
||||
haproxy_ssl: False
|
||||
haproxy_backend_nodes: "{{ groups['elastic-logstash'] | default([]) }}"
|
||||
haproxy_port: 5044 # This is set using the "logstash_beat_input_port" variable
|
||||
haproxy_balance_type: tcp
|
||||
- service:
|
||||
haproxy_service_name: elastic-logstash
|
||||
haproxy_ssl: False
|
||||
haproxy_backend_nodes: "{{ groups['elastic-logstash'] | default([]) }}"
|
||||
haproxy_port: 9201 # This is set using the "elastic_hap_port" variable
|
||||
haproxy_check_port: 9200 # This is set using the "elastic_port" variable
|
||||
haproxy_backend_port: 9200 # This is set using the "elastic_port" variable
|
||||
haproxy_balance_type: tcp
|
||||
|
||||
Optional | run the haproxy-install playbook
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
cd /opt/openstack-ansible/playbooks/
|
||||
openstack-ansible haproxy-install.yml --tags=haproxy-service-config
|
||||
|
||||
Deployment Process
|
||||
------------------
|
||||
|
||||
Clone the elk-osa repo
|
||||
|
||||
@ -75,44 +131,8 @@ instances
|
||||
cd /opt/openstack-ansible-ops/elk_metrics_6x
|
||||
openstack-ansible installMetricbeat.yml
|
||||
|
||||
Optional | conigure haproxy endpoints
|
||||
|
||||
Edit the `/etc/openstack_deploy/user_variables.yml` file and add fiel following
|
||||
lines
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
haproxy_extra_services:
|
||||
- service:
|
||||
haproxy_service_name: kibana
|
||||
haproxy_ssl: False
|
||||
haproxy_backend_nodes: "{{ groups['kibana'] | default([]) }}"
|
||||
haproxy_port: 81 # This is set using the "kibana_nginx_port" variable
|
||||
haproxy_balance_type: tcp
|
||||
- service:
|
||||
haproxy_service_name: elastic-logstash
|
||||
haproxy_ssl: False
|
||||
haproxy_backend_nodes: "{{ groups['elastic-logstash'] | default([]) }}"
|
||||
haproxy_port: 5044 # This is set using the "logstash_beat_input_port" variable
|
||||
haproxy_balance_type: tcp
|
||||
- service:
|
||||
haproxy_service_name: elastic-logstash
|
||||
haproxy_ssl: False
|
||||
haproxy_backend_nodes: "{{ groups['elastic-logstash'] | default([]) }}"
|
||||
haproxy_port: 9201 # This is set using the "elastic_hap_port" variable
|
||||
haproxy_check_port: 9200 # This is set using the "elastic_port" variable
|
||||
haproxy_backend_port: 9200 # This is set using the "elastic_port" variable
|
||||
haproxy_balance_type: tcp
|
||||
|
||||
Optional | run the haproxy-install playbook
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
cd /opt/openstack-ansible/playbooks/
|
||||
openstack-ansible haproxy-install.yml --tags=haproxy-service-config
|
||||
|
||||
Trouble shooting
|
||||
^^^^^^^^^^^^^^^^
|
||||
----------------
|
||||
|
||||
If everything goes bad, you can clean up with the following command
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user