1. Préparez les packages de fichiers d'installation pertinents
Téléchargez l'adresse Elasticsearch : https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.tar.gz
Téléchargez Kibana :
https://artifacts.elastic.co/downloads/kibana/kibana-5.2.2-linux-x86_64.tar.gz
2. Installez Elasticsearch
1. Décompressez le package d'installation d'Elasticsearch tar -zxvf elasticsearch-5.2.2.tar.gz
2. Exécutez ./elasticsearch dans le dossier décompressé. L'erreur est la suivante
[2017-01-14T18:35:29,164][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:125) ~[elasticsearch-5.1.2.jar:5.1.2]
at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) ~[elasticsearch-5.1.2.jar:5.1.2]
at org.elasticsearch.cli.SettingCommand.execute(SettingCommand.java:54) ~[elasticsearch-5.1.2.jar:5.1.2]
at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) ~[elasticsearch-5.1.2.jar:5.1.2]
at org.elasticsearch.cli.Command.main(Command.java:88) ~[elasticsearch-5.1.2.jar:5.1.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:89) ~[elasticsearch-5.1.2.jar:5.1.2]
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:82) ~[elasticsearch-5.1.2.jar:5.1.2]
Caused by: java.lang.RuntimeException: can not run elasticsearch as root
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:100) ~[elasticsearch-5.1.2.jar:5.1.2]
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:176) ~[elasticsearch-5.1.2.jar:5.1.2]
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:306) ~[elasticsearch-5.1.2.jar:5.1.2]
at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) ~[elasticsearch-5.1.2.jar:5.1.2]
... 6 more
Raison : Elasticsearch doit être démarré en utilisant un compte non root
Solution : créer un compte dédié pour Elasticsearch
1. Créez un groupe d'utilisateurs
groupadd elsearch
2Créer un utilisateur
useradd elsearch -g elsearch -p elasticsearch
3. Remplacez
elasticsearch-5.2.2
l'utilisateur et le groupe appartenant au dossier et aux fichiers internes par elsearch:elsearch
chown -R elsearch:elsearch /data/www/search/es/elasticsearch-5.2.2
Basculer vers l'utilisateur elsearch pour exécuter et démarrer
elasticsearch
arrêt elasticsearch
Modifier le fichier de configuration elasticsearch.yml
nom du cluster : es522
node.name : nœud
réseau.hôte : 192.168.1.1
port http : 9200
Après plusieurs démarrages, elasticsearch ne peut pas être démarré en raison de la limite du nombre de fichiers occupés par chaque thread après le démarrage. L'erreur est signalée comme suit.
ERROR: bootstrap checks failed
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[2017-01-14T18:50:27,955][INFO ][o.e.n.Node ] [node-3] stopping ...
[2017-01-14T18:50:27,965][INFO ][o.e.n.Node ] [node-3] stopped
[2017-01-14T18:50:27,965][INFO ][o.e.n.Node ] [node-3] closing ...
[2017-01-14T18:50:27,977][INFO ][o.e.n.Node ] [node-3] closed
Solution:
Modifier le nombre de fichiers
vi /etc/sysctl.conf
vm.max_map_count=655360
fs.file-max = 6815744
et exécutez la commande :
sysctl -p
Modifier les limites de fichiers et les limites de processus
vi /etc/security/limits.conf
* nofile souple 65536
* fichier nofile dur 131072
* logiciel nproc 2048
* dur nproc 4096
vi /etc/security/limits.d/90-nproc.conf
Modifiez le contenu suivant :
* logiciel nproc 1024
#Changer en
* logiciel nproc 2048
3. Recommencez après avoir modifié les informations de configuration ci-dessus.
Accès à la console sans sortie de message d'erreur
Le message suivant apparaît, indiquant que l'installation d'ES a réussi ;
{ "name" : "node1", "cluster_name" : "es522", "cluster_uuid" : "MnQRBEqvQN-Qz6k84bj3Eg", "version" : { "number" : "5.2.2", "build_hash" : "f9d9b74", "build_date" : "2017-02-24T17:26:45.835Z", "build_snapshot" : false, "lucene_version" : "6.4.1" }, "tagline" : "Vous savez, pour la recherche" }
3. Installez Kibana
1. Décompressez le package d'installation d'Elasticsearch tar -zxvf kibana-5.2.2-linux-x86_64.tar.gz
2. Modifiez le fichier de configuration et ajoutez les trois informations de configuration suivantes
port.serveur : 5601
nom.serveur : "es522"
elasticsearch.url : "http://192.168.1.1:9200"
3. Démarrez Kibana (ajoutez & codez à la fin de la commande pour démarrer en arrière-plan. Si elle n'est pas ajoutée, la fenêtre actuelle démarrera, la fenêtre se fermera et le service s'arrêtera)
/bin/enfant &
Après un démarrage réussi, visitez http://192.168.1.1:5601
Kibana est installé avec succès !