Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
wiki:ajouter.un.serveur.elasticsearch [2018/04/23 17:13]
127.0.0.1 modification externe
wiki:ajouter.un.serveur.elasticsearch [2018/04/23 17:35] (Version actuelle)
root
Ligne 1: Ligne 1:
 +====== Installation ======
  
-=== Installation === +Pour installer un serveur Elasticsearch,​ il est nécessaire de rajouter les dépôts fournis par l'​editeur:<​code bash>
- +
-Pour installer un serveur Elasticsearch,​ il est nécessaire de rajouter les dépôts fournis par l'​editeur:<​syntaxhighlight lang="​shell"​>+
 wget -qO - https://​artifacts.elastic.co/​GPG-KEY-Elasticsearch | apt-key add - wget -qO - https://​artifacts.elastic.co/​GPG-KEY-Elasticsearch | apt-key add -
 apt-get install apt-transport-https apt-get install apt-transport-https
Ligne 9: Ligne 8:
 aptitude install vim openjdk-8-jdk openjdk-8-jre aptitude install vim openjdk-8-jdk openjdk-8-jre
 aptitude install Elasticsearch aptitude install Elasticsearch
-</syntaxhighlight>+</code>
  
-== Configuration == +====== Configuration ​====== 
-=== Standard ===+===== Standard ​=====
  
-La configuration du Elasticsearch se fait dans le fichier ​'''​/​etc/​Elasticsearch/​Elasticsearch.yml'''​.+La configuration du Elasticsearch se fait dans le fichier ​**/​etc/​Elasticsearch/​Elasticsearch.yml**.
  
 Dans ce fichier on va configurer plusieurs éléments: Dans ce fichier on va configurer plusieurs éléments:
  
-*les paramètres du cluster (nom, nodes, nombre minimal de masters nodes) +  ​Les paramètres du cluster (nom, nodes, nombre minimal de masters nodes) 
-*le nom du node +  Le nom du node 
-*les répertoires de stockage des données et des logs +  Les répertoires de stockage des données et des logs 
-*l'​adresse d'​écoute+  L'​adresse d'​écoute
  
 Le fichier se résume à ça: Le fichier se résume à ça:
  
-<syntaxhighlight lang="​shell"​>+<file yaml /​etc/​elasticsearch/​elasticsearch.yaml>
 cluster.name:​ CIS-ELK-Cluster cluster.name:​ CIS-ELK-Cluster
 node.name: CIS-ELK-Elasticsearch01 node.name: CIS-ELK-Elasticsearch01
Ligne 33: Ligne 32:
 discovery.zen.ping.unicast.hosts:​ ["​10.40.30.103",​ "​10.40.30.104",​ "​10.40.30.105"​] discovery.zen.ping.unicast.hosts:​ ["​10.40.30.103",​ "​10.40.30.104",​ "​10.40.30.105"​]
 discovery.zen.minimum_master_nodes:​ 2 discovery.zen.minimum_master_nodes:​ 2
-</syntaxhighlight>+</file>
  
-On a changé le chemin du répertoire ou seront stockées les données pour '''​/​Data/​Elasticsearch'''​, ce répertoire doit être accessible en lecture et écriture par l'​utilisateur Elasticsearch+On a changé le chemin du répertoire ou seront stockées les données pour **/​Data/​Elasticsearch**, ce répertoire doit être accessible en lecture et écriture par l'​utilisateur Elasticsearch
  
-<syntaxhighlight lang="​shell"​>+<code bash>
 chown -R Elasticsearch:​Elasticsearch /Data chown -R Elasticsearch:​Elasticsearch /Data
-</syntaxhighlight>+</code>
  
 On active Elasticsearch au démarrage et on le redémarre pour prendre en compte les nouveaux paramètres:​ On active Elasticsearch au démarrage et on le redémarre pour prendre en compte les nouveaux paramètres:​
  
-<syntaxhighlight lang="​shell"​>+<code bash>
 systemctl enable Elasticsearch.service systemctl enable Elasticsearch.service
 service Elasticsearch restart service Elasticsearch restart
-</syntaxhighlight>+</code>
  
 On peut voir l'​état du cluster avec la commande suivante: On peut voir l'​état du cluster avec la commande suivante:
  
-<syntaxhighlight lang="​json"​>+<code javascript>
 curl -XGET '​10.40.30.103:​9200/​_cluster/​health?​pretty'​ curl -XGET '​10.40.30.103:​9200/​_cluster/​health?​pretty'​
 { {
Ligne 69: Ligne 68:
   "​active_shards_percent_as_number"​ : 100.0   "​active_shards_percent_as_number"​ : 100.0
 } }
-</syntaxhighlight>+</code>
  
