Elastična pretraga

Vizualizirajte Apache zapisnike pomoću ELK stoga

Vizualizirajte Apache zapisnike pomoću ELK stoga

Praćenje i analiza dnevnika za razne infrastrukture u stvarnom vremenu može biti vrlo dosadan posao. Kada se radi o uslugama poput web poslužitelja koji neprestano bilježe podatke, postupak može biti vrlo složen i gotovo nemoguć.

Kao takvo, znanje korištenja alata za praćenje, vizualizaciju i analizu dnevnika u stvarnom vremenu može vam pomoći u pronalaženju i rješavanju problema i praćenju sumnjivih aktivnosti sustava.

Ovaj će vodič raspravljati o tome kako možete koristiti jednu od najboljih zbirki dnevnika u stvarnom vremenu i alata za analizu - ELK. Korištenjem ELK-a, poznatog kao Elasticsearch, Logstash i Kibana, možete sakupljati, bilježiti i analizirati podatke s web apache web poslužitelja u stvarnom vremenu.

Što je ELK Stack?

ELK je kratica koja se koristi za označavanje tri glavna alata otvorenog koda: Elasticsearch, Logstash i Kibana.

Elasticsearch je alat otvorenog koda razvijen za pronalaženje podudaranja u velikoj zbirci skupova podataka pomoću odabira jezika i vrsta upita. Lagan je i brz alat koji s lakoćom može rukovati terabajtima podataka.

Logstash engine je veza između poslužiteljske strane i Elasticsearch, omogućujući vam prikupljanje podataka iz odabranih izvora do Elasticsearch. Nudi moćne API-je koji su lako integrirani s aplikacijama razvijenim u različitim programskim jezicima.

Kibana je završni dio ELK stoga. To je alat za vizualizaciju podataka koji vam omogućuje vizualnu analizu podataka i generiranje pronicljivih izvješća. Također nudi grafikone i animacije koji vam mogu pomoći u interakciji s vašim podacima.

ELK stog vrlo je moćan i može raditi nevjerojatne stvari u vezi s analizom podataka.

Iako će vam različiti koncepti o kojima ćemo raspravljati u ovom vodiču dobro razumjeti ELK stog, za dodatne informacije razmotrite dokumentaciju.

Elasticsearch: https: // linkfy.na / Elasticsearch-Reference

Logstash: https: // linkfy.na / LogstashReference

Kibana: https: // linkfy.do / KibanaGuide

Kako instalirati Apache?

Prije nego počnemo instalirati Apache i sve ovisnosti, dobro je primijetiti nekoliko stvari.

Testirali smo ovaj tutorial na Debianu 10.6, ali radit će i s drugim Linux distribucijama.

Ovisno o konfiguraciji sustava, trebaju vam sudo ili root dozvole.

Kompatibilnost i upotrebljivost ELK steka mogu se razlikovati ovisno o inačicama.

Prvi korak je osigurati da vaš sustav bude potpuno ažuriran:

sudo apt-get ažuriranje
sudo apt-get nadogradnja

Sljedeća naredba je instaliranje web poslužitelja apache2. Ako želite instalirati minimalni apache, uklonite dokumentaciju i uslužne programe iz naredbe u nastavku.

sudo apt-get instalirati apache2 apache2-utils apache2-doc -y
sudo usluga apache2 start

Do sada biste na vašem sustavu trebali imati pokrenut Apache poslužitelj.

Kako instalirati Elasticsearch, Logstash i Kibana?

Sada moramo instalirati ELK stog. Instalirat ćemo svaki alat pojedinačno.

Elasticsearch

Krenimo od instaliranja Elasticsearch. Koristit ćemo apt za njegovu instalaciju, ali stabilno izdanje možete dobiti na službenoj stranici za preuzimanje ovdje:

https: // www.elastičan.co / downloads / elasticsearch

Elasticsearch zahtijeva Java za pokretanje. Srećom, najnovija verzija dolazi u paketu s paketom OpenJDK, uklanjajući poteškoće s ručnom instalacijom. Ako trebate ručno instalirati, pogledajte sljedeći resurs:

https: // www.elastičan.co / guide / en / elasticsearch / reference / current / setup.html # jvm-verzija

U sljedećem koraku trebamo preuzeti i instalirati službeni ključ za potpisivanje Elastic APT pomoću naredbe:

wget -qO - https: // artefakti.elastičan.co / GPG-KEY-elasticsearch | sudo apt-key dodati -

Prije nastavka, možda ćete trebati paket apt-transport-https (potreban za pakete koji se poslužuju putem https-a) prije nego što nastavite s instalacijom.

sudo apt-get instalirati apt-transport-https

Sada dodajte odgovarajuće repo informacije izvorima.popis.d datoteka.

odjek “deb https: // artefakti.elastičan.co / paketi / 7.x / apt stabilan glavni ”| sudo tee / etc / apt / sources.popis.d / elastična-7.x.popis

Zatim ažurirajte popis paketa na vašem sustavu.

sudo apt-get ažuriranje

Instalirajte Elasticsearch pomoću naredbe u nastavku:

sudo apt-get instaliraj elasticsearch

Nakon instaliranja Elasticsearch, pokrenite i omogućite pokretanje prilikom pokretanja pomoću naredbi systemctl:

sudo systemctl daemon-reload
sudo systemctl omogućiti elastično pretraživanje.servis
sudo systemctl pokretanje elastičnog pretraživanja

Pokretanje usluge može potrajati neko vrijeme. Pričekajte nekoliko minuta i potvrdite da je usluga pokrenuta naredbom:

sudo systemctl status elastično pretraživanje.servis

Koristeći cURL, testirajte je li dostupan Elasticsearch API, kao što je prikazano u JSON izlazu ispod:

curl -X GET "localhost: 9200 /?prilično"

"name": "debian",
"cluster_name": "elasticsearch",
"cluster_uuid": "VZHcuTUqSsKO1ryHqMDWsg",
"inačica":
"broj": "7.10.1 ",
"build_flavor": "zadani",
"build_type": "deb",
"build_hash": "1c34507e66d7db1211f66f3513706fdf548736aa",
"build_date": "2020-12-05T01: 00: 33.671820Z ",
"build_snapshot": netačno,
"lucene_version": "8.7.0 ",
"minimum_wire_compatibility_version": "6.8.0 ",
"minimum_index_compatibility_version": "6.0.0-beta1 "
,
“Tagline”: “Znate, za pretraživanje”

Kako instalirati Logstash?

Instalirajte paket logstash pomoću naredbe:

sudo apt-get instalirati logstash

Kako instalirati Kibana?

Unesite naredbu ispod kako biste instalirali kibana:

sudo apt-get instalirati kibana

Kako konfigurirati Elasticsearch, Logstash i Kibana?

Evo kako konfigurirati ELK stog:

Kako konfigurirati Elasticsearch?

U Elasticsearchu podaci se uređuju u indekse. Svaki od ovih indeksa ima jednu ili više krhotina. Krhotina je samostalna tražilica koja se koristi za obradu i upravljanje indeksima i upitima za podskup u klasteru unutar Elasticsearch. Krhotina djeluje kao primjer indeksa Lucene.

Zadana instalacija Elasticsearch stvara pet krhotina i jednu repliku za svaki indeks. Ovo je dobar mehanizam u proizvodnji. Međutim, u ovom uputstvu radit ćemo s jednom krhotinom i bez replika.

Započnite s izradom indeksnog predloška u JSON formatu. U datoteci ćemo postaviti broj krhotina na jednu i nula replika za podudaranje naziva indeksa (razvojne svrhe).

U Elasticsearch, predložak indeksa odnosi se na to kako upućujete Elasticsearch u postavljanju indeksa tijekom postupka izrade.

Unutar datoteke json predloška (index_template.json), unesite sljedeće upute:


"predložak": "*",
"postavke":
"indeks":
"number_of_shards": 1,
"number_of_replicas": 0


Koristeći cURL, primijenite json konfiguraciju na predložak, koja će se primijeniti na sve stvorene indekse.

curl -X PUT http: // localhost: 9200 / _template / default -H 'Content-Type: application / json' -d @index_template.json
"potvrđeno": istina

Jednom primijenjen, Elasticsearch će odgovoriti potvrđenom: istinitom izjavom.

Kako konfigurirati Logstash?

Da bi Logstash prikupljao zapisnike iz Apachea, moramo ga konfigurirati tako da prati promjene u zapisnicima prikupljanjem, obradom i spremanjem dnevnika u Elasticsearch. Da bi se to dogodilo, morate postaviti putanju dnevnika prikupljanja u Logstash.

