Elasticsearch has a large variety of supported installation configurations. It can be installed as a cluster that shares data and allows searches to be split. It can also be installed in a single node configuration. In each configuration, there are a number of knobs that can be tuned to set things, such as the node name, instance name, and so on.
Elasticsearch provides an official Puppet module to manage this installation. This module is one of the new Puppet approved modules. This means the module has good support and is well designed.
In our test case, we'll be accepting most of the defaults for the installation. In fact, we'll essentially be duplicating what we did previously where we collocated the elasticsearch
server with the logstash
host. There will only be a single node in this cluster that holds the data.
In a production situation, you might wish to run multiple nodes in your cluster or, depending on your usage, even multiple clusters. Fortunately, using facts...