Ja jums jāpārvalda milzīgs datu apjoms, jūs atradīsit kādu dienu vēlēšanos pēc rīka, kas vienkārši norādīs uz datu anomālijām vai neatbilstībām un brīdinās jūs reāllaikā.
Kas ir ElastAlert?
ElastAlert ir paredzēts tieši tam. Tas ir vienkāršs ietvars, kas brīdina, kad no datiem, kas pievienoti Elasticsearch, atklāj anomālijas, tapas vai citus noteikumu modeļus.
Piemēram, jūs varētu iestatīt “biežuma” brīdinājumu, kas jūs informēs, kad Y laikā ir X notikumu skaits.
Vai arī jūs vēlaties, lai jūs nekavējoties brīdina, kad notiek “straujš” notikums, tas ir, kad notikuma rašanās ātrums pēkšņi palielinās vai samazinās.
Citi iekļauti noteikumu veidi ir:
- 'flatline' - ja Y laikā ir mazāk nekā X notikumi
- “melnais saraksts / baltais saraksts” - ja noteikts lauks atbilst “melnajam sarakstam” vai “baltajam sarakstam”
- "jebkurš" - kad notiek notikums, kas atbilst norādītajam filtram
- 'mainīt' - kad laukam noteiktā laika periodā ir divas dažādas vērtības
Atbalstītie brīdinājumu veidi
Pašlaik ElastAlert ir iebūvēts atbalsts šādiem brīdinājumu veidiem.
- Komanda
- E-pasts
- JIRA
- OpsGenie
- SNS
- HipChat
- Atslābums
- Telegramma
- GoogleChat
- Atkļūdošana
- Stomp
- theHive
Instalējiet ElastAlert ar Elasticsearch uz Ubuntu
Šajā rakstā mēs parādīsim, kā instalēt ElastAlert uz Ubuntu 18.04.
Prasības
- Elasticsearch
- ISO8601 vai Unix laika zīmoga dati
- Python 2.7
- pip, skatiet prasības.txt - (https: // github.com / Yelp / elastalert / blob / master / prasības.txt)
- Ubuntu paketes - python-pip python-dev libffi-dev libssl-dev
Priekšnosacījumu instalēšana
Instalējiet Python 2.7:
sudo apt-get instalēt python-minimal
Pārbaudiet Python versiju:
sudo python --versija
Tad jūs iegūsit pitona 2 izvadi.7.
Instalējiet nepieciešamās paketes:
sudo apt-get instalēt python-pip python-dev libffi-dev libssl-dev
Ir daži dažādi veidi, kā instalēt ElastAlert, un šeit mēs veiksim instalēšanu, klonējot git repozitoriju.
Tāpēc mums ir jāinstalē “git” pirms turpināt. Parasti Ubuntu 18.04 jau ir instalēts git.
Pārbaudiet, vai ir instalēta vai pieejama git versija:
sudo apt-cache politika git
Tas sniegs informāciju par instalētajām un kandidāta git versijām.
Ja jūs neredzat instalēto git versiju, palaidiet šo komandu.
sudo apt-get install git
Mēs klonēsim ElastAlert repozitoriju mapē “/ opt”, tāpēc mainīsim direktoriju.
sudo cd / opt
Tagad klonējiet git repozitoriju.
sudo git klons https: // github.com / Yelp / elastalert.git
Tagad instalējiet moduļus.
sudo pip instalējiet "setuptools> = 11.3 "
sudo python iestatīšana.py instalēt
Var rasties šāda kļūda.
Pēc tam palaidiet zem komandas, lai instalētu “PyOpenSSL”
sudo pip instalējiet PyOpenSSL
Šeit mēs integrēsimies ar elastīgo meklēšanu 6.x. Tātad Elasticsearch 5.Šeit tiks instalēti 0+.
sudo pip instalēt "elasticsearch> = 5.0.0 "
Konfigurējiet ElastAlert
Mēs klonējām ElastAlert repo direktorijā “/ opt”, tāpēc pirms turpināšanas mainiet direktoriju.
sudo cd / opt / elastalert /
Tagad mēs iegūstam konfigurācijas kopiju.yaml.faila piemērs kā konfigurācija.yaml
sudo cp konfigurācija.yaml.konfigurācijas piemērs.yaml
Mainīt konfigur.yaml fails.
vim config.yaml
Noņemiet komentāru no šīm rindām un modificējiet.
ElasticSearch resursdatora nosaukums vai IP
es_host: alnis-serveris
ElasticServer ports
es_port: 9200
Komentāra pamata autentifikācija:
es_username: es_password:
Saglabājiet un aizveriet failu.
Izveidojiet ElastAlert indeksu.
sudo elastalert-create-index
Noteikuma izveide
Tagad rediģējiet failu ar nosaukumu “example_frequency.yaml ”mapē“ / opt / elastalert / example_rules / ”
sudo vim example_rules / example_frequency.yaml
Komentējiet un modificējiet indeksu šādi:
rādītājs: filebeat- *
Tagad definējiet brīdinājuma filtru. Šeit mēs filtrējam atslēgvārdus ar virkni “izņēmums”.
filtrs: - query_string: query: "ziņojums: * izņēmums *"
Konfigurējiet Alter ar Slack. Šeit jums jāizveido Slack kanāls un ienākošais tīmekļa āķis. Pēc tam pievienojiet informāciju par konfigurāciju šādi.
brīdinājums: - "vaļīgs" atslābums: slack_webhook_url: "https: // āķi.atslābums.com / services / T3YSFN0GL / BFU1HPLKD / BPM2jOlIOzKxbEOHAepu6d26 "slack_username_override:" Fosslinux-Elastic-Bot "slack_channel_override:" #fosslinuxalert "slack_emoji_override: slīdraksts":
Lai izveidotu Slack kanālu, varat veikt tālāk norādītās darbības.
ElastAlert slaista kanāla konfigurēšana
Ja jums nav slaista konta, varat to iegūt, vienkārši reģistrējoties. Dodieties uz “atslābums.com ”un ievadiet savu e-pasta adresi un noklikšķiniet uz“ UZSĀKT ”.
Pēc tam noklikšķiniet uz “izveidot jaunu darbvietu” un pārbaudiet savu e-pasta adresi. Tagad jūs varat pieteikties un apskatīt informācijas paneli.
Dodieties uz Pārlūkot lietotnes -> Pielāgotas integrācijas -> Ienākošie Webhooks -> Jauna konfigurācija
Pēc tam noklikšķiniet uz Izveidot jaunu kanālu, lai izveidotu kanālu brīdinājumu sūtīšanai.
Pēc tam noklikšķiniet uz pogas Izveidot kanālu, un jūs tiksiet novirzīts uz Webhook integrācijas lapu.
Noklikšķiniet uz pogas Pievienot ienākošo WebHooks integrāciju. Tādējādi tiks izveidoti integrācijas iestatījumi.
Pārbaudes kārtula
Mainīt direktoriju uz ElastAlert.
sudo cd / opt / elastalert /
Palaidiet komandu zemāk, lai pārbaudītu konfigurēto kārtulu.
sudo elastalert-test-rule example_rules / example_frequency.yaml
Palaidiet ElastAlert
Mēs sāksim ElastAlert kā fona pakalpojumu. Šī komanda jāpalaiž mapē “/ opt / elastalert /”.
sudo python -m elastalert.elastalert --verbose - noteikuma piemērs_frekvence.yaml &
Tagad ElastAlert sāks pārbaudīt vaicājumus vietnē Elasticsearch (ELK serverī). Ja ir kāda spēle, tā izsauks brīdinājumu pret Slack.
Brīdinājums aktivizēts.
Brīdinājums tiks novirzīts uz Slack Channel.
Tas ir viss, mēs veiksmīgi instalējām un konfigurējām ElastAlert ar elastīgo meklēšanu, kā arī iestatījām brīdinājumus par Slack. Mēs ceram, ka šī izsmeļošā apmācība palīdzēs jums instalēt ElastAlert un izveidot dažus noteikumus, lai viegli aktivizētu brīdinājumus. Jautājumi un atsauksmes ir laipni gaidīti komentāru sadaļā.