Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
project:elk [2018/02/23 14:25] cyberian |
project:elk [2018/02/27 09:34] cyberian |
||
---|---|---|---|
Line 33: | Line 33: | ||
===== ElasticSearch ===== | ===== ElasticSearch ===== | ||
- | Pozor na verzi, neinstalovat zbrkle :). Měl jsem v apt prehistorickou verzi 1.6.2. Přidáme tedy repozitář no novou verzi. Což je v době tohoto návodu 6.2.1. Udržujte vždy stejné verze všech 3 služeb stejné, jinak vás čekají ošklivé komplikace. Nejprve si přidáme apt-key: | + | Pozor na verzi, neinstalovat zbrkle :). Měl jsem v apt prehistorickou verzi 1.6.2. Přidáme tedy repozitář no novou verzi. Což je v době tohoto návodu 6.2.1. Udržujte vždy verze všech 3 služeb stejné, jinak vás čekají ošklivé komplikace. |
+ | Nejprve si přidáme apt-key: | ||
<code>wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add - | <code>wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add - | ||
Line 46: | Line 47: | ||
Nastavit si network host na IP daného PC, případně pokud hodláte mít všechny služby na jednom PC, pak na localhost, aby se nikdo nemohl přihlásit z venku. Warn: Přes http API je totiž možné server klidně i vypnout :) | Nastavit si network host na IP daného PC, případně pokud hodláte mít všechny služby na jednom PC, pak na localhost, aby se nikdo nemohl přihlásit z venku. Warn: Přes http API je totiž možné server klidně i vypnout :) | ||
- | Po uložení provést restart služby a její přidání do příslušného runlevelu. Na Debianu 9 je však systemd. | + | Po uložení provést restart služby a její přidání do příslušného runlevelu. Na Debianu 9 je systemd. |
<code>service elasticsearch restart | <code>service elasticsearch restart | ||
update-rc.d elasticsearch defaults 95 10 | update-rc.d elasticsearch defaults 95 10 | ||
Line 53: | Line 54: | ||
Ke kontrole: | Ke kontrole: | ||
- | *Zkontrolovat zda po startu systému startuje elasticsearch (doporučuji použít můj oblíbený htop na přehled spuštěných procesů) nebo ps -aux | + | *Zkontrolovat zda po startu systému startuje elasticsearch |
+ | <code>systemctl status elasticsearch</code> | ||
*Zkontrolovat zda se zobrazí při http přístupu na port 9200 něco podobného: | *Zkontrolovat zda se zobrazí při http přístupu na port 9200 něco podobného: | ||
Line 67: | Line 69: | ||
*server.name dle libosti | *server.name dle libosti | ||
*elasticsearch.url: "http://192.168.10.2:9200" | *elasticsearch.url: "http://192.168.10.2:9200" | ||
- | *logging.dest: /var/log/kibana/kibana.log (zde opatrně. Pokud zvolíte vlastní cestu, musí mít user pod kterým spouštíte kibanbu přístup do adr. /var/log/kibana pro zápis a čtení | + | *logging.dest: /var/log/kibana/kibana.log (zde opatrně. Pokud zvolíte vlastní cestu, musí mít user pod kterým spouštíte kibanu přístup do adr. /var/log/kibana pro zápis a čtení |
{{:project:16x16warning-icon.png?nolink |}}**na začátku doporučuji měnit pouze server.host ať si nekomplikujete řešení případných chyb** | {{:project:16x16warning-icon.png?nolink |}}**na začátku doporučuji měnit pouze server.host ať si nekomplikujete řešení případných chyb** | ||
Line 117: | Line 119: | ||
<code>apt-get update | <code>apt-get update | ||
Apt-get –y install logstash</code> | Apt-get –y install logstash</code> | ||
+ | Dále nainstalujeme grok k parsování dat: | ||
+ | <code>apt-get –y install grok</code> | ||
===== Generování SSL certifikátů ===== | ===== Generování SSL certifikátů ===== | ||
Line 138: | Line 142: | ||
===== Konfigurace Logstash ===== | ===== Konfigurace Logstash ===== | ||
- | Konfigurační soubory jsou ve formátu json, takže pozor na mezery a odsazení | + | Konfigurační soubory jsou ve formátu json, takže pozor na mezery a odsazení. |
+ | Vytvoříme konfigurační soubory pro vstup, filtraci a výstup do elasticsearch. | ||
+ | |||
+ | ==== Vstup ==== | ||
Vytvoříme soubor 02-beats-input.conf: | Vytvoříme soubor 02-beats-input.conf: | ||
Line 152: | Line 159: | ||
} | } | ||
}</code> | }</code> | ||
+ | |||
+ | ==== Filtr ==== | ||
Vytvoříme soubor 10-syslog-filter.conf: | Vytvoříme soubor 10-syslog-filter.conf: | ||
Line 173: | Line 182: | ||
Tento filter se dívá po logu typu „syslog“ skrze FileBeat a pokouší se použít grok k parsování příchozích syslog logů k tomu, aby je udělal strukturované a dotazovatelné. | Tento filter se dívá po logu typu „syslog“ skrze FileBeat a pokouší se použít grok k parsování příchozích syslog logů k tomu, aby je udělal strukturované a dotazovatelné. | ||
- | Dále nainstalujeme grok k parsování dat: | ||
- | <code>apt-get –y install grok</code> | ||
Nyní vytvoříme konfigurační soubor 30-elasticsearch-output.conf: | Nyní vytvoříme konfigurační soubor 30-elasticsearch-output.conf: | ||
+ | |||
+ | ==== Výstup ==== | ||
<code>nano /etc/logstash/conf.d/30-elasticsearch-output.conf | <code>nano /etc/logstash/conf.d/30-elasticsearch-output.conf | ||
Line 202: | Line 211: | ||
</code> | </code> | ||
Po restartu se ujistíme o tom, že služba běží: | Po restartu se ujistíme o tom, že služba běží: | ||
+ | <code>systemctl status logstash</code> | ||
+ | {{ :project:logstash01.jpg?nolink |}} | ||
+ | ===== Konfigurace FileBeat ===== | ||
+ | Nastavíme sekci pro Filebeat prospectors pro sbírání logů o které máme zájem. | ||
+ | <code>nano /etc/filebeat/filebeat.yml | ||
+ | -type: log | ||
+ | enabled: true | ||
+ | paths: | ||
+ | - /var/log/remote/*/*.log #pouze logy ze subadresaru remote | ||
+ | </code> | ||
- | ==== poznámky ==== | + | ===== poznámky ===== |
kibana - vega.github.io - kibana custom graphs with vega | kibana - vega.github.io - kibana custom graphs with vega | ||
Line 215: | Line 234: | ||
===== Zdroje ===== | ===== Zdroje ===== | ||
- | 1. https://www.digitalocean.com/community/tutorials/how-to-install-elasticsearch-logstash-and-kibana-elk-stack-on-ubuntu-14-04 | + | 1. How to install ELK on Ubuntu https://www.digitalocean.com/community/tutorials/how-to-install-elasticsearch-logstash-and-kibana-elk-stack-on-ubuntu-14-04 |
+ | |||
+ | 2. Complete Guide to ELK https://logz.io/learn/complete-guide-elk-stack/#An-Elasticsearch-Tutorial | ||
- | 2. https://logz.io/learn/complete-guide-elk-stack/#An-Elasticsearch-Tutorial | + | 3. Set up Prospectors https://www.elastic.co/guide/en/beats/filebeat/master/configuration-filebeat-options.html |