Ubuntu

Hoe ELK Stack op Ubuntu 18 te installeren.04

Hoe ELK Stack op Ubuntu 18 te installeren.04

ELK Stack is 's werelds populairste platform voor logbeheer. Het is een verzameling open-sourceproducten, waaronder Elasticsearch, Logstash en Kibana. Al deze 3 producten worden ontwikkeld, beheerd en onderhouden door Elastic.

ELK Stack is een krachtig en open source platform dat een enorme hoeveelheid gelogde gegevens kan beheren. Het invoerlogboek is over het algemeen afkomstig van een grafische webinterface (GUI).

Installeer en configureer ELK Stack op Ubuntu

In deze tutorial gaan we gebruiken filebeat om loggegevens naar Logstash te verzenden. Beats zijn lichtgewicht gegevensverzenders en om te beginnen zouden we de agent op servers moeten installeren.

Stap 1) Java 8 . installeren

ElasticSearch ondersteunt Java 8 en 9, maar het probleem is dat Logstash alleen compatibel is met Java 8. Java 9 wordt nog niet ondersteund. Daarom gaan we Oracle Java 8 installeren.

Start de Terminal en voeg Oracle Java 8-repository toe, gevolgd door een systeemupdate en daadwerkelijke installatie.

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt install oracle-java8-set-default

Let op de Terminal the. U moet akkoord gaan met de vensters van de licentieovereenkomst en 'ja' selecteren om door te gaan. Nadat de installatie is voltooid, kunt u de Java-versie controleren met behulp van de volgende opdrachten:

.sudo java -versie

Java-versiecontrole

sudo echo $JAVA_HOME

Controleer Java Home

Stap 2) Elasticsearch installeren en configureren

Laten we beginnen met wget opdracht om Elasticsearch te downloaden gevolgd door openbare ondertekeningssleutel:

sudo wget -qO - https://artifacts.elastisch.co/GPG-KEY-elastisch zoeken | sudo apt-key add -

Installeer ten tweede het pakket apt-transport-https (distro's op basis van Debian hebben dit nodig).

sudo apt-get install apt-transport-https

Voeg de repository toe:

echo "deb https://artifacts.elastisch.co/pakketten/6.x/apt stable main" | sudo tee -a /etc/apt/sources.lijst.d/elastisch-6.X.lijst

Werk de repolijst bij en installeer het pakket:

sudo apt-get update
sudo apt-get install elasticsearch

Laten we "elastisch zoeken" wijzigen.yml” bestand:

sudo vim /etc/elasticsearch/elasticsearch.yml

Uncomment "netwerk".host" en "http.haven". De volgende configuratie moet worden toegevoegd:

netwerk.host: localhost http.poort: 9200

Sla vervolgens het bestand op en sluit het.

Om ervoor te zorgen dat ElasticSearch naadloos werkt, schakelt u het in bij het opstarten en Start ElasticSearch.

sudo systemctl activeer elasticsearch.onderhoud
sudo systemctl start elasticsearch.onderhoud

Installatie controleren:

sudo curl -XGET 'localhost:9200/?mooi'

Controleer ElasticSearch

Stap 3) Kibana installeren

Laten we nu beginnen met het installeren van Kibana en de Kibana-instellingen wijzigen:

sudo apt-get install kibana
sudo vim /etc/kibana/kibana.yml

Maak een opmerking over de volgende regels:

server.poort: 5601 server.host: "localhost" elasticsearch.url: "http://localhost:9200"

Opslaan en het bestand afsluiten.

Schakel het in bij het opstarten en start de Kibana-service:

sudo systemctl enable kibana.onderhoud
sudo systemctl start kibana.onderhoud

Stap 4) Nginx configureren als Reverse Proxy voor Kibana

Laten we in dezelfde regels Nginx installeren, configureren en de service starten. Gebruik de volgende opdrachten één voor één:

sudo apt-get install nginx apache2-utils

Virtuele host configureren:

sudo vim /etc/nginx/sites-available/elk

Voeg de volgende configuratie toe aan het bestand:

 server  luister 80; servernaam elk.fosslinux.com; auth_basic "Beperkte toegang"; auth_basic_user_file /etc/nginx/.elkgebruikersgeheim; locatie /  proxy_pass http://localhost:5601; proxy_http_versie 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Verbinding 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade;  

Maak een gebruikers- en wachtwoordbestand voor webbrowserverificatie:

sudo htpasswd -c /etc/nginx/.elkusergeheim elkusr

ELK-verificatie

Voer wachtwoord in en herhaal. Controleer Nginx-configuraties:

sudo nginx -t

Schakel Nginx in bij het opstarten van het systeem en start de service opnieuw:

sudo systemctl nginx inschakelen.onderhoud
sudo systemctl herstart nginx.onderhoud

Stap 5) Logstash installeren en configureren

Installeer Logstash:

sudo apt-get install logstash

Hier gaan we een SSL-certificaatsleutel genereren om de logoverdracht van de File Beat-client te beveiligen. Wijzig het "hosts"-bestand voordat u het SSL-certificaat aanmaakt.

sudo vim /etc/hosts

Voeg de volgende regel toe aan het bestand. Zorg ervoor dat u de IP- en servernaam wijzigt in de uwe.

172.31.31.158 elk-server elk-server

Als u klaar bent, slaat u het bestand op en sluit u het af.

Verander nu de map in Logstash.

sudo cd /etc/logstash/

Maak een map voor SSL:

sudo mkdir ssl

SSL-certificaat genereren. Wijzig elk-server in uw servernaam in de onderstaande opdracht:.

sudo openssl req -subj '/CN=elk-server/' -x509 -days 3650 -batch -nodes -newkey rsa:2048 -keyout ssl/logstash-forwarder.key -out ssl/logstash-forwarder.crt

Maak de volgende bestanden aan in "/etc/logstash/conf.d”.

sudo cd /etc/logstash/conf.d/

maak een filebeat-invoerbestand met vim.

sudo vim filebeat-invoer.conf

Voeg er de volgende regels aan toe.

input  beats  port => 5443 type => syslog ssl => true ssl_certificate => "/etc/logstash/ssl/logstash-forwarder.crt" ssl_key => "/etc/logstash/ssl/logstash-forwarder.sleutel"  

Sla het bestand op en sluit het en maak een nieuw configuratiebestand aan.

sudo vim syslog-filter.conf

Voeg de volgende inhoud toe:.

filter  if [type] == "syslog"  grok  match =>  "message" => "%SYSLOGTIMESTAMP:syslog_timestamp %SYSLOGHOST:syslog_hostname %DATA:syslog_program(?:\[%POSINT:syslog_pid\])?: %GREEDYDATA:syslog_message"  add_field => [ "received_at", "%@timestamp" ] add_field => [ "received_from", "%host" ]  date  match => [ "syslog_timestamp" , "MMM d UU:mm:ss", "MMM dd UU:mm:ss" ]   

Opslaan en het bestand afsluiten. Aanmaken elastisch zoeken uitvoerbestand.

sudo vim output-elastisch zoeken.conf

Voeg er de volgende regels aan toe.

output  elasticsearch  hosts => ["localhost:9200"] hosts => "localhost:9200" manage_template => false index => "%[@metadata][beat]-%+YYYY.MM.dd" document_type => "%[@metadata][type]"  

Laten we Logstash bij het opstarten inschakelen en de service starten:

sudo systemctl logstash inschakelen.onderhoud
sudo systemctl start logstash.onderhoud

Stap 6) Filebeat installeren en configureren op clientservers

Begin met het bewerken van de gastheren bestand om elk host-items toe te voegen. Zorg ervoor dat u het IP-adres en de naam vervangt door die van u.

sudo vim /etc/hosts
172.31.31.158 elk-server

Opslaan en het bestand afsluiten.

Download en installeer de openbare ondertekeningssleutel:

sudo wget -qO - https://artifacts.elastisch.co/GPG-KEY-elastisch zoeken | sudo apt-key add -

Installeer 'apt-transport-https' en voeg opslagplaats toe.

sudo apt-get install apt-transport-https
sudo echo "deb https://artifacts.elastisch.co/pakketten/6.x/apt stable main" | sudo tee -a /etc/apt/sources.lijst.d/elastisch-6.X.lijst

Update repo en installeer Filebeat.

sudo apt-get update
sudo apt-get install filebeat

Filebeat-configuraties wijzigen.

sudo vim /etc/filebeat/filebeat.yml

Zoek de volgende regel en wijzig de waarde in "true".

ingeschakeld: waar

Hier wijzigen we het logpad niet en Filebeat stuurt alle logs door in de map "var/log"

 paden: - /var/log/*.log

Maak commentaar op de volgende regels:

uitvoer.logstash: # De Logstash host hosts: ["elk-server:5443"] ssl.certificaat_autoriteiten: ["/etc/filebeat/logstash-forwarder.crt"]

Commentaar Elastisch zoeken:

#output.elasticsearch: # Array van hosts om verbinding mee te maken. # hosts: ["localhost:9200"]

Opslaan en het bestand afsluiten.

Ga nu naar de ELK-server en haal "logstash-forwarder" op.crt” inhoud

sudo cat /etc/logstash/ssl/logstash-forwarder.crt

SSL Crt

kopieer uitvoer en ga dan naar Elk client-server.

Een certificaatbestand maken

sudo vim /etc/filebeat/logstash-forwarder.crt

voeg gekopieerde uitvoer in en sla op en sluit af.

Inschakelen filebeat bij opstarten van het systeem Start filebeat onderhoud.

sudo systemctl filebeat inschakelen.onderhoud
sudo systemctl start filebeat.onderhoud

Stap 7) Door het Kibana-dashboard bladeren

Start uw favoriete webbrowser en voer de domeinnaam in gevolgd door gebruikersnaam en wachtwoord.

http://elk.fosslinux.com

Browserverificatie

Voer de aangemaakte gebruikersnaam en het wachtwoord in. Je zou de Kibana-welkomstpagina moeten zien. Klik op de knop "Verken mijn eigen".

Kibana-welkomstpagina

U moet worden doorverwezen naar de Kibana-startpagina.

Kibana-startpagina

Klik op "Ontdekken" aan de linkerkant. Klik op "Indexpatroon maken".

Index maken

Definieer vervolgens het indexpatroon 'filebeat-*'.

Index definiëren

Klik op volgende en kies @timestamp en klik op 'Indexpatroon maken'.

Kies Tijdstempel

Indexpatroon moet worden gemaakt.

Indexpatroon gemaakt

Klik op het menu "Ontdekken" om de serverlogboeken te bekijken.

Logboeken ontdekken

Logboeken worden weergegeven volgens de tijdstempel. Klik op een tijdstempel om het uit te vouwen en de inhoud van het logbestand en de details ervan te bekijken.

Logbestanden controleren

Als je hier bent aangekomen, betekent dit dat je de ELK-stack met succes hebt geïnstalleerd en geconfigureerd met filebeat. Heb je problemen? Laat het ons gerust weten in de reacties hieronder.

OSD-overlay tonen in Linux-apps en -games op volledig scherm
Het spelen van games op volledig scherm of het gebruik van apps in de modus volledig scherm zonder afleiding kan u afsnijden van relevante systeeminfo...
Top 5 Game Capture-kaarten
We hebben allemaal gezien en genoten van streaming gameplays op YouTube. PewDiePie, Jakesepticye en Markiplier zijn slechts enkele van de beste gamers...
Hoe een spel op Linux te ontwikkelen
Tien jaar geleden zouden niet veel Linux-gebruikers voorspellen dat hun favoriete besturingssysteem ooit een populair spelplatform voor commerciële vi...