Introduksjon til ElasticSearch
Hva er ElasticSearch:
- ElasticSearch er en åpen kildekode-søkemotor bygget på Apache Lucene
- Skrevet i Java, tilbyr det et enkelt og brukervennlig RESTFul API
- Enkel skalering for å støtte petabyte-nivå strukturert eller ustrukturert databehandling
Bruksscenarier:
- Massiv dataanalysemotor
- Søkemotor på stedet
- Som et datalager
Dokumentadresse:Innloggingen med hyperkoblingen er synlig.
Distribusjonsmiljø:
CentOS 7 x64-bit, Elasticsearch versjon 6.5.2, JDK 1.8.0.191
1: Installer JDK 1.8.0
ElasticSearch er sensitiv for versjonen av JRE, og feil versjon vil føre til at ElasticSearch ikke fungerer.
2: Last ned og kjør ElasticSearch 6.5.2
Last ned adressesiden:Innloggingen med hyperkoblingen er synlig.
[root@VM_0_9_centos elasticsearch-6.5.2]# ./bin/elasticsearch Advarsel om OpenJDK 64-Bit Server VM: Hvis antallet prosessorer forventes å øke fra én, bør du konfigurere antall parallelle GC-tråder riktig ved bruk av -XX: ParallelGCThreads=N [2018-12-11T15:24:27,847] [ADVARSEL] [o.e.b.ElasticsearchUncaughtExceptionHandler] [ukjent] ufanget unntak i tråd [hoved]
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] at 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] Forårsaket av: java.lang. RuntimeException: kan ikke kjøre 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 til
Elasticsearch krever at du ikke kan kjøre med superuser root, så vi kan opprette en konto uformelt, og jeg må bruke brukeren som es
Hvis det ikke er noen feil, kjører den vellykket
Åpne en ny terminal og få tilgang til den med curl
I tilfelle hvor man skal sørge for at serverporten (9200) er på, startes elasticsearch (ps -ef | grep elasticsearch) kan nås i nettleseren
[root@VM_0_9_centos lokal]# curl 'http://localhost:9200/?pretty'
{ "navn" : "iUSRV4T", "cluster_name" : "elasticsearch", "cluster_uuid" : "WCbka65VTd2TnM8gQvztqg", "versjon" : { "nummer" : "6.5.2", "build_flavor" : "default", "build_type" : "tar", "build_hash" : "9434 seng", "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" }, "slagord": "Du vet, for søk"
}
3: Få tilgang til Elasticsearch over Internett
Rediger elasticsearch-konfigurasjonsfilen
Finn network.host: en linje, fjern #-tegnet, og endre det til:
(network.host: [_local_, 172.30.6.1] 172.30.6.1 er den angitte IP-adressen, som kan være flere IP-adresser. Ikke testet)
Start Elasticsearch på nytt, så kan du få tilgang til http://ip:9200-grensesnittet på Internett.
Mulige feil:
Feil én
Maks virtuelle minneområder vm.max_map_count [65530] er for lavt, øk til minst [262144] Verdien max_map_count refererer til de maksimale minnekartområdene tilgjengelig for en prosess, som brukes når malloc kalles og genereres av mmap/mprotect.
Løsning: Øk størrelsen på vm.max_map_count:
Feil to
Maks fildeskriptorer [4096] for elasticsearch-prosessen er for lav, øk til minst [65536] Løsning
Etter modifikasjonen, logg inn på ES-brukeren igjen og bruk følgende kommando for å sjekke om endringen er vellykket
Feil 3
Java HotSpot(TM) 64-bits server-VM-advarsel: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) feilet; error='Kan ikke allokere minne' (errno=12) Løsning
påAli saMulige problemer på
systemkallfiltre klarte ikke å installeres; Sjekk loggene og fiks konfigurasjonen din, eller deaktiver systemkallfiltre på eget ansvar Løsning: Legg til følgende kommando i elasticsearch-konfigurasjonen
|