Elasticsearch og Kibana: installation og grundlæggende brug på Ubuntu 16.04

Elasticsearch og Kibana: installation og grundlæggende brug på Ubuntu 16.04

Elasticsearch er en produktions klar søgemaskine skrevet i java og er ekstremt kraftfuld. Den kan bruges som en selvstændig søgemaskine til internettet eller som en søgemaskine til e-handelswebapplikationer.

eBay, Facebook, Netflix er nogle af de virksomheder, der bruger denne platform. Dette er populært, fordi det er mere end blot en søgemaskine. Det er også en kraftig analysemotor og et logs management og retrieval system. Det bedste ved dette er, at det er Open Source, gratis at bruge altid. Kibana er det visualiseringsværktøj, der leveres af elastik.

I denne vejledning vil vi gennemgå installationstrinnene for Elasticsearch efterfulgt af installationen af ​​Kibana, og så bruger vi Kibana til at gemme og hente data.

1 Installation af Java

Da Elasticsearch er skrevet i java, skal den først installeres. Brug kommandoerne nedenfor til at installere open source versioner af jre og jdk:

sudo apt-get install default-jre
sudo apt-get install default-jdk

Disse to kommandoer installerer den nyeste open-jre og open-jdk på dit system. Det er for Java 8. Følgende billeder viser, den output, du ville få, når du ikke har java installeret og køre ovenstående kommandoer.

Installation af Java JRE

Installation af Java JDK

2 Installer Elasticsearch

Elasticsearch 5 er ude for nylig. Det har nogle massive ændringer i forhold til tidligere versioner af 2.x. På tidspunktet for at skrive denne artikel er version5.2.2 den nyeste udgivelse, og vi vil installere det. Så følg nedenstående trin for at installere.

mkdir elasticsearch; cd elasticsearch
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.2.deb

Med dette skal .deb filen begynde at downloade. Det ligner billedet nedenfor:

Download Elasticsearch

Når downloadet er gennemført, kan vi installere det ved at køre følgende kommando. Udgangen af ​​en vellykket installation er nedenfor.

sudo dpkg -i elasticsearch-5.2.2.deb

Installer Elasticsearch

3 Konfigurer og Kør Elasticsearch

Elasticsearch kører som en baggrundsproces. Men før vi starter det, skal vi redigere config-filen for at tilføje det nuværende system, da værten kører motoren. brug følgende kommando for at åbne config filen:

sudo gedit /etc/elasticsearch/elasticsearch.yml

Når editoren åbner, skal du ikke kommentere linjen:

# network.host: 192.168.0.1

og derefter skift IP til localhost som vist på billedet nedenfor:

Nu er vi klar til at køre processen. Brug følgende kommandoer:

sudo systemctl daemon-reload

sudo systemctl aktivere elasticsearch

sudo systemctl genstart elasticsearch

Disse tre kommandoer tilføjer Elasticsearch-processen til systemdemoen, så den automatisk starter, når dit system starter op og derefter genstarter processen selv. For at teste om systemet er i gang, skal du bruge følgende kommando. Udgangen skal svare til billedet vist nedenfor.

curl -XGET "http: // localhost: 9200"

Test Elasticsearch

4 Installer Kibana

Download og installer deb-filen ved hjælp af følgende kommandoer:

wget https://artifacts.elastic.co/downloads/kibana/kibana-5.2.2-amd64.deb

sudo dpkg -i kibana-5.2.2-amd64.deb

mens du kører den anden kommando, hvis den spørger dig om at ændre den eksisterende Kibana config-fil, kan du trykke på enter for at holde defaults og afslutte konkurrencen. Når den er blevet installeret, vil den se ud som på billedet nedenfor.

Installer Kibana

5 Konfigurer og kør Kibana

i Kibana konfigurationsfilen, kommenterer ikke følgende linjer:

server.port: server.host: server.name: elasticsearch.name: kibana.index:

Brug følgende kommando for at åbne konfigurationsfilen. Filen, efter du har foretaget ændringerne, skal se ud som billedet nedenfor:

sudo gedit /etc/kibana/kibana.yml

