Senin, 07 Oktober 2024

HA PROXY-keepived ubuntu 22

 

Konfigurasi Keepalived Ubuntu

Tutorial High Availability HAProxy & Keepalived di Ubuntu 22.04

https://medium.com/@fadhilmuhhab/implementasi-high-availability-dengan-haproxy-keepalived-dan-apache-di-ubuntu-22-04-1d9718f516f5
Keepalived

Pendahuluan

Sebelumnya, saya telah membagikan tutorial mengenai HAProxy, dan Web Server. Sekarang kita akan membahas implementasi High Availability (HA) dengan menggunakan Apache, HAProxy, dan Keepalived di Ubuntu 22.04. Pastikan Anda sudah memahami tutorial sebelumnya sebelum mulai konfigurasi.

Tutorial HAProxy

Persiapan

Sebagai langkah awal, kita memerlukan 2 Virtual Machines (VM) untuk Apache di Ubuntu 22.04 (Web1 dan Web2), serta 2 VM untuk HAProxy dan Keepalived di Ubuntu 23.10 (HAProxy1 dan HAProxy2). Berikut adalah konfigurasi IP untuk setiap server:

  • Web1: 192.168.56.2
  • Web2: 192.168.56.3
  • HAProxy1: 192.168.56.4
  • HAProxy2: 192.168.56.5

Konfigurasi Keepalived

  • Selanjutnya, install Keepalived pada kedua server HAProxy:
apt update 
apt install keepalived -y
apt-get install build-essential libssl-dev
cd ~
wget http://www.keepalived.org/software/keepalived-1.2.19.tar.gz
tar xzvf keepalived*
cd keepalived*
./configure
make
make install
  • Konfigurasi Keepalived dengan mengedit file keepalived.conf:
nano /etc/keepalived/keepalived.conf
  • Tambahkan konfigurasi berikut:
# Global Settings for notifications
global_defs {
notification_email {
root@fadhil.net # Email address untuk notifikasi
}
notification_email_from root@fadhil.net
smtp_server 127.0.0.1
smtp_connect_timeout 15
}

# Define the script used to check if haproxy is still working
vrrp_script chk_haproxy {
script "/usr/bin/killall -0 haproxy"
interval 2
weight 2
}

# Configuration for Virtual Interface
vrrp_instance LB_VIP {
interface enp0s8 # Sesuaikan dengan konfigurasi network Anda
state MASTER # Ubah menjadi BACKUP pada server2
priority 101 # Ubah menjadi 100 pada server2
virtual_router_id 51

smtp_alert

authentication {
auth_type AH
auth_pass myP@ssword
}
unicast_src_ip 192.168.56.4 # IP Mesin
unicast_peer {
192.168.56.5 # IP Pasangan
}

# The virtual ip address shared between the two loadbalancers
virtual_ipaddress {
192.168.56.100
}

# Use the Defined Script to Check whether to initiate a fail over
track_script {
chk_haproxy
}
}
Konfigurasi Keepalived
  • Jalankan Service Keepalived:
systemctl enable keepalived
systemctl start keepalived
systemctl status keepalived

Penjelasan Konfigurasi :

global_defs adalah konfigurasi notifikasi secara keseluruhan untuk seluruh konfigurasi High Availability.

vrrp_script chk_haproxy adalah konfigurasi yang mendefinisikan skrip yang akan dieksekusi secara berkala untuk memeriksa apakah HAProxy masih berjalan.

vrrp_instance LB_VIP adalah konfigurasi yang mendefinisikan sebuah instance VRRP (Virtual Router Redundancy Protocol) untuk mengelola konfigurasi dan operasi failover antara dua node dalam lingkungan high availability.

  1. interface = Menentukan antarmuka jaringan yang akan digunakan.
  2. state = Menentukan status apakah sebagai MASTER atau BACKUP.
  3. priority = Menentukan prioritas. Semakin tinggi nilai prioritas, semakin besar kemungkinan menjadi MASTER.
  4. virtual_router_id = Menentukan identifikasi unik untuk instance VRRP.
  5. smtp_alert = Mengaktifkan pengiriman notifikasi melalui email jika terjadi perubahan status VRRP.
  6. authentication = Mengonfigurasi tipe dan kata sandi untuk otentikasi.
  7. unicast_src_ip = Menentukan alamat IP dari mesin ini.
  8. unicast_peer = Menentukan alamat IP dari node pasangan.
  9. virtual_ipaddress = Menentukan alamat IP virtual yang akan digunakan sebagai VIP (Virtual IP) bersama antara kedua load balancer.
  10. track_script = Menentukan skrip yang akan digunakan untuk memantau kondisi node.

Pengujian

Sekarang saatnya melakukan pengujian untuk memastikan setup HA berfungsi dengan baik:

  • Akses web melalui floating IP menggunakan browser dengan URL: http://<IP_FLOATING_ANDA>.
Testing Keepalived
  • Matikan service HAProxy pada HAProxy01. Floating IP akan beralih dari HAProxy01 ke HAProxy02.
Floating IP akan berpindah dari haproxy01 ke haproxy02
  • Akses web lagi setelah Floating IP beralih ke HAProxy02. Web server masih dapat diakses.
  • Matikan Web server 1. Sekarang hanya Web server 2 yang dapat diakses.

Kesimpulan

Dengan mengikuti langkah-langkah di atas, Kita telah berhasil mengimplementasikan High Availability menggunakan HAProxy, Keepalived, dan Apache di lingkungan Ubuntu 22.04. Pastikan untuk melakukan pengujian lebih lanjut dan menjelajahi opsi konfigurasi tambahan sesuai kebutuhan Anda. Selamat mencoba dan semoga berhasil!

Tidak ada komentar:

Posting Komentar