Če morate upravljati ogromne količine podatkov, se boste nekega dne zaželeli orodja, ki bi preprosto opozorilo na nepravilnosti ali neskladnosti podatkov in vas sproti opozorilo.
Kaj je ElastAlert?
ElastAlert je zasnovan tako, da točno to stori. To je preprost okvir, ki opozori, ko zazna nepravilnosti, konice ali druge vzorce pravil iz podatkov, dodanih v Elasticsearch.
Na primer, morda nastavite opozorilo "frekvenca", ki vas bo obvestilo, ko bo v Y času X število dogodkov.
Ali pa boste morda želeli, da vas takoj opozorijo, ko pride do "spike" dogodka, to je, ko se hitrost, s katero se dogodek nenadoma poveča ali zmanjša.
Vključene so tudi druge vrste pravil:
- 'flatline' - kadar je v Y času manj kot X dogodkov
- 'blacklist / whitelist' - kadar se določeno polje ujema s 'blacklist' ali 'whitelist'
- 'any' - ko se zgodi dogodek, ki se ujema z danim filtrom
- 'sprememba' - kadar ima polje v določenem časovnem obdobju dve različni vrednosti
Podprte vrste opozoril
Trenutno ima ElastAlert vgrajeno podporo za naslednje vrste opozoril.
- Ukaz
- E-naslov
- JIRA
- OpsGenie
- SNS
- HipChat
- Ohlapnost
- Telegram
- GoogleChat
- Odpravljanje napak
- Stomp
- panj
Namestite ElastAlert z Elasticsearch na Ubuntu
V tem članku vam pokažemo, kako namestiti ElastAlert na ubuntu 18.04.
Zahteve
- Elasticsearch
- Podatki o časovni znamki ISO8601 ali Unix
- Python 2.7
- pip, glej zahteve.txt - (https: // github.com / Yelp / elastalert / blob / master / zahteve.txt)
- Paketi za ubuntu - python-pip python-dev libffi-dev libssl-dev
Namestitev predpogojev
Namestite Python 2.7:
sudo apt-get namestite python-minimal
Preverite različico Pythona:
sudo python - različica
Potem boste dobili izhod za python 2.7.
Namestite potrebne pakete:
sudo apt-get namestite python-pip python-dev libffi-dev libssl-dev
Obstaja nekaj različnih načinov namestitve ElastAlert, namestitev pa bomo izvedli s kloniranjem git repozitorija.
Pred nadaljevanjem moramo namestiti »git«. Običajno je Ubuntu 18.04 je že namestil git.
Preverite nameščeno ali razpoložljivo različico gita:
pravilnik sudo apt-cache git
To bo podalo podrobnosti o nameščeni in možni različici git.
Če ne vidite nameščene različice git, zaženite naslednji ukaz.
sudo apt-get install git
Klonirali bomo repozitorij ElastAlert v mapo “/ opt”, zato spremenimo imenik.
sudo cd / opt
Zdaj klonirajte git repozitorij.
klon sudo git https: // github.com / Yelp / elastalert.git
Zdaj namestite module.
sudo pip install "setuptools> = 11.3 "
nastavitev sudo pythona.py namestite
Lahko dobite takšno napako.
Nato zaženite spodnji ukaz, da namestite “PyOpenSSL”
sudo pip namestite PyOpenSSL
Tu se bomo vključili v Elastic search 6.x. Torej Elasticsearch 5.Tu bo nameščen 0+.
sudo pip namestite "elasticsearch> = 5.0.0 "
Konfigurirajte ElastAlert
EloAlert repo smo klonirali v imenik “/ opt”, zato spremenite imenik, preden nadaljujete.
sudo cd / opt / elastalert /
Zdaj dobimo kopijo config.yaml.primer datoteke kot config.yaml
sudo cp config.yaml.primer config.yaml
Spremeni konfiguracijo.datoteko yaml.
vim config.yaml
Prekličite naslednje vrstice in jih spremenite.
ElasticSearch ime gostitelja ali IP
es_host: elk-server
Vrata ElasticServer
es_port: 9200
Prekličite osnovno preverjanje pristnosti:
es_username: es_password:
Shranite in zaprite datoteko.
Ustvari indeks ElastAlert.
sudo elastalert-create-index
Ustvarjanje pravila
Zdaj uredite datoteko z naslovom »frekvenca_primerja«.yaml "v mapi" / opt / elastalert / example_rules / "
sudo vim example_rules / example_frequency.yaml
Razkomentirajte in spremenite indeks na naslednji način:
indeks: filebeat- *
Zdaj določite filter za opozorilo. Tu filtriramo ključne besede z nizom »izjema«.
filter: - niz_poizvedbe: poizvedba: "sporočilo: * izjema *"
Konfigurirajte Alter s Slack. Tukaj morate ustvariti kanal Slack in dohodni spletni kavelj. Nato dodajte podrobnosti o konfiguraciji, kot sledi.
opozorilo: - "ohlapnost" ohlapnost: slack_webhook_url: "https: // kljuke.ohlapnost.com / services / T3YSFN0GL / BFU1HPLKD / BPM2jOlIOzKxbEOHAepu6d26 "slack_username_override:" Fosslinux-Elastic-Bot "slack_channel_override:" #fosslinuxalert "slack_emoji_overrideg:" slackface: "slackface" "
Za ustvarjanje kanala Slack lahko sledite spodnjim korakom.
Konfiguriranje kanala Slack za ElastAlert
Če še nimate ohlapnega računa, ga lahko dobite s preprosto prijavo. Pojdi na "ohlapnost.com «, vnesite svoj e-poštni naslov in kliknite» ZAČNITE «.
Nato kliknite 'Ustvari nov delovni prostor' in preverite svoj e-poštni naslov. Zdaj se lahko prijavite in si ogledate nadzorno ploščo.
Pojdite na Brskanje po aplikacijah -> Integracije po meri -> Dohodne spletne kljuke -> Nova konfiguracija
Nato kliknite na 'Ustvari nov kanal', da ustvarite kanal za pošiljanje opozoril.
Nato kliknite gumb 'Ustvari kanal' in preusmerjeni boste na stran za integracijo Webhook.
Kliknite gumb »Dodaj vhodno integracijo WebHooks«. To bo ustvarilo nastavitve integracije.
Preskusno pravilo
Spremenite imenik v ElastAlert.
sudo cd / opt / elastalert /
Zaženite spodnji ukaz, da preizkusite konfigurirano pravilo.
sudo elastalert-test-pravilo example_rules / example_frequency.yaml
Zaženite ElastAlert
ElastAlert bomo začeli kot storitev v ozadju. Ta ukaz je treba zagnati v mapi »/ opt / elastalert /«.
sudo python -m elastalert.elastalert --verbose --rule primer_frekvenca.yaml &
Zdaj bo ElastAlert začel preverjati poizvedbe na Elasticsearch (na strežniku ELK). Če obstaja tekma, bo sprožil opozorilo Slacku.
Sprožilo se je opozorilo.
Opozorilo bo namenjeno kanalu Slack.
To je to, z elastičnim iskanjem smo uspešno namestili in konfigurirali ElastAlert ter nastavili opozorila za Slack. Upamo, da vam bo ta izčrpna vadnica pomagala namestiti ElastAlert in nastaviti nekatera pravila za enostavno sprožanje opozoril. Vprašanja in povratne informacije so dobrodošli v oddelku za komentarje.