Šiame vadove mes padėsime jums paleisti „Logstash“ „Docker“ konteineryje su pagrindine konfigūracija.
Reikalavimai:
Prieš pradėdami naudotis mokymo programa, įsitikinkite, kad turite:
- Pagrindiniame kompiuteryje įdiegtas „Docker“ (rekomenduojama 23 ir naujesnė versija)
- Įrenginyje įdiegta „Docker Compose“.
Įvykdę nurodytus reikalavimus, galime tęsti mokymo programą.
Nustatykite „Logstash“ konfigūracijos failą
„Logstash“ naudoja konfigūracijos failus, kad nustatytų, kaip duomenys gaunami, filtruojami ir siunčiami į išvestį. Yra įvairių parinkčių, kurias galite konfigūruoti, kaip galite nurodyti oficialiuose dokumentuose.
Mūsų pavyzdyje mes sutelkiame dėmesį į pagrindinę konfigūraciją, kuri įtraukia duomenis iš žurnalo failo, filtruoja juos atitinkantiems įrašams ir išveda duomenis į failą.
Sukurkite failą „logstash.conf“ ir pridėkite konfigūraciją taip:
input {failas {
kelias => '/var/log/apache/access.log'
pradžios_pozicija => 'pradžia'
sincedb_path => '/dev/null'
ignore_older => 0
}
}
filtras {
jei [pranešimas] =~ 'KLAIDA' {
grok {
rungtynės => { 'žinutė' => „%{COMBINEDAPACHELOG}“ }
}
}
}
output {
failas {
kelias => '/var/log/apache/error_logs.log'
}
}
Ankstesnis failas apibrėžia konfigūraciją, kaip parodyta toliau:
- Įvesties skyrius – įvesties sekcija naudoja failo įvesties papildinį, kad nuskaitytų „Apache“ žurnalo failą, esantį /var/log/apache/access.log.
- Tada pradžioje nustatome pradinę padėtį, kuri leidžia „Logstash“ skaityti visą failą nuo pat pradžių.
- Sincedb_path – šis parametras leidžia išjungti Logstash sincedb stebėjimą, nustatant reikšmę /dev/null. Tai užtikrina, kad „Logstash“ visada skaito nuo failo pradžios.
- Ignore_older – šio parametro reikšmės nustatymas į 0 leidžia „Logstash“ apdoroti visus žurnalo failo įrašus.
- Filtro skiltis – filtro skiltyje apibrėžiame filtro šabloną, kad patikrintume, ar žurnalo pranešime yra žodis ERROR. Galite koreguoti filtrų blokų sąlygas, kad būtų galima filtruoti tikslesnes atitiktis faile.
- Jei sąlyga įvykdoma, naudojame grok filtrą, kad išanalizuoti Apache žurnalo eilutę, naudojant COMBINEDAPACHELOG šabloną, kuris yra įtaisytas Logstash šablonas, skirtas Apache žurnalams analizuoti.
- Išvesties skyrius – šioje skiltyje galime apibrėžti atitinkančių įrašų išvesties formatą.
- Mūsų atveju mes įrašome juos į /var/log/apache/error_logs.log failą naudodami kelio parametrą.
Tai turėtų suteikti mums pagrindinę „Logstash“ konfigūraciją, kuri leis mums parodyti kai kuriuos pagrindinius „Logstash“ veiksmus.
Daugiau apie Logstash vamzdynų kūrimą ir konfigūravimą rasite toliau pateiktame dokumentacijos šaltinyje:
https://www.elastic.co/guide/en/logstash/current/configuration.html
Sukurkite Docker failą
Apibrėžę „Logstash“ konfigūracijas, galime tęsti ir sužinoti, kaip paleisti konteinerį. Tame pačiame kataloge, kuriame yra „logstash.conf“ failas, sukurkite naują failą pavadinimu „Dockerfile“.
Redaguokite šį failą ir pridėkite įrašus taip:
IŠ docker.elastic.co/logstash/logstash:8.9.2KOPIJUOTI logstash.conf /usr/share/logstash/pipeline/logstash.conf
Pateiktame pavyzdyje bazinį vaizdą apibrėžiame kaip oficialų „Logstash“ vaizdą, naudodami 8.9.2 versiją.
Tada nukopijuojame „logstash.conf“ failą, kurį sukūrėme, į /usr/share/logstash/pipeline/logstash.conf paveikslėlyje.
Sukurkite „Docker“ vaizdą
Tada eikite į katalogą, kuriame yra „Dockerfile“ ir „Logstash“ konfigūracijos failas. Norėdami sukurti vaizdą, paleiskite šią komandą:
$ dokerio konstrukcija -t custom-logstash-image .
Paleiskite „Logstash“ konteinerį
Dabar, kai sukūrėme „Docker“ vaizdą, galime paleisti „Logstash“ konteinerį naudodami „Docker“ komandą „paleisti“ taip:
$ dokininko bėgimas -d --vardas logstash-server custom-logstash-imageTai turėtų paleisti „Logstash“ konteinerį naudojant vaizdą, kurį sukūrėme ankstesniame veiksme.
Patikrinkite „Logstash“ konteinerio žurnalus
Norėdami patikrinti, ar „Logstash“ veikia tinkamai, galite patikrinti konteinerio žurnalus naudodami šią komandą:
$ dokerių rąstų < konteinerio_pavadinimas >Išvestis:
Išvada
Šiame vadove sužinojote, kaip greitai nustatyti „Logstash“ serverį, kuris veikia kaip „Docker“, naudojant pasirinktinį konfigūracijos failą. Rekomenduojame peržiūrėti vaizdo parametrų ir konfigūracijos parinkčių dokumentaciją.