ELK Stack adalah platform manajemen log paling populer di dunia. Ini adalah kumpulan produk sumber terbuka termasuk Elasticsearch, Logstash, dan Kibana. Ketiga produk ini dikembangkan, dikelola, dan dipelihara oleh Elastic.
ELK Stack adalah platform yang kuat dan open source yang dapat mengelola sejumlah besar data yang dicatat. Log input umumnya dari antarmuka web grafis (GUI).
- Elasticsearch adalah mesin analitik dan penelusuran berbasis JSON yang ditujukan untuk skalabilitas horizontal dan pengelolaan yang lebih mudah.
- Logstash adalah antarmuka pemrosesan data sisi server yang memiliki kemampuan untuk mengumpulkan data dari beberapa sumber secara bersamaan. Kemudian mengubahnya, dan kemudian mengirimkan data ke simpanan yang Anda inginkan. Ini adalah aplikasi sumber terbuka.
- Kibana digunakan untuk memvisualisasikan data Anda dan menavigasi Elastic Stack. Ini juga merupakan alat sumber terbuka.
Instal dan konfigurasikan ELK Stack di Ubuntu
Dalam tutorial ini, kita akan menggunakan filebeat untuk mengirim data log ke Logstash. Beats adalah pengirim data yang ringan dan untuk memulainya, kita harus menginstal agen di server.
Langkah 1) Menginstal Java 8
ElasticSearch mendukung Java 8 dan 9, tetapi masalahnya adalah Logstash hanya kompatibel dengan Java 8. Java 9 belum didukung. Oleh karena itu, kita akan menginstal Oracle Java 8.
Luncurkan Terminal dan tambahkan repositori Oracle Java 8, diikuti dengan pembaruan sistem, dan instalasi sebenarnya.
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt install Oracle-Java8-set-default
Perhatikan Terminalnya. Anda harus menyetujui jendela perjanjian lisensi dan memilih “ya” untuk melanjutkan. Setelah instalasi selesai, Anda dapat memeriksa versi java dengan menggunakan perintah berikut:
.sudo java -versi
sudo echo $JAVA_HOME
Langkah 2) Memasang dan Mengonfigurasi Elasticsearch
Mari kita mulai dengan wget perintah untuk mengunduh Elasticsearch diikuti dengan kunci penandatanganan publik:
sudo wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Kedua, instal paket apt-transport-https (distro berbasis Debian membutuhkan ini).
sudo apt-get install apt-transport-https
Tambahkan repositori:
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list
Perbarui daftar repo dan instal paket:
sudo apt-get update
sudo apt-get install elasticsearch
Mari kita ubah file “elasticsearch.yml”:
sudo vim /etc/elasticsearch/elasticsearch.yml
Batalkan komentar "network.host" dan "http.port". Konfigurasi berikut harus ditambahkan:
network.host:localhosthttp.port:9200
Selanjutnya, simpan dan tutup file tersebut.
Untuk memastikan ElasticSearch berfungsi dengan lancar, aktifkan saat boot dan Mulai ElasticSearch.
sudo systemctl aktifkan elasticsearch.service
sudo systemctl start elasticsearch.service
Periksa instalasi:
sudo curl -XGET 'localhost:9200/?pretty'
Langkah 3) Memasang Kibana
Mari kita mulai menginstal Kibana sekarang dan mengubah pengaturan Kibana:
sudo apt-get install kibana
sudo vim /etc/kibana/kibana.yml
Batalkan komentar pada baris berikut:
server.port:5601server.host:"localhost"elasticsearch.url:"http://localhost:9200"
Simpan dan keluar dari File.
Aktifkan saat boot dan mulai layanan Kibana:
sudo systemctl aktifkan kibana.service
sudo systemctl start kibana.service
Langkah 4) Mengonfigurasi Nginx sebagai Proksi Terbalik untuk Kibana
Di baris yang sama, mari instal Nginx, konfigurasikan, dan mulai layanan. Gunakan perintah berikut satu per satu:
sudo apt-get install nginx apache2-utils
Konfigurasikan Virtual host:
sudo vim /etc/nginx/sites-available/elk
Tambahkan konfigurasi berikut ke file:
server { dengarkan 80; nama_server elk.fosslinux.com; auth_basic "Akses Terbatas"; auth_basic_user_file /etc/nginx/.elkusersecret; lokasi / { proxy_pass http://localhost:5601; proxy_http_version 1.1; proxy_set_header Tingkatkan $http_upgrade; proxy_set_header Koneksi 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; }}
Buat file pengguna dan kata sandi untuk otentikasi browser web:
sudo htpasswd -c /etc/nginx/.elkuserssecret elkusr
Masukkan kata sandi dan ulangi. Periksa Konfigurasi Nginx:
sudo nginx -t
Aktifkan Nginx pada boot sistem dan mulai ulang layanan:
sudo systemctl aktifkan nginx.service
sudo systemctl restart nginx.service
Langkah 5) Menginstal dan Mengonfigurasi Logstash
Instal Logstash:
sudo apt-get install logstash
Di sini kita akan membuat kunci sertifikat SSL untuk mengamankan transfer log dari klien file beat. Ubah file “hosts” sebelum membuat sertifikat SSL.
sudo vim /etc/hosts
Tambahkan baris berikut ke file. Pastikan untuk mengubah IP dan nama server menjadi milik Anda.
172.31.31.158 server-elk-server-elk
Setelah selesai, simpan dan keluar dari file.
Sekarang ubah direktori ke Logstash.
sudo cd /etc/logstash/
Buat folder untuk SSL:
sudo mkdir ssl
Hasilkan sertifikat SSL. Ubah elk-server menjadi nama server Anda pada perintah di bawah ini.
sudo openssl req -subj '/CN=elk-server/' -x509 -days 3650 -batch -nodes -newkey rsa:2048 -keyout ssl/logstash-forwarder.key -out ssl/logstash-forwarder.crtBuat file berikut di dalam “/etc/logstash/conf.d”.
sudo cd /etc/logstash/conf.d/buat file input filebeat menggunakan vim.
sudo vim filebeat-input.confTambahkan baris berikut ke dalamnya.
input { beats { port => 5443 type => syslog ssl => true ssl_certificate => "/etc/logstash/ssl/logstash-forwarder.crt" ssl_key => "/etc/logstash/ssl/logstash-forwarder .key" }}Simpan dan tutup file dan buat file konfigurasi baru.
sudo vim syslog-filter.confTambahkan konten berikut ke dalamnya.
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}" ] } tanggal { cocok => [ "syslog_timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ] } }}Simpan dan keluar dari file. Buat elasticsearch berkas keluaran.
sudo vim output-elasticsearch.confTambahkan baris berikut ke dalamnya.
output { elasticsearch { hosts => ["localhost:9200"] hosts => "localhost:9200" manage_template => false index => "%{[@metadata][beat]}-%{+YYYY.MM .dd}" document_type => "%{[@metadata][type]}" }}Mari aktifkan Logstash saat boot dan mulai layanan:
sudo systemctl aktifkan logstash.servicesudo systemctl start logstash.serviceLangkah 6) Menginstal dan Mengonfigurasi Filebeat di server Klien
Mulailah dengan mengedit host file untuk menambahkan entri host rusa. Pastikan untuk mengganti IP dan nama dengan milik Anda.
sudo vim /etc/hosts172.31.31.158 server rusaSimpan dan keluar dari file.
Unduh dan instal Kunci Penandatanganan Publik:
sudo wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -Instal “apt-transport-https” dan tambahkan repo.
sudo apt-get install apt-transport-httpssudo echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.listPerbarui repo dan instal Filebeat.
sudo apt-get updatesudo apt-get install filebeatUbah konfigurasi Filebeat.
sudo vim /etc/filebeat/filebeat.ymlTemukan baris berikut dan ubah nilainya menjadi “true”.
diaktifkan:benarDi sini kami tidak mengubah jalur log dan Filebeat akan meneruskan semua log di dalam folder “var/log”
jalur:- /var/log/*.logBatalkan komentar pada baris berikut:
output.logstash:# Host Logstash menghosting:["elk-server:5443"] ssl.certificate_authorities:["/etc/filebeat/logstash-forwarder.crt"]Komentar Elasticsearch:
#output.elasticsearch:# Array host yang akan dihubungkan. # host:["localhost:9200"]Simpan dan keluar dari file.
Sekarang buka server ELK dan dapatkan konten “logstash-forwarder.crt”
sudo cat /etc/logstash/ssl/logstash-forwarder.crtsalin output dan kemudian pergi ke server klien Elk.
Buat file sertifikat
sudo vim /etc/filebeat/logstash-forwarder.crtmasukkan hasil salinan dan simpan &keluar.
Aktifkan filebeat saat boot sistem Mulai filebeat layanan.
sudo systemctl aktifkan filebeat.servicesudo systemctl start filebeat.serviceLangkah 7) Menjelajahi Dasbor Kibana
Luncurkan browser web favorit Anda dan masukkan nama domain diikuti dengan nama pengguna dan kata sandi.
http://elk.fosslinux.comMasukkan nama pengguna dan kata sandi yang dibuat. Anda akan melihat halaman Selamat Datang Kibana. Klik tombol “Jelajahi Milik Saya”.
Anda harus diarahkan ke Halaman Beranda Kibana.
Klik "Temukan" di sisi kiri. Klik “Buat pola indeks”.
Kemudian tentukan pola indeks “filebeat-*”.
Klik berikutnya dan pilih @timestamp’ dan klik ‘Buat pola indeks’.
Pola indeks harus dibuat.
Klik Menu “Temukan” untuk melihat log server.
Log akan ditampilkan sesuai dengan stempel waktu. Klik stempel waktu mana saja untuk meluaskannya dan melihat konten file log dan detailnya.
Jika Anda sampai di sini, itu berarti Anda telah berhasil menginstal dan mengonfigurasi tumpukan ELK dengan filebeat. Punya masalah? Jangan ragu untuk memberi tahu kami di komentar di bawah.
Cara mengaktifkan Hot Corners di Ubuntu 18.04 Cara menginstal Wine 4.0 di Ubuntu 18.04 &Linux Mint 19Ubuntu