GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Elasticsearch, Logstash a Kibana 4 na Ubuntu 14.04 / 15.04

V tomto příspěvku se podíváme, jak nainstalovat Elasticsearch, Logstash a Kibana 4 na Ubuntu 14.04 / 15.04. Tento zásobník ELK nám pomáhá ukládat a spravovat protokoly na centralizovaném místě. Zásobník ELK se skládá ze čtyř životně důležitých součástí, které tvoří skvělý zásobník pro analýzu problémů korelací událostí v konkrétním čase.

Centralizace protokolů usnadní život správcům systému při analýze problémů a problémů, aniž by museli procházet protokoly na každém počítači, a vizualizovat tyto protokoly vedení pro obchodní požadavky.

Součásti:

Logstash – Zpracovává (shromažďuje, analyzuje a odesílá je do Elasticsearch) příchozích protokolů.

Elasticsearch – Ukládá protokoly pocházející z Logstash.

Kibana 4 – Webové rozhraní pro vizualizaci protokolů (má vlastní rozhraní). Výše uvedené tři jsou nainstalovány na serveru.

Logstash-forwarder – instalovaný na klientských počítačích, odesílá protokol do Logstash prostřednictvím protokolu dřevorubců.

Verze aplikace:

Tento článek používá níže uvedené verze softwaru pro ELK stack.

Elastisearch 1.7.0

logstash-1.5.3

Kibana 4.1.1

logstash-forwarder-0.4.0

Předpoklady:

1. Požadovali bychom nainstalovat buď openJDK nebo Oracle JDK. Doporučuje se nainstalovat Oracle JDK. Ověřte verzi Java pomocí následujícího příkazu.

$ java -versionjava verze "1.8.0_11" Java(TM) SE Runtime Environment (sestavení 1.8.0_11-b12)Java HotSpot(TM) 64bitový server VM (sestavení 25.11-b03, smíšený režim)

2. Nainstalujte wget.

$ sudo su -# apt-get update# apt-get install wget

Instalovat Elasticsearch:

Elasticsearch je open source vyhledávací server, který nabízí distribuované vyhledávání a analýzy v reálném čase s webovým rozhraním RESTful. Elasticsearch ukládá všechny protokoly odeslané serverem logstash a zobrazuje zprávy, když kibana4 požaduje úplné vyplnění uživatelského požadavku přes webové rozhraní.

Toto téma pokrývá konfigurační nastavení, která jsou vyžadována pro ELK, můžete se také podívat na Instalace Elasticsearch na CentOS 7 / Ubuntu 14.10 / Linux Mint 17.1, kde najdete podrobné pokyny.

Pojďme nainstalovat Elasticsearch, lze jej stáhnout z oficiálních stránek. Nastavte úložiště a nainstalujte nejnovější verzi Elasticsearch.

# wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -# echo "deb http://packages.elastic.co/elasticsearch/1.7/debian stable main" | sudo tee -a /etc/apt/sources.list.d/elasticsearch-1.7.list# apt-get update &&apt-get install elasticsearch

Nakonfigurujte Elasticsearch tak, aby se spouštěl během spouštění systému.

# systemctl daemon-reload# systemctl enable elasticsearch.service# systemctl start elasticsearch.service

Počkejte alespoň minutu, než se Elasticsearch plně restartuje, jinak se testování nezdaří. Elastisearch by nyní měl naslouchat na 9200 pro zpracování HTTP požadavku, pro získání odpovědi můžeme použít CURL.

# curl -X GET http://localhost:9200{  "status" :200,  "name" :"Thermo",  "cluster_name" :"elasticsearch",  "version" :{    "number" :"1.7. 0",    "build_hash" :"929b9739cae115e73c346cb5f9a6f24ba735a743",    "build_timestamp" :"07-07-16T14:2015-verze, 4" _ na "pbu:31:07Z", _ na "pbu:31:07Z", " Know, for Search"}

Instalovat Logstash:

Logstash je nástroj s otevřeným zdrojovým kódem, který se používá ke shromažďování protokolů, analýze a ukládání při vyhledávání. Ano, logstash je dodáván s webovým rozhraním (kibana3 je vestavěný) pro vizualizaci protokolů, které zde nebudeme diskutovat, místo toho používáme kibana4. Zpracování různých typů událostí lze rozšířit přidáním pluginů, k dnešnímu dni je k dispozici přes 160 pluginů. Pojďme přímo k instalaci.

# echo "deb http://packages.elasticsearch.org/logstash/1.5/debian stable main" | sudo tee -a /etc/apt/sources.list# aktualizace apt-get &&apt-get install logstash

Jakmile je server logstash nainstalován, přejdeme k další sekci

Vytvořit certifikát SSL:

