Ansible Role: Elasticsearch
An Ansible Role that installs Elasticsearch on RedHat/CentOS or Debian/Ubuntu.
Requires at least Java 8. You can use the
geerlingguy.java to easilly install Java.
Available variables are listed below, along with default values (see
The major version to use when installing Elasticsearch.
elasticsearch package state; set to
latest to upgrade or change versions.
elasticsearch_service_state: started elasticsearch_service_enabled: true
Controls the Elasticsearch service options.
Network host to listen for incoming connections on. By default we only listen on the localhost interface. Change this to the IP address to listen on a specific interface, or
"0.0.0.0" to listen on all interfaces.
When listening on multiple interfaces, if you're setting up a single Elasticsearch server (not a cluster), you should also add
discovery.type: single-node to
The port to listen for HTTP connections on.
The minimum jvm heap size.
The maximum jvm heap size.
A placeholder for arbitrary configuration options not exposed by the role. This will be appended as-is to the end of the
elasticsearch.yml file, as long as your variable preserves formatting with a
|. For example:
elasticsearch_extra_options: | # Dont forget the pipe! some.option: true another.option: false
- hosts: search roles: - geerlingguy.java - geerlingguy.elasticsearch
MIT / BSD