CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

 CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04


Pengertian HAProxy

HAProxy adalah singkatan dari High Availability Proxy . Ini adalah open-source load-balancer yang dapat digunakan untuk mendistribusikan lalu lintas HTTP ke beberapa aplikasi backend, situs web, atau database untuk membuat system yang memiliki HA tinggi. Ini adalah load balancer tercepat dan paling unggul yang menawarkan skalabilitas besar-besaran di lingkungan apa pun, menjadikannya pilihan nomor satu untuk situs web profil tinggi seperti Twitter, GitHub, dan Amazon Web Service.
Di era dunia yang terhubung dengan internet ini, aplikasi dapat mungkin melayani jutaan pengguna di seluruh dunia (Misalnya, aplikasi media sosial). Dalam sistem mission-critical seperti itu, setiap downtime dapat menyebabkan kerugian finansial dan pengalaman pelanggan yang tidak menyenangkan. Untuk memastikan bahwa aplikasi berfungsi bahkan ketika beberapa komponennya gagal, maka harus membuat beberapa instance infrastruktur komputasi  dan menempatkan load balancer untuk merutekan traffik.
HAProxy memungkinkan sistem untuk mentolerir interupsi tanpa waktu henti bagi pengguna. Untuk menggunakan teknologi, Kita harus merancang sistem Kita dengan mempertimbangkan redundansi . Artinya, Kita harus menjalankan beberapa komponen komputer yang kemungkinan besar gagal atau memerlukan perawatan berkala. Selain itu, mekanisme failover HAProxy menggunakan metrik kinerja yang berbeda untuk memantau ketersediaan dan kesehatan server redundan yang bekerja sebagai grup untuk mengalihkan lalu lintas hanya ke komponen aktif. Oleh karena itu, HAProxy memenuhi semua elemen dasar ketersediaan tinggi. Yaitu redundansi , failover , dan monitoring .
Dalam panduan ini, Kita akan menginstal dan mengonfigurasi penyeimbang beban HAProxy di server Ubuntu 20.04 untuk mendistribusikan lalu lintas web ke dua server yang berbeda.

Topologi Install Dan Konfigurasi Haproxy Load Balancer Pada Ubuntu 20.04 :

Dalam tutorial ini kita akan membuat HAProxy untuk melakukan load balancer untuk webserver1 dan webserver2. Jadi Ketika client mengakses IP HAProxy port 80 akan di load balancing ke web server 1 dan web server 2.
CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04


Kebutuhan server :

Dalam tutorial cara install dan konfigurasi HAProxy kali ini akan membutuhkan server sebagai berikut :
- 3 server dengan system operasi ubuntu 20.04
- User dengan akses sudo
- Server terkoneksi internet
- Pada tutorial ini menggunakan IP berikut
IP server load balancer : 192.168.18.6/24
IP web-server1 : 192.168.18.16/24
IP web-server2 : 192.168.18.17/24
- Pastikan apache webserver hanya terinstall di web-server1 dan web-server2


1. Install HAProxy pada server load balancer

Update dan install haproxy
#apt update
#apt install haproxy -y

Cek status HAProxy da pastikan HAProxy sudah running.
#systemctl status haproxy
CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04


2. Konfigurasi HAProxy

Setelah install HAProxy, selanjutnya mengkonfigurasi HAProxy untuk membagi traffic webserver
Konfigurasi HAProxy berada pada lokasi berikut : /etc/haproxy/haproxy.cfg

Pertama backup file config untuk memastikan nanti dapat dilakukan rollback apabila terjadi kesalahan konfigurasi:
#cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bk

File konfigurasi HAProxy dibagi menjadi beberapa bagian.
Global : biasanya berada dibagian paling atas. HAProxy berisi pengaturan seluruh sistem yang terutama berhubungan dengan keamanan dan penyetelan kinerja. Pada bagian global akan kita biarkan default.
Default : Default menyimpan beberapa pengaturan yang mungkin biasa digunakan tanpa penyesuaian lebih lanjut, termasuk pelaporan kesalahan dan konfigurasi batas waktu. Pada tutorial tutorial ini kita akan menjalankan HAProxy dengan nilai default.
Frontend and backend : selain pengaturan global dan default, HAProxy mendukung beberapa pengaturan frontend dan backend. Dalam tutorial ini kita kana menggunakan HAProxy sebagai reverse proxy didepan dua server backend.
Listen : bersifat opsional. Berfungsi untuk menentukan beberapa pengaturan statistic. Pengaturan ini berfungsi untuk masuk ke server HAProxy di browser dan melihat kinerja server.

Buka file konfigurasi HAProxy dengan vim / nano
#nano /etc/haproxy/haproxy.cfg

Dan tambahkan konfigurasi berikut pada bagian paling bawah : 

frontend front_end
        bind *:80
        option forwardfor
        default_backend web_servers

backend web_servers
        balance roundrobin
        server server-1 192.168.18.16:80 check
        server server-2 192.168.18.17:80 check

listen stats
        bind :32600
        stats enable
        stats uri /
        stats hide-version
        stats auth ha_proxy_admin:passwordadmin

CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

Sesuaikan web-server1 dan web-server2 pada konfigurasi rekan-rekan semua.
Kemudian simpan dan tutup konfigurasi HAProxy. Setelah konfigurasi selesai. Selanjutnya restart HAProxy dan cek Kembali status HAProxy.
#systemctl restart haproxy
#systemctl status haproxy
 
CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04


3. Install apache server di web-server1 dan web-server2

Setelah HAProxy server selesai di konfigurasi dan siap menerima http traffic dan merutekan ke backend server. Selanjutnya kita menginstall apache webserver pada web-server1 dan web-server2.
#apt update
#apt install apache2 -y
#systemctl status apache2
 
CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04


4. Membuat konten web untuk Web-Server1 dan Web-Server2

Client akan mengirim http-request ke server load balancer yang telah diinstall HAProxy. Kemudian HAProxy akan merutekan traffic ke backend server. Maka dari itu kita akan membuat konten web untuk web-server1 dan web-server2.

Edit index.html pada web-server1 dan web-server2 seperti berikut :
# rm  /var/www/html/index.html
#nano /var/www/html/index.html

Isi /var/www/html/index.html pada web-server1

<html>
  <head>
    <title>Backend Server 1 /  Web Server 1</title>
  </head>
  <body>
    <h1>Web Server 1 is working.</h1>
  </body>
</html>

CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

Isi /var/www/html/index.html pada web-server2

<html>
  <head>
    <title>Backend Server 2 /  Web Server 2</title>
  </head>
  <body>
    <h1>Web Server 2 is working.</h1>
  </body>
</html>

CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

Simpan dan tutup file. Selanjutnya yaitu testing HAProxy algoritma

5. Test Algoritma load balancing HAProxy

Pada webbrowser laptop. Masukkan ip dari server load balancer yang telah diinstal HAProxy.
http://192.168.18.6/
Berikut adalah hasil akses pertama kali :
 
CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

Kemudian refresh halaman, setelah refresh maka harusnya kita mendapat tampilan web-server2
 
CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

Untuk melihat statistic umum dari frontend dan backend server dapat membuka IP HAProxy ditambah port 32600 dibelakangnya. Pada user masukkan username :  ha_proxy_admin  ,password : passwordadmin
 
CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

Dan berikut tampilan jendela statistic untuk HAProxy :
 
CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 20.04

Install Dan Konfigurasi Haproxy Sebagai Load-Balancer Webserver Pada Ubuntu 20.04 telah berhasil dilakukan.

Related Posts

Previous
Next Post »