elasticsearch – Installation rapide

elasticsearch_logo_home
Cet article décrit une installation simple et rapide d’un serveur elasticsearch ou plusieurs qui forment un cluster.

Le seul pré-requis est de disposer d’une JVM Oracle ou OpenJDK de version 1.7u55 ou > ou 1.8u20 ou >

La distribution est disponible à partir de cette adresse: http://www.elasticsearch.org/overview/elkdownloads/

Installation de elasticsearch

Désarchiver la distribution dans le répertoire /opt

cd /opt
sudo unzip elasticsearch-x.x.x.zip
sudo ln -s elasticsearch-x.x.x elasticsearch

Le lien symbolique permet de travailler dans un répertoire indépendant du numéro de version et donc de faciliter les mises à jours futures.

A ce stade les répertoires suivants sont visibles dans le répertoire /opt/elasticsearch

bin contient les scripts de démarrage et d’arrêt
config contient les fichiers de configuration
lib contient les librairies java nécessaire au fonctionnement

Démarrage de elasticsearch

Le démarrage de elasticsearch est très simple

cd /opt/elasticsearch
./bin/elasticsearch -d

où l'option -d permet démarrer le processus en tache de fond

Suite au démarrage, les répertoires suivants sont créés

data contient les index (shard ou réplicas de collection)
log contient les logs

L’arrêt du processus elasticsearch se fait avec la commande suivante

curl -XPOST 'http://localhost:9200/_cluster/nodes/_local/_shutdown'

Configuration minimale

Lors du démarrage du démon vous avez démarré un cluster de un noeud. En suivant la même procédure sur d’autres serveurs, les autres noeuds se joignent au cluster. Par défaut, les noeud se joigne a un cluster nommé « elasticsearch ». Il est possible de créer des clusters indépendants. Pour cela, il faut attribuer affecter chaque noeud à un cluster par le nom de ce dernier en modifiant le fichier config/elasticsearch.yml

cluster.name: cluster1

De même chaque noeud se voit attribué d’un nom automatiquement qu’il est possible de forcer en modifiant à nouveau le fichier config/elasticsearch.yml

node.name: "dark vador"

Il est possible de vérifier le bon fonctionnement en accédant à l’URL http://localhost:9200/

Le statut du cluster est retourné

{
  "status" : 200,
  "name" : "dark vador",
  "cluster_name" : "cluster1",
  "version" : {
    "number" : "1.4.2",
    "build_hash" : "927caff6f05403e936c20bf4529f144f0c89fd8c",
    "build_timestamp" : "2014-12-16T14:11:12Z",
    "build_snapshot" : false,
    "lucene_version" : "4.10.2"
  },
  "tagline" : "You Know, for Search"
}