Logstash Dockerissa

Logstash Dockerissa



Logstash on avoimen lähdekoodin tietojenkäsittelyputki, jonka avulla voit kerätä, käsitellä ja välittää lokitietoja eri lähteistä.

Tässä opetusohjelmassa opastamme sinua Logstashin suorittamisessa Docker-säiliössä peruskokoonpanon kanssa.

Vaatimukset:

Ennen kuin aloitamme opetusohjelman, varmista, että sinulla on seuraavat asiat:







  1. Isäntäkoneellesi asennettu Docker (versio 23 tai uudempi on suositeltavaa)
  2. Asennettu Docker Compose koneellesi

Kun annetut vaatimukset täyttyvät, voimme jatkaa opetusohjelmaa.



Asenna Logstash-määritystiedosto

Logstash käyttää määritystiedostoja määrittääkseen, kuinka tiedot syötetään, suodatetaan ja lähetetään ulostuloon. Voit määrittää useita vaihtoehtoja, kuten voit viitata virallisessa dokumentaatiossa.



Esimerkissämme keskitymme peruskokoonpanoon, joka syöttää tiedot lokitiedostosta, suodattaa ne vastaavia tietueita varten ja tulostaa tiedot tiedostoon.





Luo tiedosto nimeltä 'logstash.conf' ja lisää kokoonpano seuraavasti:

input {
tiedosto {
polku => '/var/log/apache/access.log'

aloituspaikka => 'alku'

sincedb_path => '/dev/null'

ignore_older => 0
}
}

filter {
jos [viesti] =~ 'VIRHE' {
grok {
ottelu => { 'viesti' => '%{COMBINEDAPACHELOG}' }
}
}
}

output {
tiedosto {
polku => '/var/log/apache/error_logs.log'
}
}

Edellinen tiedosto määrittää kokoonpanon seuraavan kuvan mukaisesti:

  1. Syöttöosio – Syöttöosio käyttää tiedostonsyöttölaajennusta hakemistossa /var/log/apache/access.log olevan Apache-lokitiedoston lukemiseen.
    • Asetamme sitten aloituskohdan alkuun, jolloin Logstash voi lukea koko tiedoston alusta alkaen.
    • Sincedb_path – Tämän parametrin avulla voimme poistaa Logstashin sincedb-seurannan käytöstä asettamalla arvoksi /dev/null. Tämä varmistaa, että Logstash lukee aina tiedoston alusta.
    • Ignore_older – Kun tämän parametrin arvoksi asetetaan 0, Logstash voi käsitellä kaikki lokitiedoston merkinnät.
  2. Suodatinosio – Suodatinosiossa määritämme suodatuskuvion tarkistaaksemme, sisältääkö lokiviesti sanan ERROR. Voit säätää suodatinlohkojen ehtoja suodattaaksesi tarkempia osumia tiedostossa.
    • Jos ehto täyttyy, käytämme grok-suodatinta jäsentämään Apache-lokirivin COMBINEDAPACHELOG-kuviolla, joka on Logstashissa sisäänrakennettu kuvio Apache-lokien jäsentämiseksi.
  3. Tulostusosio – Tämän osion avulla voimme määrittää vastaavien merkintöjen tulostusmuodon.
    • Tässä tapauksessa kirjoitamme ne /var/log/apache/error_logs.log-tiedostoon polkuparametrilla.

Tämän pitäisi tarjota meille Logstash-peruskokoonpano, jonka avulla voimme esitellä joitain Logstashin perustoimintoja.

Lisätietoja Logstash-putkilinjojen luomisesta ja määrittämisestä on seuraavassa toimitetussa dokumentaatioresurssissa:

https://www.elastic.co/guide/en/logstash/current/configuration.html

Luo Docker-tiedosto

Kun olemme määritelleet Logstash-kokoonpanot, voimme jatkaa ja oppia ajamaan konttia. Luo samaan hakemistoon kuin 'logstash.conf'-tiedosto, uusi tiedosto nimeltä 'Dockerfile'.

Muokkaa tätä tiedostoa ja lisää merkinnät seuraavasti:

LÄHETTÄJÄ docker.elastic.co/logstash/logstash:8.9.2

KOPIO logstash.conf /usr/share/logstash/pipeline/logstash.conf

Esimerkissä määritämme peruskuvan viralliseksi Logstash-kuvaksi käyttämällä versiota 8.9.2.

Kopioimme sitten luomamme 'logstash.conf' -tiedoston kuvan /usr/share/logstash/pipeline/logstash.conf-tiedostoon.

Rakenna Docker Image

Siirry seuraavaksi hakemistoon, joka sisältää Dockerfile- ja Logstash-määritystiedoston. Suorita seuraava komento luodaksesi kuvan:

$ telakkarakennelma -t custom-logstash-image .

Suorita Logstash Container

Nyt kun olemme rakentaneet Docker-kuvan, voimme ajaa Logstash-säilöä käyttämällä Dockerin 'run'-komentoa seuraavasti:

$ telakkajuoksu -d --nimi logstash-server custom-logstash-image

Tämän pitäisi suorittaa Logstash-säilö käyttämällä kuvaa, jonka rakensimme edellisessä vaiheessa.

Tarkista Logstash-säiliölokit

Varmistaaksesi, että Logstash toimii oikein, voit tarkistaa konttilokit seuraavalla komennolla:

$ telakointilokit < kontin_nimi >

Lähtö:

Johtopäätös

Tässä opetusohjelmassa opit, kuinka voit nopeasti määrittää Dockerina toimivan Logstash-palvelimen mukautetun määritystiedoston avulla. Suosittelemme tarkistamaan kuvaparametreja ja konfigurointivaihtoehtoja koskevista asiakirjoista.