Započnite s izradom Logstash konfiguracije u datoteci / etc / logstash / conf.d / apache.konf

unos
datoteka
put => '/ var / www / * / logs / access.zapisnik '
type => "apache"


filtar
grok
podudaranje => "message" => "% COMBINEDAPACHELOG"


izlaz
elastično pretraživanje

Sada osigurajte da omogućite i pokrenete uslugu logstash.

sudo systemctl omogućiti logstash.servis
sudo systemctl pokreni logstash.servis

Kako omogućiti i konfigurirati Kibanu?

Da biste omogućili Kibanu, uredite glavno .yml konfiguracijska datoteka koja se nalazi u / etc / kibana / kibana.yml. Pronađite sljedeće unose i raskomentirajte ih. Kada završite, upotrijebite systemctl za pokretanje usluge Kibana.

poslužitelju.luka: 5601
poslužitelju.domaćin: "localhost"
sudo systemctl omogućiti kibana.servis && sudo systemctl start kibana.servis

Kibana stvara uzorke indeksa na temelju obrađenih podataka. Stoga morate prikupiti zapisnike pomoću Logstasha i spremiti ih u Elasticsearch, koji Kibana može koristiti. Koristite curl za generiranje dnevnika iz Apachea.

Nakon što dobijete zapisnike iz Apachea, pokrenite Kibana u svom pregledniku pomoću adrese http: // localhost: 5601, koja će pokrenuti indeksnu stranicu Kibana.

Uglavnom, trebate konfigurirati uzorak indeksa koji Kibana koristi za traženje dnevnika i generiranje izvješća. Prema zadanim postavkama, Kibana koristi obrazac indeksa logstash *, koji odgovara svim zadanim indeksima koje generira Logstash.

Ako nemate nikakvu konfiguraciju, kliknite Stvori za početak pregledavanja dnevnika.

Kako pregledati zapisnike Kibane?

Kako nastavljate izvršavati Apache zahtjeve, Logstash će prikupljati zapisnike i dodavati ih u Elasticsearch. Te zapisnike možete pregledati u Kibani klikom na opciju Otkrivanje na lijevom izborniku.

Kartica Discover omogućuje vam pregled dnevnika dok ih poslužitelj generira. Da biste pogledali detalje dnevnika, jednostavno kliknite padajući izbornik.

Pročitajte i razumite podatke iz Apache dnevnika.

Kako pretraživati ​​zapisnike?

U sučelju Kibana pronaći ćete traku za pretraživanje koja vam omogućuje pretraživanje podataka pomoću stringova upita.

Primjer: status: aktivan

Ovdje saznajte više o nizovima upita ELK:

https: // www.elastičan.co / guide / en / elasticsearch / reference / 5.5 / query-dsl-query-string-query.html # query-string-sintaksa

Budući da imamo posla s Apache zapisnicima, jedno od mogućih podudaranja je statusni kôd. Stoga pretražite:

odgovor: 200

Ovaj će kôd tražiti zapisnike sa statusnim kodom 200 (OK) i prikazati ih Kibani.

Kako vizualizirati zapisnike?

Možete stvoriti vizualne nadzorne ploče u Kibani odabirom kartice Vizualiziraj. Odaberite vrstu nadzorne ploče koju želite stvoriti i odaberite indeks pretraživanja. Možete koristiti zadani zadatak u svrhe testiranja.

Zaključak

U ovom smo vodiču raspravljali o pregledu kako koristiti ELK stog za upravljanje zapisnicima. Međutim, ovaj članak može obuhvatiti više ovih tehnologija. Preporučujemo da istražite sami.

Kako snimiti i struji svoju igraću sesiju na Linuxu
U prošlosti se igranje igara smatralo samo hobijem, ali s vremenom je igračka industrija zabilježila ogroman rast u pogledu tehnologije i broja igrača...
Najbolje igre za ručno praćenje
Oculus Quest nedavno je predstavio sjajnu ideju ručnog praćenja bez kontrolera. Sa sve većim brojem igara i aktivnosti koje izvršavaju podršku bilo fo...
Kako prikazati OSD prekrivač u aplikacijama i igrama na cijelom zaslonu za Linux
Igranje igara preko cijelog zaslona ili upotreba aplikacija u režimu preko cijelog zaslona bez ometanja može vas odsjeći od relevantnih informacija o ...