Ingin menghubungi Betariko? Silahkan klik link berikut! Hubungi Betariko

Table of Content

Panduan Install Graylog 3 dengan Elasticsearch 6.x di CentOS 8 / RHEL 8 Linux


Pada panduan install Graylog 3 ini, kamu akan mendapatkan informasi langkah-langkah penting dalam menginstall Graylog pada CentOS /RHEL  dengan menggunakan Elasticsearch 6.x dan MongoDB 4.x.

Graylog merupakan jenis web aplikasi sistem manajemen log yang memungkinkan Administrator maupun pengembang dapat mengumpulkan serta merekam data hingga terabyte data, dari berbagai sumber log. Web aplikasi ini sangat cocok dalam infrastruktur jaringan apapun.

Web aplikasi monitoring Graylog hadir dengan tampilan UI yang intuitif, fitur pencarian yang cepat dan mudah serta terdapat informasi peringatan dan pelaporan yang lengkap. Ini memungkinkan kamu dapat mengelompokkan sistem agar dapat mempermudah pencarian serta manajemen yang cepat dan tepat.

Graylog dengan tampilan UI yang simpel dan intuitif, dan dilengkapi dengan manajemen penggunaan web aplikasi monitoring yang lengkap serta terdapat dukungan untuk LDAP

Instal Graylog 3.x pada CentOS 8 / RHEL 8 Linux


Agar dapat beroperasi dengan baik, Graylog membutuhkan software tambahan seperti Java, Elasticsearch dan MongoDB. Elasticsearch memiliki fungsi dalam mengatasi penyimpanan log. 

Panduan instalasi server Graylog tunggal pada CentOS 8 / RHEL 8. Untuk pengaturan multi-cluster, bisa dilihat pada dokumentasi Graylog resmi.

1. Konfigurasikan SELinux


Jika kamu saat ini menggunakan SELinux pada sistem komputermu, setel pengaturan berikut:

sudo yum -y install curl vim policycoreutils python3-policycoreutils

sudo setsebool -P httpd_can_network_connect 1

sudo semanage port -a -t http_port_t -p tcp 9000

sudo semanage port -a -t http_port_t -p tcp 9200

sudo semanage port -a -t mongod_port_t -p tcp 27017

2. Instal Java pada RHEL / CentOS 8


Karena software Elasticsearch bergantung pada Java 8, maka kamu perlu menginstalnya terlebih dahulu pada sistem komputermu sebelum menginstal Elasticsearch RHEL 8 / CentOS 8.

sudo yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel

3. Instal Elasticsearch 6 pada RHEL 8 / CentOS 8 

Add Elasticsearch repository:

cat <<EOF | sudo tee /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/oss-6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
Selanjutnya baru install Elasticsearch

sudo yum clean all

sudo yum makecache

sudo yum -y install elasticsearch-oss

Mengkonfigurasi Elasticsearch untuk Graylog

Kamu perlu melakukan penyesuaian terhadap file konfigurasi Elasticsearch dan mengatur nama cluster ke graylog, Selain itu, kamu juga perlu melakukan langkah menghapus komentar (menghapus # sebagai karakter pertama) baris, dan and add action.auto_create_index: false ke file konfigurasi.

File yang akan diedit adalah /etc/elasticsearch/elasticsearch.yml.

$ sudo vi /etc/elasticsearch/elasticsearch.yml
cluster.name: graylog
action.auto_create_index: false

Konfirmasi status untuk memastikan sudah aktif.

$ systemctl status elasticsearch
● elasticsearch.service - Elasticsearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2019-09-13 03:53:34 EDT; 9s ago
     Docs: http://www.elastic.co
 Main PID: 16862 (java)
    Tasks: 40 (limit: 24024)
   Memory: 1.1G
   CGroup: /system.slice/elasticsearch.service
           └─16862 /bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Des.n>
Sep 13 03:53:34 rhel8.novalocal systemd[1]: Stopped Elasticsearch.
Sep 13 03:53:34 rhel8.novalocal systemd[1]: Started Elasticsearch.
Lokasi file Elasticsearch secara default yaitu

File system path
Configuration
/etc/elasticsearch
JVM settings
/etc/default/elasticsearch
Data files
/var/lib/elasticsearch/data
Log files
/var/log/elasticsearch/

Pastikan status telah aktif, tanpa error.

$ systemctl status mongod
● mongod.service - MongoDB Database Server
   Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2019-09-13 03:57:04 EDT; 6s ago
     Docs: https://docs.mongodb.org/manual
  Process: 17397 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=0/SUCCESS)
  Process: 17395 ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb (code=exited, status=0/SUCCESS)
  Process: 17393 ExecStartPre=/usr/bin/chown mongod:mongod /var/run/mongodb (code=exited, status=0/SUCCESS)
  Process: 17391 ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb (code=exited, status=0/SUCCESS)
 Main PID: 17399 (mongod)
   Memory: 44.7M
   CGroup: /system.slice/mongod.service
           └─17399 /usr/bin/mongod -f /etc/mongod.conf
