Icinga 2 adalah aplikasi monitoring open-source, salah satu dari banyak aplikasi monitoring diluar sana. Icinga bisa digunakan untuk monitoring Linux dan Windows, dengan bantuan berbagai plugin Icinga bisa mengirim notifikasi ke email, Slack, Mattermost, Telegram ataupun WhatsApp.

Karena akan digunakan sebagai monitoring, sebaiknya di install di satu server yang khusus, dan bukan bersamaan dengan web/service yang akan dimonitoring. Hal ini sangat penting untuk meminimalisir kesalahan seperti server monitoring dan server yang dimonitoring sama-sama down dan memastikan server yang dimonitoring bisa diakses dari luar.

1. Install dependency

Install dependency untuk kelancaran instalasi

apt install curl wget gnupg apt-transport-https -y

2. Tambahkan repository backports

1. Tambahkan repository backports dan icinga di Debian 10

echo "deb http://deb.debian.org/debian buster-backports main" > /etc/apt/sources.list.d/backports.list
echo "deb [signed-by=/usr/share/keyrings/icinga-archive-keyring.gpg] http://packages.icinga.com/debian icinga-buster main" > /etc/apt/sources.list.d/icinga.list

2. Install GPG Key

curl https://packages.icinga.com/icinga.key | gpg --dearmor -o /usr/share/keyrings/icinga-archive-keyring.gpg

3. Update metadata apt
Update metadata terbaru dari semua repository yang sudah di konfigurasi

apt update

3. Install Icinga 2

Install paket icinga versi terbaru yang tersedia di repository Debian, saat ini versi 2.9.3

apt install icinga2 -y

4. Install Database Server

Untuk menjalankan Icinga Web UI diperlukan database, kita gunakan MariaDb sebagai database server

apt install mariadb-server mariadb-client -y

jalankan mysql dari terminal, lalu buat user dan database untuk Icinga Web

CREATE DATABASE icingaweb2;
GRANT ALL PRIVILEGES ON icingaweb2.* TO "icingaweb2"@"localhost" IDENTIFIED BY "xagyTWM3eVfpXuhRfhFY";

mysql create user database icinga

5. Install IDO MySQL

Install ido icinga langsung dengan apt

apt install icinga2-ido-mysql -y

saat muncul pemberitahuan “Enable Icinga 2’s ido-mysql feature”
yes enable icinga 2 ido-mysql
pilih Yes dan tekan ENTER di keyboard

Pertanyaan selanjutnya:
– Configure database for icinga2-ido-mysql with dbconfig-common? Yes
– MySQL application password for icinga2-ido-mysql [Enter]
database untuk icinga akan otomatis dibuat oleh system, konfigurasinya bisa dilihat di /etc/dbconfig-common/icinga2-ido-mysql.conf

aktifkan module ido di Icinga

icinga2 feature enable ido-mysql

restart icinga

systemctl restart icinga2

6. Install Web Server

Untuk memudahkan mengelola icinga, kita akan menginstall apache web server, sebagai web server untuk Icinga Web UI

apt install apache2 -y

default instalasi apache2 di Debian, sudah menyertakan semua dependency yang kita butuhkan.

7. Setup Icinga REST API

Beberapa hal yang akan dijalankan disini adalah, setting CA Certificatedan mengaktifkan fitur API

icinga2 api setup

REST api ini berguna untuk semua proses yang dipanggi oleh web Icinga

Buka file /etc/icinga2/conf.d/api-users.conf tambahkan dibaris paling bawah

object ApiUser "icingaweb2" {
  password = "VLEK3WRrdcxUxjJUhXUh"
  permissions = [ "status/query", "actions/*", "objects/modify/*", "objects/query/*" ]
}

Restart service icinga untuk mengaplikasikan semua perubaha

systemctl restart icinga2

7. Install Icinga Web UI

Install icinga web ui dari repository Debian dengan apt

apt install icingaweb2 icingacli -y

1. Generate Setup Token
Sebelum menginstall Web UI lebih lanjut, pertama generate token untuk proses install, dari terminal jalankan

icingacli setup token create
# contoh output
The newly generated setup token is: 6340f36d3b79338d

2. Install dari browser
Sekarang buka browser IPSERVER/icingaweb2/setup
masukkan setup token icinga web
masukkan Setup Token lalu klik Next

2.1 Modules
Dibagian wizard Modules, tidak perlu melakukan perubaha cukup klik Next
icinga module instalation skip

2.2 Requirements
Sama seperti Modules, tidak perlu merubah apapun disini, scroll kebawah lalu klik Next
icinga requirements next

2.3 Database
Authentication pilih Database, informasi yang diminta masukkan sesuai dengan username/database pada tahap instalasi MariaDB

Database Type : MySQL
Host: localhost
Database Name: icingaweb2
Username : icingaweb2
Password : xagyTWM3eVfpXuhRfhFY

klik Validate Configuration, lalu klik Next

2.4 Administration
Sampai pada tahap pembuatan user admin, saya membuat user jaranguda dengan password keongkeong
icinga create admin user
klik beberapa kali Next sampai di Monitoring IDO Resourse

2.5 Monitoring IDO Resourse
Ambil username, password dan database dari /etc/dbconfig-common/icinga2-ido-mysql.conf
klik Next

2.6 Command Transport
Berikut ini conton konfigurasi

Transport Name : icinga2
Transport Type : Icinga 2 API
Host : IP SERVER/ DOMAIN
Port : 5665
API Username : icingaweb2
API Password : VLEK3WRrdcxUxjJUhXUh

API username dan password diambil dari /etc/icinga2/conf.d/api-users.conf
klik Validate Configuration dan klik Next

selanjutnya klik Next dan Finish

8. Login Ke Icinga Web

Buka domain/ip/icingaweb2
icinga2 setup successs
masukkan username dan password admin

Leave a comment

Your email address will not be published. Required fields are marked *