Ha óriási mennyiségű adatot kell kezelnie, akkor egyszer azon kapja magát, hogy olyan eszközt szeretne, amely egyszerűen rámutat az adatok rendellenességeire vagy következetlenségeire, és valós időben figyelmeztet.
Mi az ElastAlert?
Az ElastAlert pontosan erre hivatott. Ez egy egyszerű keretrendszer, amely figyelmeztet, ha rendellenességeket, csúcsokat vagy más szabálymintákat észlel az Elasticsearch-ben hozzáadott adatokból.
Például beállíthat egy „frekvencia” riasztást, amely értesíti Önt, ha Y idő alatt X esemény van.
Vagy érdemes azonnal figyelmeztetni, ha „csúcsos” esemény van, vagyis amikor egy esemény bekövetkezési sebessége hirtelen nő vagy csökken.
Egyéb szabálytípusok, amelyek szerepelnek:
- „lapos vonal” - ha Y idő alatt kevesebb, mint X esemény van
- „feketelista / fehérlista” - ha egy bizonyos mező megfelel a „feketelistának” vagy „fehérlistának”
- „bármely” - amikor egy adott szűrőnek megfelelő esemény történik
- „változás” - amikor egy mezőnek két különböző értéke van egy meghatározott időn belül
Támogatott riasztástípusok
Jelenleg az ElastAlert beépített támogatással rendelkezik a következő riasztási típusokhoz.
- Parancs
- JIRA
- OpsGenie
- SNS
- HipChat
- Laza
- Távirat
- GoogleChat
- Hibakeresés
- Stomp
- a kaptár
Telepítse az ElastAlert programot az Elasticsearch alkalmazással az Ubuntura
Ebben a cikkben bemutatjuk, hogyan kell telepíteni az ElastAlert szoftvert az ubuntu 18-ra.04.
Követelmények
- Elasticsearch
- ISO8601 vagy Unix időbélyeggel ellátott adatok
- Python 2.7
- pip, lásd a követelményeket.txt - (https: // github.com / Yelp / elastalert / blob / master / követelmények.txt)
- Az ubuntu csomagjai - python-pip python-dev libffi-dev libssl-dev
Az előfeltételek telepítése
Telepítse a Python 2-et.7:
sudo apt-get install python-minimal
Ellenőrizze a Python verzióját:
sudo python --verzió
Ekkor megkapja a python 2 kimenetét.7.
Telepítse a szükséges csomagokat:
sudo apt-get install python-pip python-dev libffi-dev libssl-dev
Az ElastAlert telepítésének kevés módja van, és itt a git repository klónozásával fogjuk megtenni a telepítést.
Tehát a folytatás előtt telepítenünk kell a „git” -t. Általában az Ubuntu 18.A 04 már telepítette a git programot.
Ellenőrizze a git telepített vagy elérhető verzióját:
sudo apt-cache házirend git
Ez megadja a telepített és a jelölt git verziók részleteit.
Ha nem látja a telepített git verziót, futtassa a következő parancsot.
sudo apt-get install git
Az ElastAlert adattárat klónozni fogjuk az “/ opt” mappába, ezért változtassunk könyvtárat.
sudo cd / opt
Most klónozzon egy git adattárat.
sudo git klón https: // github.com / Yelp / elastalert.git
Most telepítse a modulokat.
sudo pip install "setuptools> = 11.3 "
sudo python beállítása.py telepíteni
Ilyen hibát kaphat.
Ezután futtassa a parancs alatt a „PyOpenSSL” telepítését
sudo pip telepítse a PyOpenSSL-t
Itt fogunk integrálni a 6. rugalmas kereséssel.x. Tehát Elasticsearch 5.0+ telepítésre kerül itt.
sudo pip install "elasticsearch> = 5.0.0 "
Az ElastAlert konfigurálása
Klónoztuk az ElastAlert repót az “/ opt” könyvtárba, ezért a folytatás előtt változtasson könyvtárat.
sudo cd / opt / elastalert /
Most megkapjuk a config másolatát.yaml.példa fájl konfigurációként.yaml
sudo cp konfiguráció.yaml.konfigurációs példa.yaml
Konfiguráció módosítása.yaml fájl.
vim config.yaml
Kommentálja a következő sorokat, és módosítsa.
ElasticSearch hosztnév vagy IP
es_host: elk-szerver
ElasticServer port
es_port: 9200
Az alap-hitelesítés megszüntetése:
es_felhasználónév: es_ jelszó:
Mentse és zárja be a fájlt.
Hozzon létre ElastAlert indexet.
sudo elastalert-create-index
Szabály létrehozása
Most szerkessze a “example_frequency” nevű fájlt.yaml ”az“ / opt / elastalert / example_rules / ”mappában
sudo vim példa_szabályok / példa_frekvencia.yaml
Kommentálja és módosítsa az indexet az alábbiak szerint:
index: filebeat- *
Most adjon meg egy szűrőt egy riasztáshoz. Itt szűrjük a kulcsszavakat a „kivétel” karakterlánccal.
szűrő: - query_string: query: "üzenet: * kivétel *"
Konfigurálja az Alter szolgáltatást a Slack segítségével. Itt létre kell hoznia egy Slack csatornát és egy bejövő webhorgot. Ezután adja hozzá a konfiguráció részleteit az alábbiak szerint.
figyelmeztetés: - "laza" laza: slack_webhook_url: "https: // horgok.laza.com / services / T3YSFN0GL / BFU1HPLKD / BPM2jOlIOzKxbEOHAepu6d26 "slack_username_override:" Fosslinux-Elastic-Bot "slack_channel_override:" #fosslinuxalert "slack_emoji_override:" robot ": robot:" robot: "robot:" robot "
A Slack csatorna létrehozásához kövesse az alábbi lépéseket.
A Slack csatorna beállítása az ElastAlert számára
Ha nincs laza fiókja, egyszerűen regisztrálhat. Lépjen a „laza.com ”, írja be az e-mail címét, majd kattintson az„ ELKEZDÉS ”gombra.
Ezután kattintson az "Új munkaterület létrehozása" elemre, és ellenőrizze az e-mail címét. Most bejelentkezhet és megtekintheti az irányítópultot.
Lépjen az Alkalmazások tallózása -> Egyéni integrációk -> Bejövő webhookok -> Új konfiguráció elemre
Ezután kattintson az "Új csatorna létrehozása" gombra, hogy létrehozzon egy csatornát a riasztások küldéséhez.
Ezután kattintson a "Csatorna létrehozása" gombra, és a Webhook integrációs oldalra kerül.
Kattintson a "Bejövő WebHooks integráció hozzáadása" gombra. Ez létrehozza az integrációs beállításokat.
Tesztszabály
Változtassa a könyvtárat ElastAlert-re.
sudo cd / opt / elastalert /
A konfigurált szabály teszteléséhez futtassa az alábbi parancsot.
sudo elastalert-test-szabály példa_szabályok / példa_frekvencia.yaml
Futtassa az ElastAlert programot
Elindítjuk az ElastAlert háttérszolgáltatásként. Ezt a parancsot az „/ opt / elastalert /” mappában kell futtatni.
sudo python -m elasztalert.elastalert --verbose --rule example_frequency.yaml &
Most az ElastAlert elkezdi ellenőrizni a lekérdezéseket az Elasticsearch oldalon (az ELK szerveren). Ha van meccs, akkor figyelmezteti a Slacket.
Riasztás váltott ki.
A riasztás a Slack Channel csatornára kerül.
Ez az, sikeresen telepítettük és konfiguráltuk az ElastAlert a rugalmas kereséssel, és beállítottuk a Slack riasztásait is. Reméljük, hogy ez a kimerítő útmutató segít az ElastAlert telepítésében és néhány szabály felállításában a riasztások egyszerű elindításához. A kérdéseket és visszajelzéseket a megjegyzések részben várjuk.