Sep 13 03:57:03 rhel8.novalocal systemd[1]: Starting MongoDB Database Server...
Sep 13 03:57:03 rhel8.novalocal mongod[17397]: 2019-09-13T03:57:03.538-0400 I STORAGE  [main] Max cache overflow file size custom option: 0
Sep 13 03:57:03 rhel8.novalocal mongod[17397]: about to fork child process, waiting until server is ready for connections.
Sep 13 03:57:03 rhel8.novalocal mongod[17397]: forked process: 17399
Sep 13 03:57:04 rhel8.novalocal mongod[17397]: child process started successfully, parent exiting
Sep 13 03:57:04 rhel8.novalocal systemd[1]: Started MongoDB Database Server.

5. Instal Graylog 3 di RHEL 8 / CentOS 8 

Setelah persiapan panjang tersebut, kamu sudah siap untuk install Graylog

sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-3.1-repository_latest.rpm
Dan setelah paket Graylog selesai ditambahkan para repositori.

sudo yum install graylog-server

Secara otomatis kamu akan mendapatkan Graylog versi 3.1.2 dari instalasi tersebut.

$ rpm -qi graylog-server
 Name        : graylog-server
 Version     : 3.1.2
 Release     : 1
 Architecture: noarch
 Install Date: Fri 13 Sep 2019 03:58:28 AM EDT
 Group       : optional
 Size        : 131672482
 License     : GPLv3
 Signature   : RSA/SHA1, Thu 12 Sep 2019 11:14:37 AM EDT, Key ID d44c1d8db1606f22
 Source RPM  : graylog-server-3.1.2-1.src.rpm
 Build Date  : Thu 12 Sep 2019 11:14:29 AM EDT
 Build Host  : c3b660169564
 Relocations : /
 Packager    : Graylog, Inc. hello@graylog.org
 Vendor      : graylog
 URL         : https://www.graylog.org/
 Summary     : Graylog server
 Description :
 Graylog server
Kamu perlu melakukan penyesuaian variabel add password_secret dan root_password_sha2 di bawah /etc/graylog/server/server.conf. Pengaturan password ini wajib dilakukan, karena tanpa melewati proses ini Graylog tidak akan memulai instalasi.

Gunakan perintah berikut untuk membuat root_password_sha2:

echo -n "Enter Password: " && head -1 </dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1

Tetapkan nilai yang dihasilkan di root_password_sha2


$ sudo vi /etc/graylog/server/server.conf

root_username = admin

root_password_sha2 = <Sha2Passowrd>
Generate password_secret.

$ sudo yum -y install pwgen

$ pwgen -N 1 -s 96

ny5eSSuHe03DWW7hGOGMPaVOlbBeZX48OqvTIO7J56rBwh0r99wB1bQwecjyID9S5XrCkzVcPBG0jLPcWiit1Vz1nPse6yBq 

$ sudo vi /etc/graylog/server/server.conf

password_secret = ny5eSSuHe03DWW7hGOGMPaVOlbBeZX48OqvTIO7J56rBwh0r99wB1bQwecjyID9S5XrCkzVcPBG0jLPcWiit1Vz1nPse6yBq
Agar kamu dapat segera terhubung dengan web aplikasi Graylog, kamu perlu melakukan penyesuaian pada http_bind_address ke nama host publik atau IP publik dari perangkat yang kamu sambungkan, misalnya server atau komputer.

http_bind_address = 0.0.0.0:9000

Langkah terakhir yaitu dengan mengaktifkan Graylog

sudo systemctl daemon-reload

sudo systemctl enable --now graylog-server.service

Kamu dapat akses halaman dashbord Graylog di http: // serverip_or_hostname: 9000 / 

Login dengan admin dan user pengguna serta kata sandi root yang telah diatur di dalam server.conf.