ELK Stack Tutorial: Hvad er Kibana, Logstash & Elasticsearch?

Hvad er ELK Stack?

ELK stak er en samling af tre open source-produkter โ€” Elasticsearch, Logstashog Kibana. ELK stack giver centraliseret logning for at identificere problemer med servere eller applikationer. Det giver dig mulighed for at sรธge i alle logfiler pรฅ et enkelt sted. Det hjรฆlper ogsรฅ med at finde problemer pรฅ flere servere ved at forbinde logfiler inden for en bestemt tidsramme.

  • E stรฅr for ElasticSearch: bruges til at opbevare logfiler
  • L stรฅr for LogStash : bruges til bรฅde forsendelse samt behandling og opbevaring af logs
  • K stรฅr for Kibana: er en visualiseringsvรฆrktรธj (en webgrรฆnseflade), som hostes gennem Nginx eller Apache

ElasticSearch, LogStash og Kibana er alle udviklet, administreret og vedligeholdt af firmaet Elastic.

ELK Stack er designet til at give brugere mulighed for at tage data fra enhver kilde, i ethvert format, og til at sรธge, analysere og visualisere disse data i realtid.

ELK stak Architecture

Nu i denne ELK stack tutorial vil vi lรฆre om ELK arkitektur:

Her er den enkle arkitektur af ELK stack

ELK stak Architecture
ELK stak Architecture
  • Logs: Serverlogfiler, der skal analyseres, identificeres
  • Logstash: Indsaml logfiler og hรฆndelsesdata. Den analyserer og transformerer endda data
  • ElasticSearch: De transformerede data fra Logstash is Gem, sรธg og indekseret.
  • Kibana: Kibana bruger Elasticsearch DB til at udforske, visualisere og dele

Der er dog behov for en komponent mere eller dataindsamling kaldet Beats. Dette fik Elastic til at omdรธbe ELK til Elastic Stack.

ELK stak Architecture med Beats

Mens du beskรฆftiger dig med meget store mรฆngder data, kan du have brug for Kafka, RabbitMQ til buffering og modstandsdygtighed. Af sikkerhedsmรฆssige รฅrsager kan nginx bruges.

ELK stak Architecture

Nu i denne Elastic stack tutorial, Lad os dykke i dybden med alle disse open source-produkter:

Hvad er Elasticsearch?

Elasticsearch er en NoSQL database. Den er baseret pรฅ Lucene-sรธgemaskinen, og den er bygget med RESTful APIS. Det tilbyder enkel implementering, maksimal pรฅlidelighed og nem administration. Det tilbyder ogsรฅ avancerede forespรธrgsler til at udfรธre detaljeanalyse og gemmer alle data centralt. Det er nyttigt til at udfรธre en hurtig sรธgning i dokumenterne.

Elasticsearch giver dig ogsรฅ mulighed for at gemme, sรธge og analysere store mรฆngder data. Det bruges mest som den underliggende motor til at drive applikationer, der opfyldte sรธgekrav. Det er blevet vedtaget i sรธgemaskineplatforme til moderne web- og mobilapplikationer. Udover en hurtig sรธgning tilbyder vรฆrktรธjet ogsรฅ komplekse analyser og mange avancerede funktioner.

Funktioner i Elastisk sรธgning

  • Open source sรธgeserver er skrevet vha Java
  • Bruges til at indeksere enhver form for heterogen data
  • Har REST API web-interface med JSON output
  • Fuld tekstsรธgning
  • Sรธgning nรฆr realtid (NRT).
  • Delt, replikeret sรธgbar, JSON-dokumentbutik
  • Skemafri, REST & JSON baseret distribueret dokumentlager
  • Multi-sprog & Geolocation support

Fordele ved Elasticsearch

  • Gem data uden skema og opretter ogsรฅ et skema til dine data
  • Manipuler din datapost for post ved hjรฆlp af Multi-document API'er
  • Udfรธr filtrering og forespรธrgsel efter dine data for at fรฅ indsigt
  • Baseret pรฅ Apache Lucene og giver RESTful API
  • Giver horisontal skalerbarhed, pรฅlidelighed og multitenant-kapacitet til brug i realtid af indeksering for at gรธre det hurtigere sรธgning
  • Hjรฆlper dig med at skalere lodret og vandret

Vigtige termer brugt i Elastic Search

Lad os nu i denne ELK-tutorial lรฆre om nรธgleudtryk, der bruges i ElasticSearch:

Semester Brug
Cluster En klynge er en samling af noder, som tilsammen rummer data og giver mulighed for kombineret indeksering og sรธgefunktion.
Node En node er en elasticsearch-instans. Det oprettes, nรฅr en elasticsearch-forekomst begynder.
Indeks Et indeks er en samling af dokumenter, som har lignende karakteristika. fx kundedata, produktkatalog. Det er meget nyttigt, mens du udfรธrer indeksering, sรธgning, opdatering og sletning. Det giver dig mulighed for at definere sรฅ mange indekser i en enkelt klynge.
Dokument Det er den grundlรฆggende informationsenhed, som kan indekseres. Det er udtrykt i JSON (nรธgle: vรฆrdi) par. '{"bruger": "nullcon"}'. Hvert enkelt dokument er forbundet med en type og et unikt id.
shard Hvert indeks kan opdeles i flere shards for at kunne distribuere data. Skarven er den atomare del af et indeks, som kan fordeles over klyngen, hvis du vil tilfรธje flere noder.