Logstash-forwarder, který bude nainstalován na klient-server za účelem odeslání protokolů, vyžaduje certifikát SSL k ověření identity serveru logstash. Máme dvě možnosti, jak vytvořit SSL certifikát a záleží na konfiguraci logstash-forwarder; pokud použijete název hostitele ( “servers”:[ “server.itzgeek.local:5050” ]), název předmětu SSL by měl odpovídat “server.itzgeek.local”. Pokud používáte ( “servers”:[ “192.168.12.10:5050” ]) IP adresu, musíte vytvořit certifikát SSL s IP SAN s hodnotou 192.168.12.10.

Chcete-li vytvořit certifikát SSL, postupujte podle jedné z metod.

Možnost 1:(Název hostitele FQDN)

Před vytvořením certifikátu se ujistěte, že máte záznam A pro server logstash; ujistěte se, že klientské servery jsou schopny přeložit název hostitele serveru logstash. Pokud nemáte DNS, přidejte prosím položku hostitele pro server logstash; kde 192.168.12.10 je IP adresa serveru logstash a itzgeek je název hostitele vašeho serveru logstash.

# vi /etc/hosts192.168.12.10 server.itzgeek.local

Vytvoříme SSl certifikát. Přejděte do adresáře OpenSSL.

# cd /etc/ssl/

Provedením následujícího příkazu vytvořte certifikát SSL, nahraďte „červený“ svým skutečným serverem logstash.

# openssl req -x509 -nodes -newkey rsa:2048 -days 365 -keyout logstash-forwarder.key -out logstash-forwarder.crt -subj /CN=server.itzgeek.local 

Možnost 2:(IP adresa)

Před vytvořením certifikátu SSL bychom požadovali přidání IP adresy serveru logstash do SubjectAltName v konfiguračním souboru OpenSSL.

# vi /etc/pki/tls/openssl.cnf

Přejděte do sekce „[ v3_ca ]“ a nahraďte „červenou“ IP vaší logstash serveru.

subjectAltName =IP:192.168.12.10

Přejděte do adresáře OpenSSL.

# cd /etc/ssl/

Spuštěním následujícího příkazu vytvořte certifikát SSL.

# openssl req -x509 -days 365 -batch -nodes -newkey rsa:2048 -keyout logstash-forwarder.key -out logstash-forwarder.crt

Tento soubor logstash-forwarder.crt by měl být zkopírován na všechny klientské servery, které odesílají protokoly na server logstash.

Konfigurace Logstash:

Konfigurační soubory Logstash lze nalézt v /etc/logstash/conf.d/, pouze prázdná složka. Potřebovali bychom vytvořit soubor, konfigurační soubory logstash se skládají ze tří sekcí vstup, filtr a výstup; všechny tři sekce lze nalézt buď v jediném souboru, nebo každá sekce bude mít samostatný soubor s koncovkou .conf.

Zde použijeme jeden soubor k umístění vstupní, filtrační a výstupní sekce.

# vi /etc/logstash/conf.d/logstash.conf

V první sekci vložíme položku pro konfiguraci vstupu. Následující konfigurace nastaví lumberjack tak, aby na portu 5050 naslouchal příchozím protokolům z logstash-forwarderu, který je umístěn na klientských serverech, a také bude používat certifikát SSL, který jsme vytvořili dříve.

input {lumberjack {port => 5050type => "logs"ssl_certificate => "/etc/ssl/logstash-forwarder.crt"ssl_key => "/etc/ssl/logstash-forwarder.key"}} 

Ve druhé části vložíme položku pro konfiguraci filtru. Grok je filtr v logstash, který provádí analýzu protokolů před jejich odesláním do Elasticsearch k uložení. Následující filtr grok vyhledá protokoly, které jsou označeny jako „syslog“ a pokusí se je analyzovat, aby vytvořil strukturovaný index.

filtr {if [type] =="syslog" { grok { match => { "message" => "%{SYSLOGLINE}" } } datum {match => [ "timestamp", "MMM d HH:mm :ss", "MMM dd HH:mm:ss" ]} }}

Zvažte návštěvu grokdebuggeru, kde najdete vzory filtrů.

Do třetí části vložíme záznam výstupní konfigurace. Tato sekce definuje umístění, kam se protokoly ukládají; samozřejmě by to mělo být Elasticsearch.

output {elasticsearch { host => localhost index => "logstash-%{+YYYY.MM.dd}" }stdout { codec => rubydebug }}

Nyní spusťte službu logstash.

# systemctl start logstash.service

Protokoly serveru Logstash jsou uloženy v následujícím souboru, což nám pomůže při odstraňování problémů.

# cat /var/log/logstash/logstash.log

Dále nakonfigurujeme logstash-forwarder pro odesílání protokolů na server logstash.

Nakonfigurujte Logstash-forwarder.

Logstash-forwarder je klientský software, který odesílá protokoly na server logstash, měl by být nainstalován na všech klientských serverech. Logstash-forwarder lze stáhnout z oficiálních webových stránek nebo jej můžete stáhnout pomocí následujícího příkazu do terminálu a nainstalovat.

