Pré-requis :

Il faut tout d'abord avoir 2 machines avec Elasticsearch d'installé. Nous partirons du principe ou votre installation est faite avec le billet suivant.
Il y a 2 modes pour faire un cluster Elasticsearch : le multicast et l'unicast, nous prendrons l'unicast dans cet exemple.

Le node1 aura l'adresse 192.168.5.40 et le node2 192.168.5.23.

Configuration Elasticsearch

Fichier /etc/elasticsearch/elasticsearch.yml

cluster.name: elasticsearch
node.name: "node1"
node.master: true
node.data: true
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["192.168.5.23"]
cluster.name: elasticsearch
node.name: "node2"
node.master: false
node.data: true
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["192.168.5.40"]

On redémarre le service elasticsearch sur chaque node :

service elasticsearch restart

Vérification sur chaque node:

{
  "cluster_name" : "elasticsearch",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 2,
  "number_of_data_nodes" : 2,
  "active_primary_shards" : 26,
  "active_shards" : 52,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0
}
{
  "_shards": {
    "total": 52,
    "successful": 52,
    "failed": 0
  },
  "_all": {
    "primaries": {},
    "total": {}
  },
  "indices": {
    "logstash-2014.09.28": {
      "primaries": {},
      "total": {}
    },
    "logstash-2014.09.10": {
      "primaries": {},
      "total": {}
    },
    "logstash-2014.09.08": {
      "primaries": {},
      "total": {}
    },
    "nodes_stats": {
      "primaries": {},
      "total": {}
    },
    "kibana-int": {
      "primaries": {},
      "total": {}
    },
    "logstash-2014.10.12": {
      "primaries": {},
      "total": {}
    }
  }
}

Voila comment monter un cluster elasticsearch rapidement, bien sur il est possible de tuner certains paramétres d'elasticsearch