Hvad er Logstash?

Logstash er pipelinevรฆrktรธjet til dataindsamling. Den indsamler datainput og feeds til Elasticsearch. Den samler alle typer data fra de forskellige kilder og gรธr dem tilgรฆngelige til videre brug.

Logstash kan forene data fra forskellige kilder og normalisere dataene til dine รธnskede destinationer. Det giver dig mulighed for at rense og demokratisere alle dine data til analyser og visualisering af use cases.

Den bestรฅr af tre komponenter:

  • Input: videregivelse af logfiler for at behandle dem til maskinforstรฅeligt format
  • Filtre: Det er et sรฆt betingelser for at udfรธre en bestemt handling eller begivenhed
  • Produktion: Beslutningstager for behandlet hรฆndelse eller log

Funktioner af Logstash

Lad os nu i denne LogStash-vejledning lรฆre om funktionerne i LogStash:

  • Hรฆndelser fรธres gennem hver fase ved hjรฆlp af interne kรธer
  • Tillader forskellige input til dine logfiler
  • Filtrering/parsing af dine logfiler

udnyttelse af Logstash

  • Tilbud centraliserer databehandlingen
  • Den analyserer en lang rรฆkke strukturerede/ustrukturerede data og begivenheder
  • ELK LogStash tilbyder plugins til at forbinde med forskellige typer inputkilder og platforme

Hvad er Kibana?

Kibana er en datavisualisering, som fuldender ELK-stakken. Dette vรฆrktรธj bruges til at visualisere Elasticsearch-dokumenterne og hjรฆlper udviklere med at fรฅ et hurtigt indblik i det. Kibana dashboard tilbyder forskellige interaktive diagrammer, geospatiale data og grafer til at visualisere komplekse quires.

Det kan bruges til at sรธge, se og interagere med data, der er gemt i Elasticsearch-mapper. Kibana hjรฆlper dig med at prรฆstere avanceret dataanalyse og visualiser dine data i en rรฆkke forskellige tabeller, diagrammer og kort.

I Kibana er der forskellige metoder til at udfรธre sรธgninger pรฅ dine data.

Her er de mest almindelige sรธgetyper:

Sรธgetype Brug
Fritekstsรธgninger Det bruges til at sรธge efter en bestemt streng
Sรธgninger pรฅ feltniveau Det bruges til at sรธge efter en streng inden for et bestemt felt
Logiske udsagn Det bruges til at kombinere sรธgninger til et logisk udsagn.
Nรฆrhedssรธgninger Det bruges til at sรธge efter termer inden for specifik karakter nรฆrhed.

Lad os nu i denne Kibana-tutorial lรฆre om vigtige funktioner i Kibana:

Funktioner af Kinbana:

  • Kraftfuld front-end dashboard, der er i stand til at visualisere indekseret information fra den elastiske klynge
  • Muliggรธr sรธgning i realtid af indekseret information
  • Du kan sรธge, se og interagere med data, der er gemt i Elasticsearch
  • Udfรธr forespรธrgsler pรฅ data og visualiser resultater i diagrammer, tabeller og kort
  • Konfigurerbart dashboard til at opdele og opdele logstash-logfiler i elasticsearch
  • I stand til at levere historiske data i form af grafer, diagrammer osv.
  • Dashboards i realtid, som nemt kan konfigureres
  • Kibana ElasticSearch muliggรธr sรธgning i realtid af indekseret information

Fordele og ulemper ved Kinbana

  • Nem visualisering
  • Fuldt integreret med Elasticsearch
  • Visualiseringsvรฆrktรธj
  • Tilbyder realtidsanalyse, kortlรฆgning, opsummering og fejlfinding
  • Giver instinktiv og brugervenlig grรฆnseflade
  • Tillader deling af snapshots af de logfiler, der er sรธgt igennem
  • Tillader at gemme dashboardet og administrere flere dashboards

Hvorfor loganalyse?

I skybaserede miljรธinfrastrukturer er ydeevne og isolation meget vigtig. Ydeevnen af โ€‹โ€‹virtuelle maskiner i skyen kan variere baseret pรฅ de specifikke belastninger, miljรธer og antallet af aktive brugere i systemet. Derfor kan pรฅlidelighed og knudefejl blive et vรฆsentligt problem.

Log management platform kan overvรฅge alle ovennรฆvnte problemer samt behandle operativsystemlogfiler, NGINX, IIS serverlog til webtrafikanalyse, applikationslogfiler og logfiler pรฅ AWS (Amazon webservices).

