V tomto tutoriálu vám ukážeme, jak nainstalovat ELK Stack na CentOS 7. Pro ty z vás, kteří nevěděli, ELK stack je populární open-source platforma pro správu protokolů. Používá se jako centralizovaná správa pro ukládání, analýzu a prohlížení protokolů. Centralizovaná správa usnadňuje studium protokolů a identifikaci případných problémů pro libovolný počet serverů.
Tento článek předpokládá, že máte alespoň základní znalosti Linuxu, víte, jak používat shell, a co je nejdůležitější, hostujete svůj web na svém vlastním VPS. Instalace je poměrně jednoduchá a předpokládá, že běží v účtu root, pokud ne, možná budete muset přidat 'sudo
‘ k příkazům pro získání oprávnění root. Ukážu vám krok za krokem instalaci ELK Stack (Elasticsearch, Logstash a Kibana) na server CentOS 7.
Předpoklady
- Server s jedním z následujících operačních systémů:CentOS 7.
- Abyste předešli případným problémům, doporučujeme použít novou instalaci operačního systému.
- Přístup SSH k serveru (nebo stačí otevřít Terminál, pokud jste na počítači).
non-root sudo user
nebo přístup kroot user
. Doporučujeme jednat jakonon-root sudo user
, protože však můžete poškodit svůj systém, pokud nebudete při jednání jako root opatrní.
Nainstalujte ELK Stack na CentOS 7
Krok 1. Nejprve začněme tím, že zajistíme, aby byl váš systém aktuální.
yum clean allyum -y update
Krok 2. Instalace Java.
Potřebujete Java Runtime Environment (JRE), protože Elasticsearch je napsán v programovacím jazyce Java, můžete si nainstalovat balíček OpenJDK, který obsahuje JRE:
yum install java-1.8.0-openjdk.x86_64
Ověřte verzi Java:
[[email protected] ~]# java -versionopenjdk verze "1.8.0_131" Runtime prostředí OpenJDK (sestavení 1.8.0_131-b12)OpenJDK 64-Bit Server VM (sestavení 25.131-b12, smíšený režim)
Krok 3. Instalace Elasticsearch.
Elasticsearch lze nainstalovat pomocí správce balíčků přidáním úložiště balíčků Elastic:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.0.0.rpm
Potom nainstalujte balíček RPM, který jste právě stáhli:
rpm -ivh elasticsearch-5.0.0.rpm
Spusťte a povolte službu:
systemctl povolit elasticsearchsystemctl spustit elasticsearch
Nyní spusťte z terminálu následující příkaz a zkontrolujte, zda Elasticsearch funguje správně:
curl -X GET http://localhost:9200
Měli byste získat následující výstup:
{"name" :"idroot.us","cluster_name" :"elasticsearch","cluster_uuid" :"k27ZZFJPTaOtwg6_pyzEiw","version" :{"number" :"5.5.0","build_hash" :" 2cfe0df","build_date" :"2017-05-29T16:05:51.443Z","build_snapshot" :false,"lucene_version" :"6.5.1"},"tagline" :"Víte, pro vyhledávání"}Krok 4. Instalace Kibana.
Instalace Kibany je velmi jednoduchá, můžete ji snadno nainstalovat pomocí balíčku RPM:
wget https://artifacts.elastic.co/downloads/kibana/kibana-5.5.0-x86_64.rpmNyní stačí provést následující příkaz, abyste mohli spustit službu Kibana:
systemctl daemon-reloadsystemctl start kibanaKibana je nyní nainstalována a funguje v našem systému. Chcete-li zkontrolovat webovou stránku, otevřete webový prohlížeč a přejděte na níže uvedenou adresu URL (použijte IP adresu svého hostitele ELK):
http://localhost:5601Krok 5. Nakonfigurujte zásobník ELK.
Nejprve musíme vytvořit certifikát SSL. Tento certifikát bude sloužit k zabezpečení komunikace mezi klienty logstash a filebeat. Před vytvořením certifikátu SSL vytvoříme zadání IP adresy našeho serveru v
openssl.cnf
:nano /etc/ssl/openssl.cnfHledejte sekci s ‘subjectAltName’ a přidejte do ní IP adresu svého serveru:
subjectAltName =IP:10.20.30.100Nyní změňte adresář na
/etc/ssl
a vytvořte certifikát SSL:cd /etc/sslopenssl req -x509 -days 365 -batch -nodes -newkey rsa:2048 -keyout logstash-forwarder.key -out logstash_frwrd.crtKrok 6. Nakonfigurujte Logstash.
Nyní vytvoříme konfigurační soubor pro logstash ve složce ‘
/etc/logstash/conf.d
‘:[[email protected] ~]# nano /etc/logstash/conf.d/logstash.conf# input sectioninput { beats { port => 5044 ssl => true ssl_certificate => "/etc/ssl/logstash_frwrd. crt" ssl_key => "/etc/ssl/logstash-forwarder.key" congestion_threshold => "40" }}Další sekce, tj. „sekce filtru“, analyzuje protokoly před jejich odesláním do Elasticsearch:
# Filter sectionfilter {if [type] =="syslog" { grok { match => { "message" => "%{SYSLOGLINE}" } } datum {match => [ "timestamp", "MMM d HH :mm:ss", "MMM dd HH:mm:ss" ]} }}Poslední sekce je „výstupní sekce“ a definuje umístění pro uložení protokolů:
# output sectionoutput { elasticsearch { hosts => localhost index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}" }stdout { kodek => rubydebug }}Nyní uložte soubor a ukončete. Nyní spusťte službu logstash a povolte ji při spouštění:
systemctl spustit logstashsystemctl povolit logstashKrok 7. Instalace Filebeat na klienty.
Nyní, abyste mohli komunikovat se zásobníkem ELK, je třeba nainstalovat Filebeat na všechny klientské počítače:
$ nano /etc/yum.repos.d/filebeat.repo[beats]name=Elastic Beats Repositorybaseurl=https://packages.elastic.co/beats/yum/el/$basearchenabled=1gpgkey=https:/ /packages.elastic.co/GPG-KEY-elasticsearchgpgcheck=1Nyní nainstalujte filebeat pomocí následujícího příkazu:
yum install filebeatPo instalaci filebeat zkopírujte certifikát SSL ze serveru zásobníku ELK do ‘
/etc/ssl
'. Dále provedeme změny v konfiguračním souboru filebeat pro připojení klienta k serveru ELK:nano /etc/filebeat/filebeat.ymlProveďte v souboru následující změny:
. . .paths:– /var/log/*.log. . ... .document_type:syslog. . ... .output:logstash:hosts:[“10.20.30.100:5044”]tls:certificate_authorities:[“/etc/ssl/logstash_frwrd.crt”]. . .Nyní spusťte službu a povolte ji při spouštění:
systemctl restart filebeatsystemctl povolit filebeatKonfigurace na straně serveru i klienta jsou nyní dokončeny. Nyní se můžeme přihlásit do webového rozhraní Kibana a vyhledat analyzované protokoly.
http://vaše-ip-adresa:5601/Blahopřejeme! Úspěšně jste nainstalovali ELK Stack na CentOS 7. Děkujeme, že jste použili tento návod k instalaci ELK Stack (Elasticsearch, Logstash a Kibana) na systémy CentOS 7. Další pomoc nebo užitečné informace , doporučujeme zkontrolovat oficiální web ELK Stack.
Cent OS