# wget https://download.elastic.co/logstash-forwarder/binaries/logstash-forwarder_0.4.0_amd64.deb# dpkg -i logstash-forwarder_0.4.0_amd64.deb

Logstash-forwader používá certifikát SSL k ověření identity serveru logstash, takže zkopírujte soubor logstash-forwarder.crt, který jsme dříve vytvořili, ze serveru logstash do klienta.

# scp -pr [email protected]://etc/ssl/logstash-forwarder.crt /etc/ssl

Otevřete konfigurační soubor.

# vi /etc/logstash-forwarder.conf

V části „síť“ uveďte server logstash s číslem portu a cestou k certifikátu logstash-forwarder, který jste zkopírovali ze serveru logstash.

Tato sekce definuje logstash-forwarder pro odesílání protokolů na server logstash „server.itzgeek.local“ na portu 5050 a klient ověřuje identitu serveru pomocí SSL certifikátu. Poznámka:Pokud používáte IP SAN, nahraďte „server.itzgeek.local“ zapouzdřenou IP adresou.

"servers":[ "server.itzgeek.local:5050" ],"ssl ca":"/etc/ssl/logstash-forwarder.crt","timeout":15

V části „soubory“ konfiguruje, co všechno jsou soubory k odeslání. V tomto článku nakonfigurujeme logstash-forwarder tak, aby posílal protokoly (/var/log/syslog) na server logstash s typem „syslog“.

{"paths":["/var/log/syslog"],"fields":{ "type":"syslog" }}

Restartujte službu.

# systemctl start logstash-forwarder.service

V případě jakéhokoli problému se můžete podívat na soubor protokolu.

# cat /var/log/logstash-forwarder/logstash-forwarder.err

Konfigurace Kibana 4:

Kidbana poskytuje vizualizaci protokolů, stáhněte si ji z oficiálních stránek. Ke stažení do terminálu použijte následující příkaz.

# wget https://download.elastic.co/kibana/kibana/kibana-4.1.1-linux-x64.tar.gz

Rozbalte a přesuňte jej do /opt/

# tar -zxvf kibana-4.1.1-linux-x64.tar.gz# mv kibana-4.1.1-linux-x64 /opt/kibana4

Povolte soubor PID pro Kibana, je to nutné k vytvoření inicializačního souboru systemd.

# sed -i 's/#pid_file/pid_file/g' /opt/kibana4/config/kibana.yml

Kibana lze spustit spuštěním /opt/kibana4/bin/kibana, pro spuštění kibana jako serveru vytvoříme soubor systemd.

# vi /etc/systemd/system/kibana4.service[Unit]Description=Kibana 4 Web InterfaceAfter=elasticsearch.serviceAfter=logstash.service[Service]ExecStartPre=/bin/rm -rf /var/run/kibana. pidExecStart=/opt/kibana4/bin/kibanaExecReload=/bin/kill -9 $(cat /var/run/kibana.pid) &&/bin/rm -rf /var/run/kibana.pid &&/opt/kibana4/ bin/kibanaExecStop=/bin/kill -9 $(cat /var/run/kibana.pid)[Install]WantedBy=multi-user.target

Spusťte a povolte automatické spouštění kibana při spuštění systému.

# systemctl spustit kibana4.service# systemctl povolit kibana4.service

Vstupte na svůj portál kibana kliknutím na následující odkaz

http://vaše-ip-adresa:5601/

Získáte následující stránku, kde musíte zmapovat logstash index pro použití kibany. Přejděte dolů na Název časového pole a vyberte

@timestamp

Jakmile vyberete, přesměruje vás na hlavní stránku kibana.

Kibana nepřichází s žádným přístupem k portálu chráněným heslem. S Nginx můžeme nakonfigurovat tak, aby uživatel před vstupem na portál splnil autentizační mechanismus.

To je vše, úspěšně jste nakonfigurovali zásobník ELK pro centralizovanou správu protokolů.


Ubuntu
  1. Jak nainstalovat a používat Elasticsearch na Ubuntu 20.04

  2. Jak nainstalovat Elasticsearch, Logstash a Kibana 4 na CentOS 7 / RHEL 7

  3. Nainstalujte Elasticsearch, Logstash a Kibana na Ubuntu 20.04

  1. Jak nainstalovat Logstash na Ubuntu 18.04

  2. Jak nainstalovat Elasticsearch, Logstash a Kibana 4 na Ubuntu 14.04 / 15.04

  3. Jak nainstalovat a nakonfigurovat Elasticsearch na Ubuntu 20.04

  1. Jak nainstalovat Elasticsearch a Kibana na Linux

  2. Jak nainstalovat PHP 7.4 a 8.0 na Ubuntu 18.04 nebo 20.04

  3. Jak nainstalovat a nakonfigurovat Elasticsearch na Ubuntu 18.04