This role is intended to deploy Elasticsearch node, you have some variables that can be used to customize the installation:

  • elasticsearch_network_host: defines listen ip address (default:

  • elasticsearch_http_port: defines listen port (default: 9200).

  • elasticsearch_jvm_xms: amount of memory for java (default: null).

  • elastic_stack_version: defines elk version to be installed.

You can create a YAML file wazuh-elastic.yml to be used by Ansible playbook:

- hosts: elasticsearch
  - ansible-role-elasticsearch

You can set your custom variable definitions for different environments, for example:

  1. For production environment vars-production.yml:

elasticsearch_network_host: ''
  1. For development environment vars-development.yml:

elasticsearch_network_host: ''

Next, run the ansible playbook:

$ ansible-playbook wazuh-elastic.yml -e@vars-production.yml

The example above will install Elasticsearch and set the listen address to: using vars-production.yml.

Please review the references section to see all variables available for this role.