-=== Avancée ===+===== Avancée ​=====
  
 Dès lors que Elasticsearch est utilisé en environnement de production, il devient nécessaire de prendre en compte certains éléments supplémentaires lors de la configuration,​ il s’agit principalement de configurations système permettant d’avoir de meilleures performances et une plus grande fiabilité. ​ Dès lors que Elasticsearch est utilisé en environnement de production, il devient nécessaire de prendre en compte certains éléments supplémentaires lors de la configuration,​ il s’agit principalement de configurations système permettant d’avoir de meilleures performances et une plus grande fiabilité. ​
  
  
-Parmi les recommandation,​ on a la désactivation de la swap. Pour cela, on va modifier le fichier ​'''​/​etc/​sysctl.conf''' ​afin d'y rajouter la ligne suivante:+Parmi les recommandation,​ on a la désactivation de la swap. Pour cela, on va modifier le fichier ​**/​etc/​sysctl.conf** afin d'y rajouter la ligne suivante:
  
-<syntaxhighlight lang="​shell"​>+<code bash>
 echo "​vm.swapiness = 1" >> /​etc/​sysctl.conf echo "​vm.swapiness = 1" >> /​etc/​sysctl.conf
-</syntaxhighlight>+</code>
  
 Cette option va réduire la tendance du kernel à utiliser la swap, et le fera qu’en cas de nécessité absolue. ​ Cette option va réduire la tendance du kernel à utiliser la swap, et le fera qu’en cas de nécessité absolue. ​
Ligne 86: Ligne 85:
 Elasticsearch utilise un grand nombre de files descriptors,​ le fait de ne plus en avoir de disponible peut entrainer une perte de données, on va donc avec la commande suivante, augmenter le nombre de files descriptors utilisables jusqu'​a 65536 Elasticsearch utilise un grand nombre de files descriptors,​ le fait de ne plus en avoir de disponible peut entrainer une perte de données, on va donc avec la commande suivante, augmenter le nombre de files descriptors utilisables jusqu'​a 65536
  
-<syntaxhighlight lang="​shell"​>+<code bash>
 echo "​Elasticsearch - nofile 65536" >> /​etc/​security/​limits.conf echo "​Elasticsearch - nofile 65536" >> /​etc/​security/​limits.conf
-</syntaxhighlight>+</code>
  
 Pour différentes applications,​ Elasticsearch utilise un certain nombre de processus, il est important qu’il puisse en créer dès qu’il en a besoin, le nombre minimal de processus qu’il doit être en mesure de créer est de 4096. Ceci peut être fait avec la commande Pour différentes applications,​ Elasticsearch utilise un certain nombre de processus, il est important qu’il puisse en créer dès qu’il en a besoin, le nombre minimal de processus qu’il doit être en mesure de créer est de 4096. Ceci peut être fait avec la commande
  
-<syntaxhighlight lang="​shell"​>+<code bash>
 echo "​Elasticsearch - nproc 4096" >> /​etc/​security/​limits.conf echo "​Elasticsearch - nproc 4096" >> /​etc/​security/​limits.conf
-</syntaxhighlight>+</code>
  
 Par défaut, la taille du tas (heap) de la JVM est définie à 1 Go. Pour un environnement de production, il est recommandé d’augmenter cette taille, il y a pour autant des règles à respecter : Par défaut, la taille du tas (heap) de la JVM est définie à 1 Go. Pour un environnement de production, il est recommandé d’augmenter cette taille, il y a pour autant des règles à respecter :
Ligne 102: Ligne 101:
 *Ne pas dépasser 32 Go *Ne pas dépasser 32 Go
  
-Pour cela, il faut ajouter ou modifier les lignes (Xms et Xmx) dans le fichier ​'''​/​etc/​Elasticsearch/​jvm.options'''​. Ici la taille du tas est définie à 4Go :+Pour cela, il faut ajouter ou modifier les lignes (Xms et Xmx) dans le fichier ​**/​etc/​Elasticsearch/​jvm.options**. Ici la taille du tas est définie à 4Go :
  
-<syntaxhighlight lang="​sh"​>+ 
 +<code bash>
 SIZE=4;sed -i "/​^-Xm.*g/​ s/​[0-9]\{1,​\}/​$SIZE/​g"​ /​etc/​elasticsearch/​jvm.options SIZE=4;sed -i "/​^-Xm.*g/​ s/​[0-9]\{1,​\}/​$SIZE/​g"​ /​etc/​elasticsearch/​jvm.options
-</syntaxhighlight>+</code> 
  
wiki/ajouter.un.serveur.elasticsearch.txt · Dernière modification: 2018/04/23 17:35 par root
CC0 1.0 Universal
Powered by PHP Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 Valid HTML5