ELK begitu biasa disebut untuk singkatan Elasticsearch. Logstash dan Kibana. ELK terdiri dari 3 aplikasi yang bisa berdiri sendiri dan memiliki fungsinya tersendiri. Elasticsearch sendiri bisa diartikan sebagai mesin pencari, Logstash merupakan log processing, digunakan untuk menarik dan mengolah data log. Paling terakhir adalah kibana yang digunakan untuk menampilkan data dari elasticsearch sebagai grafik.
Update System
Ingat untuk mengupdate system ke versi terbaru
sudo apt update; sudo apt upgrade -y
Install Dependency
sudo apt install curl wget gnupg -y
Setting Zona Waktu
Untuk timezone gunakan lokasi dimana anda berada, agar tidak membingungkan kedepannya.
1. Aktifkan NTP Server
sudo timedatectl set-ntp true
2. Set Zona Waktu Jakarta (WIB +7)
timedatectl set-timezone "Asia/Jakarta"
Cek jam di server anda
timedatectl # output Local time: Mon 2020-11-30 13:30:40 WIB Universal time: Mon 2020-11-30 06:30:40 UTC RTC time: Mon 2020-11-30 06:30:41 Time zone: Asia/Jakarta (WIB, +0700) System clock synchronized: yes NTP service: active RTC in local TZ: no
Install Java
Install OpenJDK 11 JRE di Debian 10
sudo apt install openjdk-11-jre -y
Install Repository Elasticsearch
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
Install GPG Key
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
setelah menambahkan repository baru, update metadata apt, agar repository yang baru ditambah bisa dideteksi.
sudo apt update
Install dan Konfigurasi Elasticsearch
Untuk instalasi Elasticsearch, langsung dengan apt
sudo apt install elasticsearch -y
Elasticsearch menggunakan port 9200
Konfigurasi Elasticsearch
Konfigurasi Elasticsearch di Debian berada di folder /etc/elasticsearch, khususnya /etc/elasticsearch/elasticsearch.yml
. Untuk instalasi 1 server Elasticsearch file elasticsearch.yml tidak perlu dirubah. Yang perlu di sesuaikan adalah penggunaan Heap size, formatnya biasanya 50% dari kapasitas RAM yang tersedia, yang nilai defaultnya adalah 1 GB.
Disini saya menggunakan server dengan memory 128 GB, maka saya akan setting Heap nya 64. Buka file /etc/elasticsearch/jvm.options
Ubah bagian
-Xms1g -Xmx1g
menjadi
# minimum 32 GB -Xms32g # maksimum 64 GB -Xmx64g
restart service elasticsearch setelah melakukan perubahan diatas
sudo systemctl restart elasticsearch
Install dan Konfigurasi Logstash
Cara install Logstash sama simplenya dengan cara install Elasticsearch
sudo apt install logstash -y
file konfigurasi Logstash berada di /etc/logstash/logstash.yml
, disini kita tidak perlu melakukan konfigurasi logstash.
Install dan Konfigurasi Kibana
sudo apt install kibana -y
output install
Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: kibana 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 257 MB of archives. After this operation, 702 MB of additional disk space will be used. Get:1 https://artifacts.elastic.co/packages/7.x/apt stable/main amd64 kibana amd64 7.10.0 [257 MB] Fetched 257 MB in 4s (60.3 MB/s) Selecting previously unselected package kibana. (Reading database ... 49947 files and directories currently installed.) Preparing to unpack .../kibana_7.10.0_amd64.deb ... Unpacking kibana (7.10.0) ... Setting up kibana (7.10.0) ... Processing triggers for systemd (241-7~deb10u4) ...
defaultnya Kibana menggunakan port 5601 yang di bind ke localhost. Agar kita bisa mengakses Kibana tersebut ubah konfigurasi di file /etc/kibana/kibana.yml
#server.port: 5601 #server.host: "localhost"
menjadi
server.port: 5601 server.host: "0.0.0.0"
restart Kibana untuk melihat perubahannya
sudo systemctl restart kibana
Buka http://IP-PUBLIC:5601