Introduction à ElasticSearch
Qu’est-ce qu’ElasticSearch :
- ElasticSearch est un moteur de recherche open source construit sur Apache Lucene
- Écrit en Java, il fournit une API RESTFul simple et facile à utiliser
- Scale facile pour supporter le traitement de données structurées ou non structurées au niveau pétaoctets
Scénarios d’application :
- Moteur d’analyse massive de données
- Moteur de recherche sur site
- En tant qu’entrepôt de données
Adresse du document :La connexion hyperlientérée est visible.
Environnement de déploiement :
CentOS 7 x64 bits, Elasticsearch version 6.5.2, JDK 1.8.0.191
1 : Installer JDK 1.8.0
ElasticSearch est sensible à la version du JRE, et une mauvaise version empêchera ElasticSearch de fonctionner.
2 : Télécharger et lancer ElasticSearch 6.5.2
Téléchargez la page d’adresse :La connexion hyperlientérée est visible.
[root@VM_0_9_centos elasticsearch-6.5.2]# ./bin/elasticsearch Avertissement de VM serveur OpenJDK 64-bit : Si le nombre de processeurs devrait augmenter à partir d’un, vous devez configurer correctement le nombre de threads GC parallèles en utilisant -XX : ParallelGCThreads=N [2018-12-11T15:24:27,847] [AVERTISSEMENT] [o.e.b.ElasticsearchUnaughtExceptionHandler] [inconnu] exception non détectée dans le thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root sur org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java :140) ~[elasticsearch-6.5.2.jar :6.5.2] sur org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java :127) ~[elasticsearch-6.5.2.jar :6.5.2] sur org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java :86) ~[elasticsearch-6.5.2.jar :6.5.2] sur org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java :124) ~[elasticsearch-cli-6.5.2.jar :6.5.2] sur org.elasticsearch.cli.Command.main(Command.java :90) ~[elasticsearch-cli-6.5.2.jar :6.5.2] sur org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java :93) ~[elasticsearch-6.5.2.jar :6.5.2] sur org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java :86) ~[elasticsearch-6.5.2.jar :6.5.2] Causé par : java.lang.RuntimeException : impossible d’exécuter elasticsearch en tant que racine sur org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java :103) ~[elasticsearch-6.5.2.jar :6.5.2] sur org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java :170) ~[elasticsearch-6.5.2.jar :6.5.2] sur org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java :333) ~[elasticsearch-6.5.2.jar :6.5.2] sur org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java :136) ~[elasticsearch-6.5.2.jar :6.5.2] ... 6 de plus
Elasticsearch exige que vous ne puissiez pas utiliser le root superutilisateur, donc nous pouvons créer un compte de manière informelle, et je dois utiliser l’utilisateur comme es
S’il n’y a pas d’erreur, il s’exécute avec succès
Ouvrez un nouveau terminal et accétrez-y avec Curl
Dans le cas où il s’agit de s’assurer que le port serveur (9200) est activé, elasticsearch est lancé (ps -ef | grep elasticsearch) peut être consulté dans le navigateur
[root@VM_0_9_centos local]# boucle 'http://localhost:9200/?pretty'
{ « nom » : « iUSRV4T », « cluster_name » : « elasticsearch », « cluster_uuid » : « WCbka65VTd2TnM8gQvztqg « , « version » : { « numéro » : « 6.5.2 », « build_flavor » : « par défaut », « build_type » : « goudron », « build_hash » : « 9434bed », « build_date » : « 2018-11-29T23:58:20.891072Z », « build_snapshot » : faux, « lucene_version » : « 7.5.0 », « minimum_wire_compatibility_version » : « 5.6.0 », « minimum_index_compatibility_version » : « 5.0.0 » }, « slogan » : « Vous savez, pour la recherche »
}
3 : Accéder à Elasticsearch via Internet
Modifier le fichier de configuration elasticsearch
Trouver network.host : une ligne, retirer le signe #, et le changer en :
(network.host : [_local_, 172.30.6.1] 172.30.6.1 est l’adresse IP spécifiée, qui peut correspondre à plusieurs adresses IP. Non testé)
Redémarrez Elasticsearch, et vous pourrez alors accéder à l’interface http://ip:9200 sur Internet.
Erreurs possibles :
Erreur numéro un
Les zones de mémoire virtuelle maximale vm.max_map_count [65530] sont trop faibles, augmentez à au moins [262144] La valeur de max_map_count fait référence aux zones maximales de carte mémoire disponibles pour un processus, utilisées lors de l’appel de malloc et générées par mmap/mprotect.
Solution de contournement : Augmenter la taille du nombre de vm.max_map_counts :
Erreur numéro deux
Les descripteurs de fichiers max [4096] pour le processus ElasticSearch sont trop faibles, augmenter à au moins [65536] Solution
Après la modification, reconnectez-vous à l’utilisateur ES et utilisez la commande suivante pour vérifier si la modification est réussie
Erreur 3
Avertissement de VM serveur Java HotSpot(TM) 64-bit : INFO : os ::commit_memory(0x0000000085330000, 2060255232, 0) échoué ; error='Impossible d’allouer mémoire' (errno=12) Solution
àdit AliProblèmes possibles sur le
les filtres d’appel système ne se sont pas installés ; Vérifiez les journaux et corrigez votre configuration ou désactivez les filtres d’appels système à vos risques et périls Solution : Ajouter la commande suivante à la configuration elasticsearch
|