Ansible role to install and configure a Elasticsearch full-text search engine.
Building and improving this Ansible role have been sponsored by my current and previous employers like Cloudpunks GmbH and Proact Deutschland GmbH.
- Requirements
- Default Variables
- elasticsearch_action_destructive_requires_name
- elasticsearch_bootstrap_memory_lock
- elasticsearch_cluster_initial_master_nodes
- elasticsearch_cluster_name
- elasticsearch_discovery_seed_hosts
- elasticsearch_discovery_zen_minimum_master_nodes
- elasticsearch_discovery_zen_ping_unicast_hosts
- elasticsearch_exporter_cluster_settings
- elasticsearch_exporter_connection
- elasticsearch_exporter_download
- elasticsearch_exporter_enabled
- elasticsearch_exporter_indicies
- elasticsearch_exporter_indicies_settings
- elasticsearch_exporter_node
- elasticsearch_exporter_shards
- elasticsearch_exporter_snapshots
- elasticsearch_exporter_version
- elasticsearch_gateway_recover_after_nodes
- elasticsearch_group
- elasticsearch_http_compression
- elasticsearch_http_cors_allow_origin
- elasticsearch_http_cors_enabled
- elasticsearch_http_port
- elasticsearch_indicies_query_bool_max_clause_count
- elasticsearch_initial_heap_space
- elasticsearch_java_home
- elasticsearch_keyring
- elasticsearch_logs_path
- elasticsearch_major_version
- elasticsearch_maximum_heap_space
- elasticsearch_network_host
- elasticsearch_network_publish_host
- elasticsearch_node_data
- elasticsearch_node_ingest
- elasticsearch_node_master
- elasticsearch_node_name
- elasticsearch_openjdk_version
- elasticsearch_plugins_extra
- elasticsearch_plugins_general
- elasticsearch_restart_on_upgrade
- elasticsearch_search_max_buckets
- elasticsearch_server_version
- elasticsearch_startup_sleep_time
- elasticsearch_storage_path
- elasticsearch_user
- elasticsearch_xpack_security_enabled
- Discovered Tags
- Dependencies
- License
- Author
- Minimum Ansible version:
2.10
Require explicit names when deleting indices
elasticsearch_action_destructive_requires_name: false
Lock the memory on startup
elasticsearch_bootstrap_memory_lock: false
List of initial master nodes, only for Elasticsearch >= 7.0
elasticsearch_cluster_initial_master_nodes: []
Name of the cluster
elasticsearch_cluster_name:
elasticsearch_discovery_seed_hosts: []
Minimum master nodes, only for Elasticsearch < 7.0
elasticsearch_discovery_zen_minimum_master_nodes: 1
List of discovery seed hosts, only for Elasticsearch >= 7.0
elasticsearch_discovery_zen_ping_unicast_hosts: []
Export stats for cluster settings
elasticsearch_exporter_cluster_settings: true
Connection URI to access the Elasticsearch
elasticsearch_exporter_connection: http://localhost:9200
URL to the archive of the release to install
elasticsearch_exporter_download:
https://github.com/prometheus-community/elasticsearch_exporter/releases/download/v{{
elasticsearch_exporter_version }}/elasticsearch_exporter-{{ elasticsearch_exporter_version
}}.linux-amd64.tar.gz
Enable the elasticsearch exporter
elasticsearch_exporter_enabled: true
Export stats for indices in the cluster
elasticsearch_exporter_indicies: true
Export stats for settings of all indices of the cluster
elasticsearch_exporter_indicies_settings: true
Name of the node to export, all for every node
elasticsearch_exporter_node: all
Export stats for shards in the cluster
elasticsearch_exporter_shards: true
Export stats for the cluster snapshots
elasticsearch_exporter_snapshots: true
Version of the release to install
elasticsearch_exporter_version: 1.7.0
Block initial recovery after a full cluster restart until N nodes are started
elasticsearch_gateway_recover_after_nodes: 1
Name of the group owning Elasticsearch
elasticsearch_group: elasticsearch
Enable compression for HTTP
elasticsearch_http_compression: true
Define CORS allow origin for HTTP
elasticsearch_http_cors_allow_origin:
Enable CORS for HTTP
elasticsearch_http_cors_enabled: false
Define the port for the HTTP interface
elasticsearch_http_port: 9200
elasticsearch_indicies_query_bool_max_clause_count:
Represents the initial size of total heap space
elasticsearch_initial_heap_space: 1g
elasticsearch_java_home: /usr/lib/jvm/java-{{ elasticsearch_openjdk_version }}-openjdk-amd64
Path for the repository keyring
elasticsearch_keyring: /usr/share/keyrings/elastic-archive-keyring.gpg
Path to the logs directory
elasticsearch_logs_path: /var/log/elasticsearch
Major version built via server version variable
elasticsearch_major_version: "{{ elasticsearch_server_version.split('.')[0] }}"
Represents the maximum size of total heap space
elasticsearch_maximum_heap_space: 1g
elasticsearch_network_host: 0.0.0.0
elasticsearch_network_publish_host:
Let this node work as a data node
elasticsearch_node_data: true
Publish this binding to cluster members
elasticsearch_node_ingest: true
Let this node work as a master node
elasticsearch_node_master: true
Name of the node
elasticsearch_node_name: '{{ ansible_hostname }}'
Version of OpenJDK to install as part of Elasticsearch
elasticsearch_openjdk_version: 11
List of extra plugins to install
elasticsearch_plugins_extra: []
elasticsearch_plugins_extra:
- plugin1
- plugin2
- name: plugin3
state: absent
List of general plugins to install
elasticsearch_plugins_general: []
elasticsearch_plugins_general:
- plugin1
- plugin2
- name: plugin3
state: absent
elasticsearch_restart_on_upgrade: true
elasticsearch_search_max_buckets:
Version of Elasticsearch that gets installed
elasticsearch_server_version: '6.8'
elasticsearch_startup_sleep_time: 5
Path to the storage directory
elasticsearch_storage_path: /var/lib/elasticsearch
Number of seconds to wait before checking if Elasticsearch started successfully
elasticsearch_user: elasticsearch
Maximum number of aggregation buckets allowed in a single response
elasticsearch_xpack_security_enabled: false
elasticsearch
elasticsearch-exporter
- None
Apache-2.0