Introduktion till ElasticSearch
Vad är ElasticSearch:
- ElasticSearch är en öppen källkodssökmotor byggd på Apache Lucene
- Skriven i Java erbjuder den ett enkelt och lättanvänt RESTFul API
- Enkel skalning för att stödja petabyte-nivå strukturerad eller ostrukturerad databehandling
Tillämpningsscenarier:
- Massiv dataanalysmotor
- Sökmotor på plats
- Som ett datalager
Dokumentadress:Inloggningen med hyperlänken är synlig.
Distributionsmiljö:
CentOS 7 x64-bitars, Elasticsearch version 6.5.2, JDK 1.8.0.191
1: Installera JDK 1.8.0
ElasticSearch är känslig för versionen av JRE, och fel version gör att ElasticSearch inte fungerar.
2: Ladda ner och kör ElasticSearch 6.5.2
Ladda ner adresssidan:Inloggningen med hyperlänken är synlig.
[root@VM_0_9_centos elasticsearch-6.5.2]# ./bin/elasticsearch OpenJDK 64-bitars server-VM-varning: Om antalet processorer förväntas öka från en, bör du konfigurera antalet parallella GC-trådar på lämpligt sätt med -XX: ParallelGCThreads=N [2018-12-11T15:24:27,847] [VARNING] [o.e.b.ElasticsearchUncaughtExceptionHandler] [okänd] ofångad undantag i tråd [huvud]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root på org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:140) ~[elasticsearch-6.5.2.jar:6.5.2] på org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:127) ~[elasticsearch-6.5.2.jar:6.5.2] på org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.5.2.jar:6.5.2] på org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.5.2.jar:6.5.2] på org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.5.2.jar:6.5.2] på org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:93) ~[elasticsearch-6.5.2.jar:6.5.2] på org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:86) ~[elasticsearch-6.5.2.jar:6.5.2] Orsakad av: java.lang. RuntimeException: kan inte köra elasticsearch som root på org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:103) ~[elasticsearch-6.5.2.jar:6.5.2] på org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:170) ~[elasticsearch-6.5.2.jar:6.5.2] på org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333) ~[elasticsearch-6.5.2.jar:6.5.2] på org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:136) ~[elasticsearch-6.5.2.jar:6.5.2] ... 6 till
Elasticsearch kräver att man inte kan köra med superuser root, så vi kan skapa ett konto casual, och jag måste använda användaren som es
Om det inte finns något fel körs den framgångsrikt
Öppna en ny terminal och få tillgång till den med curl
När man säkerställer att serverporten (9200) är påslagen, startas elasticsearch (ps -ef | grep elasticsearch) kan nås i webbläsaren
[root@VM_0_9_centos lokal]# curl 'http://localhost:9200/?pretty'
{ "namn": "iUSRV4T", "cluster_name" : "elasticsearch", "cluster_uuid" : "WCbka65VTd2TnM8gQvztqg", "version" : { "nummer" : "6.5.2", "build_flavor" : "default", "build_type" : "tar", "build_hash" : "9434 säng", "build_date" : "2018-11-29T23:58:20.891072Z", "build_snapshot" : falskt, "lucene_version" : "7.5.0", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "slogan": "Du vet, för sökning"
}
3: Tillgång till Elasticsearch över Internet
Redigera elasticsearch-konfigurationsfilen
Hitta network.host: en rad, ta bort #-tecknet och ändra det till:
(network.host: [_local_, 172.30.6.1] 172.30.6.1 är den specificerade IP-adressen, som kan vara flera IP-adresser. Inte testad)
Starta om Elasticsearch, och sedan kan du komma åt http://ip:9200-gränssnittet på Internet.
Möjliga fel:
Misstag ett
Max virtuella minnesområden vm.max_map_count [65530] är för lågt, öka till minst [262144] Värdet max_map_count avser de maximala minneskarteområdena som är tillgängliga för en process, vilket används vid anrop av malloc och genereras av mmap/mprotect.
Lösning: Öka storleken på vm.max_map_count:
Misstag två
Maxfildeskriptorer [4096] för elasticsearch-processen är för låg, öka till minst [65536] Lösning
Efter modifieringen, logga in på ES-användaren igen och använd följande kommando för att kontrollera om modifieringen är framgångsrik
Misstag 3
Varning för Java HotSpot(TM) 64-bitars server-VM: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) misslyckades; error='Kan inte allokera minne' (errno=12) Lösning
vidAli saMöjliga problem på
systemanropsfilter kunde inte installeras; Kontrollera loggarna och fixa din konfiguration eller inaktivera systemanropsfilter på egen risk Lösning: Lägg till följande kommando i elasticsearch-konfigurationen
|