"Server.name" kan være noget, så føl dig fri til at ændre det. Når disse ændringer er foretaget, skal du gemme og lukke filen. Det sidste, der skal gøres, er at tilføje Kibana-processen til systemprocessen, så den starter automatisk hver gang systemet starter op. Kør følgende kommandoer:

sudo systemctl daemon-reload

sudo systemctl enable kibana

sudo systemctl start kibana

Når disse kommandoer køres, kan du åbne din webbrowser og bruge følgende URL til at teste om den er installeret og køre korrekt. Billedet nedenfor viser, hvordan det skal se ud:

http://localhost:5601

Kibana Status

Det er det. Du har nu installeret Kibana og Elasticsearch.

6 Basic Usage

Vi kan bruge værktøjet "Dev Tools" fra Kibana til at tale med Elasticsearch. Det giver en ren og enkel grænseflade til at udføre kommandoerne som JSON objekter. Vi vil interagere med kernemotoren via en REST-grænseflade.

Gå til "Dev Tools" ved at klikke på ikon på venstre panel. Du kan også bruge følgende webadresse:

http://localhost:5601/app/kibana#/dev_tools/

Når det er ladet, får du en introduktion til "Velkommen til konsol" til brugergrænsefladen. Du kan læse det eller bare klikke på "Kom igang med at arbejde"Button nederst på den intro. Når du har klikket på den knap, vil brugergrænsefladen se ud som billedet nedenfor:

Kibana brug

På venstre side er der hvor vi skriver kommandoerne og højre sidepanel er hvor vi får output. Lad os prøve at sende og gemme nogle data til søgemaskinen.

6.1 Opret et indeks

data gemmes inden for indekserne eller en anden måde at sige det ville være, indekser opretholder de data, der er blevet gemt i søgemaskinen. For at oprette et indeks bruger vi PUT-opkaldet. Forespørgslen JSON vil indeholde navnet på indekset og nogle valgfrie indstillinger, som vi kan levere. Følgende kommando er et eksempel for at oprette et indeks kaldet "studerende".

PUT studerende {"settings": {"number_of_shards": 3}}

Du kan skrive dette på "Dev Tools" og trykke på den grønne afspilningsknap ud for at køre den. Udgangen svarer til billedet nedenfor:

Opret indeks i Kibana

6.2 Indsæt nogle data til indeks

Vi bruger POST-opkald til at indsætte data til indeks. De data, der skal indsættes, er i form af JSON, og så lad os gå videre med at tilføje elever til indekset. Kommandoen er:

POST studerende / kursus {"navn": "james", "kursus": "matematik"}

I ovenstående kommando angiver "kursus" typen af ​​data, der bliver indekseret. Fra svaret kan du se, at denne post også har et unikt id. I kommandoen nedenfor kan du se, at der er en anden parameter efter "kursus", sådan kan du angive, hvad der er id for denne elevpost. På denne måde vil elasticsearch ikke genere at oprette et ID-køb, brug dette som ID for denne post.

POST-studerende / kursus / 2 {"navn": "tina", "kursus": "fysik"}

Følgende er de billeder, der viser svaret fra søgemaskinen, når begge kommandoer køres:

Elasticsearch Response

Kibana Console

6.3 Hent data fra indeks

Du kan også hente data være forskellige felter fra den lagrede post eller post. Hver post, vi lagrede i det foregående trin, hedder et dokument i Elasticsearch. Vi bruger GET-opkaldet til at hente dokumenter fra indekset. Sådan kan du hente et dokument ved hjælp af feltet "navn":

GET studerende / kursus / _search {"forespørgsel": {"term": {"navn": {"værdi": "james"}}}}

Denne kommando søger i "studerende"Indeks for dokumenter af typen"kursus"Og forsøger at matche et udtryk med feltnavn"navn"Som har værdien"James”. Da der er en elev ved navn James i indekset, får vi et svar som vist på billedet nedenfor:

Query Elasticsearch Index

Disse var bare grundlæggende, der er masser af ting, der kan gøres med Elasticsearch, og masser af efterforskning er påkrævet for at beherske denne ramme og bruge den til det bedste af sin evne.

Kilde

Giv en kommentar

Dette websted bruger Akismet til at reducere spam. Lær, hvordan dine kommentardata behandles.