Logstyring hjรฆlper DevOps-ingeniรธrer, systemadministratorer med at trรฆffe bedre forretningsbeslutninger. Derfor er loganalyse via Elastic Stack eller lignende vรฆrktรธjer vigtig.

ELK vs. Splunk

Elk splunk
Elk er open source-vรฆrktรธj Splunk er et kommercielt vรฆrktรธj.
Elk stack tilbyder ikke Solaris Bรฆrbarhed pรฅ grund af Kibana. Splunk tilbyder Solaris Bรฆrbarhed.
Behandlingshastigheden er strengt begrรฆnset. Tilbyder prรฆcise og hurtige processer.
ELK er en teknologistak skabt med kombinationen Elastic Search-Logstash- Kibana. Splunk er et proprietรฆrt vรฆrktรธj. Det giver bรฅde on-premise og cloud-lรธsninger.
I ELK-sรธgning vil Analyse & Visualisering kun vรฆre mulig, efter at ELK-stakken er sat op. Splunk er en komplet datahรฅndteringspakke til din rรฅdighed.
ELK-vรฆrktรธjet understรธtter ikke integration med andre vรฆrktรธjer. Splunk er et nyttigt vรฆrktรธj til opsรฆtning af integrationer med andre vรฆrktรธjer.

Casestudier

Netflix

Netflix er stรฆrkt afhรฆngig af ELK stack. Virksomheden, der bruger ELK stack til at overvรฅge og analysere kundeservicedriftens sikkerhedslog. Det giver dem mulighed for at indeksere, gemme og sรธge i dokumenter fra mere end femten klynger, som omfatter nรฆsten 800 noder.

LinkedIn

Det berรธmte sociale mediemarkedsfรธringssite LinkedIn bruger ELK stack til at overvรฅge ydeevne og sikkerhed. IT-teamet integrerede ELK med Kafka for at understรธtte deres belastning i realtid. Deres ELK-drift omfatter mere end 100 klynger pรฅ tvรฆrs af seks forskellige datacentre.

Tripwire

Tripwire er et verdensomspรฆndende Security Information Event Management-system. Virksomheden bruger ELK til at understรธtte informationspakkeloganalyse.

Medium

Medium er en berรธmt blog-publiceringsplatform. De bruger ELK stack til at fejlfinde deres produktionsproblemer. Virksomheden bruger ogsรฅ ELK til at detektere DynamoDB hotpots. Desuden kan virksomheden ved at bruge denne stak understรธtte 25 millioner unikke lรฆsere samt tusindvis af publicerede indlรฆg hver uge.

Fordele og ulemper ved ELK stack

Fordele

  • ELK fungerer bedst, nรฅr logfiler fra forskellige apps fra en virksomhed konvergerer til en enkelt ELK-instans
  • Det giver forblรธffende indsigt for denne enkelte instans og eliminerer ogsรฅ behovet for at logge ind pรฅ hundrede forskellige logdatakilder
  • Hurtig installation pรฅ stedet
  • Let at installere Vรฆgt lodret og vandret
  • Elastic tilbyder et vรฆld af sprogkunder, som inkluderer Ruby. Python. PHP, Perl, .NET, Javaog JavaScript og mere
  • Tilgรฆngelighed af biblioteker til forskellige programmerings- og scriptsprog

Ulemper

  • Forskellige komponenter i stakken kan blive svรฆre at hรฅndtere, nรฅr du gรฅr videre til kompleks opsรฆtning
  • Der er intet som forsรธg og fejl. Jo mere du gรธr, jo mere lรฆrer du undervejs

Resumรฉ

  • Centraliseret logning kan vรฆre nyttig, nรฅr du forsรธger at identificere problemer med servere eller applikationer
  • ELK serverstak er nyttig til at lรธse problemer relateret til centraliseret logningssystem
  • ELK stack er en samling af tre open source vรฆrktรธjer Elasticsearch, Logstash Kibana
  • Elasticsearch er en NoSQL-database
  • Logstash er pipelinevรฆrktรธjet til dataindsamling
  • Kibana er en datavisualisering, som fuldender ELK-stakken
  • I cloud-baserede miljรธinfrastrukturer er ydeevne og isolation meget vigtig
  • I ELK stack behandling hastighed er strengt begrรฆnset mens splunk tilbyder prรฆcise og hurtige processer
  • Netflix, LinkedIn, Tripware, Medium alle bruger ELK stack til deres virksomhed
  • ELK Syslog fungerer bedst, nรฅr logfiler fra forskellige apps i en virksomhed konvergerer til en enkelt ELK-instans
  • Forskellige komponenter i stakken kan blive svรฆre at hรฅndtere, nรฅr du gรฅr videre til kompleks opsรฆtning

Henvis vores ElasticSearch interviewspรธrgsmรฅl og svar for friskere sรฅvel som erfarne kandidater.

Opsummer dette indlรฆg med: