GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara menginstal Elasticsearch, Logstash dan Kibana 4 di Ubuntu 14.04 / 15.04

Pada postingan kali ini, akan terlihat bagaimana cara install Elasticsearch, Logstash dan Kibana 4 di Ubuntu 14.04/15.04. Tumpukan ELK ini membantu kami menyimpan dan mengelola log di lokasi terpusat. Tumpukan ELK terdiri dari empat komponen penting yang membuat tumpukan luar biasa untuk menganalisis masalah dengan menghubungkan peristiwa pada waktu tertentu.

Memusatkan log akan membuat kehidupan admin sistem lebih mudah untuk menganalisis masalah dan masalah tanpa pergi ke setiap mesin untuk log, dan memvisualisasikan log tersebut ke manajemen untuk kebutuhan bisnis.

Komponen:

Logstash – Ini memproses (Mengumpulkan, mengurai, dan mengirimkannya ke Elasticsearch) dari log yang masuk.

Elasticsearch – Menyimpan log yang berasal dari Logstash.

Kibana 4 – Antarmuka web untuk memvisualisasikan log (memiliki antarmuka sendiri). Tiga di atas diinstal pada server.

Logstash-forwarder – Diinstal pada mesin klien, mengirimkan log ke Logstash melalui protokol penebang pohon.

Versi aplikasi:

Artikel ini menggunakan versi perangkat lunak untuk ELK stack di bawah ini.

Elastisearch 1.7.0

logstash-1.5.3

Kibana 4.1.1

logstash-forwarder-0.4.0

Prasyarat:

1. Kita perlu menginstal openJDK atau Oracle JDK, Disarankan untuk menginstal Oracle JDK. Verifikasi versi java dengan menggunakan perintah berikut.

$ java -versionjava version "1.8.0_11"Java(TM) SE Runtime Environment (build 1.8.0_11-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mode campuran)

2. Instal wget.

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

Instal Elasticsearch:

Elasticsearch adalah server pencarian open source, ia menawarkan pencarian dan analitik terdistribusi realtime dengan antarmuka web RESTful. Elasticsearch menyimpan semua log yang dikirim oleh server logstash dan menampilkan pesan ketika kibana4 meminta untuk memenuhi permintaan pengguna melalui antarmuka web.

Topik ini mencakup pengaturan konfigurasi yang diperlukan untuk ELK, Anda juga dapat melihat Instal Elasticsearch di CentOS 7 / Ubuntu 14.10 / Linux Mint 17.1 untuk instruksi terperinci.

Mari kita instal Elasticsearch, itu dapat diunduh dari situs web resmi. Siapkan repositori dan instal versi terbaru dari 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

Konfigurasikan Elasticsearch untuk memulai selama startup sistem.

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

Tunggu, setidaknya satu menit untuk membiarkan Elasticsearch dimulai ulang sepenuhnya, jika tidak, pengujian akan gagal. Elastisearch sekarang harus mendengarkan pada 9200 untuk memproses permintaan HTTP, kita dapat menggunakan CURL untuk mendapatkan respons.

# curl -X GET http://localhost:9200{  "status" :200,  "name" :"Thermo",  "cluster_name" :"elasticsearch",  "version" :{    "number" :"1.7. 0",    "build_hash" :"929b9739cae115e73c346cb5f9a6f24ba735a743",    "build_timestamp" :"2015-07-16T14:31:07Z",    "build_snapshot" :false,    "4.1 " " :"4.1 " " :Tahu, untuk Penelusuran"}

Instal Logstash:

Logstash adalah alat sumber terbuka, yang digunakan untuk mengumpulkan log, menguraikan, dan menyimpannya dalam pencarian. Ya, logstash hadir dengan antarmuka web (kibana3 built-in) untuk memvisualisasikan log yang tidak akan kita bahas di sini sebagai gantinya kita menggunakan kibana4. Pemrosesan berbagai jenis acara dapat diperpanjang dengan menambahkan plugin ke dalamnya, lebih dari 160 plugin tersedia sampai sekarang. Mari kita langsung ke instalasi.

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

Setelah server logstash terinstal, mari beralih ke bagian berikutnya

Buat sertifikat SSL:

Logstash-forwarder yang akan diinstal pada client-server untuk mengirimkan log memerlukan sertifikat SSL untuk memvalidasi identitas server logstash. Kami memiliki dua opsi untuk membuat sertifikat SSL dan itu tergantung pada konfigurasi logstash-forwarder; jika Anda menggunakan nama host ( "server":[ "server.itzgeek.local:5050" ]), nama subjek SSL harus cocok dengan "server.itzgeek.local". Jika Anda menggunakan ( "server":[ "192.168.12.10:5050" ]) alamat ip, Anda harus membuat sertifikat SSL dengan IP SAN dengan nilai 192.168.12.10.

Ikuti salah satu metode untuk membuat sertifikat SSL.

Opsi 1:(Nama Inang FQDN)

Sebelum membuat sertifikat, pastikan Anda memiliki catatan A untuk server logstash; memastikan bahwa server klien dapat menyelesaikan nama host dari server logstash. Jika Anda tidak memiliki DNS, silakan tambahkan entri host untuk server logstash; di mana 192.168.12.10 adalah alamat ip server logstash dan itzgeek adalah nama host server logstash Anda.

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

Mari kita buat sertifikat SSL. Buka direktori OpenSSL.

# cd /etc/ssl/

Jalankan perintah berikut untuk membuat sertifikat SSL, ganti yang “merah” dengan server logstash asli Anda.

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

Opsi 2:(Alamat IP)

Sebelum membuat sertifikat SSL, kita perlu menambahkan alamat ip server logstash ke SubjectAltName di file konfigurasi OpenSSL.

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

Buka bagian “[ v3_ca ]” dan ganti yang “merah” dengan ip server logstash Anda.

subjectAltName =IP:192.168.12.10

Buka direktori OpenSSL.

# cd /etc/ssl/

Jalankan perintah berikut untuk membuat sertifikat SSL.

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

Logstash-forwarder.crt ini harus disalin ke semua server klien yang mengirim log ke server logstash.

Konfigurasikan Logstash:

File konfigurasi logstash dapat ditemukan di /etc/logstash/conf.d/, hanya folder kosong. Kita perlu membuat file, file konfigurasi logstash terdiri dari tiga bagian input, filter dan output; ketiga bagian dapat ditemukan baik dalam satu file atau setiap bagian akan memiliki file terpisah yang diakhiri dengan .conf.

Di sini kita akan menggunakan satu file untuk menempatkan bagian input, filter, dan output.

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

Di bagian pertama, kami akan memasukkan entri untuk konfigurasi input. Konfigurasi berikut mengatur penebang untuk mendengarkan pada port 5050 untuk log masuk dari logstash-forwarder yang berada di server klien, juga akan menggunakan sertifikat SSL yang kita buat sebelumnya.

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

Di bagian kedua, kami akan memasukkan entri untuk konfigurasi filter. Grok adalah filter di logstash, yang melakukan penguraian log sebelum mengirimkannya ke Elasticsearch untuk disimpan. Filter grok berikut akan mencari log yang diberi label sebagai 'syslog' dan mencoba menguraikannya untuk membuat indeks terstruktur.

filter {jika [type] =="syslog" { grok { match => { "message" => "%{SYSLOGLINE}" } } tanggal {match => [ "timestamp", "MMM d HH:mm :ss", "MMM dd HH:mm:dd" ]} }}

Pertimbangkan untuk mengunjungi grokdebugger untuk pola filter.

Di bagian ketiga, kami akan memasukkan entri konfigurasi output. Bagian ini menentukan lokasi di mana log disimpan; jelas itu seharusnya Elasticsearch.

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

Sekarang mulai layanan logstash.

# systemctl start logstash.service

Log server logstash disimpan dalam file berikut, akan membantu kami memecahkan masalah.

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

Selanjutnya kita akan mengkonfigurasi logstash-forwarder untuk mengirimkan log ke server logstash.

Konfigurasikan Logstash-forwarder.

Logstash-forwarder adalah perangkat lunak klien yang mengirimkan log ke server logstash, harus diinstal pada semua server klien. Logstash-forwarder dapat diunduh dari situs web resmi atau Anda dapat menggunakan perintah berikut untuk mengunduhnya di terminal dan menginstalnya.

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

Logstash-forwader menggunakan sertifikat SSL untuk memvalidasi identitas server logstash, jadi salin logstash-forwarder.crt yang kita buat sebelumnya dari server logstash ke klien.

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

Buka file konfigurasi.

# vi /etc/logstash-forwarder.conf

Di bagian “jaringan”, sebutkan server logstash dengan nomor port dan jalur ke sertifikat penerusan logstash yang Anda salin dari server logstash.

Bagian ini mendefinisikan logstash-forwarder untuk mengirim log ke server logstash “server.itzgeek.local” pada port 5050 dan klien memvalidasi identitas server dengan bantuan sertifikat SSL. Catatan:Ganti “server.itzgeek.local” dengan alamat ip jika Anda menggunakan IP SAN.

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

Di bagian "file", konfigurasikan semua file yang akan dikirim. Pada artikel ini kita akan mengkonfigurasi sebuah logstash-forwarder untuk mengirim log (/var/log/syslog) ke server logstash dengan tipe “syslog”.

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

Mulai ulang layanan.

# systemctl start logstash-forwarder.service

Anda dapat melihat file log jika ada masalah.

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

Konfigurasikan Kibana 4:

Kidbana menyediakan visualisasi log, unduh dari situs resminya. Gunakan perintah berikut untuk mengunduhnya di terminal.

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

Ekstrak dan pindahkan ke /opt/

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

Aktifkan file PID untuk Kibana, ini diperlukan untuk membuat file init systemd.

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

Kibana dapat dimulai dengan menjalankan /opt/kibana4/bin/kibana, untuk menjalankan kibana sebagai server kita akan membuat file 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

Mulai dan aktifkan kibana untuk memulai secara otomatis saat startup sistem.

# systemctl start kibana4.service# systemctl aktifkan kibana4.service

Akses portal kibana Anda dengan mengunjungi tautan berikut

http://alamat-ip-Anda:5601/

Anda akan mendapatkan halaman berikut di mana Anda harus memetakan indeks logstash untuk menggunakan kibana. Gulir ke bawah pada Nama bidang waktu dan pilih

@timestamp

Setelah Anda memilih, itu akan mengarahkan Anda ke halaman utama kibana.

Kibana tidak hadir dengan segala jenis akses yang dilindungi kata sandi ke portal. Dengan Nginx, kita dapat mengkonfigurasi sedemikian rupa sehingga pengguna harus memenuhi mekanisme otentikasi sebelum masuk ke portal.

Itu saja, Anda telah berhasil mengonfigurasi tumpukan ELK untuk manajemen log terpusat.


Ubuntu
  1. Cara Menginstal Logstash di Ubuntu 18.04

  2. Cara menginstal Elasticsearch, Logstash dan Kibana 4 di Ubuntu 14.04 / 15.04

  3. Cara Menginstal dan Mengonfigurasi Elasticsearch di Ubuntu 20.04

  1. Cara Menginstal dan Menggunakan Elasticsearch di Ubuntu 20.04

  2. Cara menginstal Elasticsearch, Logstash dan Kibana 4 di CentOS 7 / RHEL 7

  3. Instal Elasticsearch, Logstash, Dan Kibana Di Ubuntu 20.04

  1. Cara menginstal Elasticsearch dan Kibana di Linux

  2. Cara Menginstal PHP 7.4 dan 8.0 Di Ubuntu 18.04 atau 20.04

  3. Cara menginstal dan mengkonfigurasi Elasticsearch di Ubuntu 18.04