CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 18.04

 CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 18.04 

CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 18.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 18.04 untuk mendistribusikan lalu lintas web ke dua server yang berbeda.

Topologi Install Dan Konfigurasi Haproxy  Multi Listen Port Pada Ubuntu 18.04 :

Dalam tutorial ini kita akan membuat HAProxy untuk melakukan load balancer untuk webserver1 dan webserver2. Jadi Ketika client mengakses IP HAProxy port 36000 maka akan diarahkan ke webserver1, dan jika client mengakses IP HAProxy port 37000 maka akan diarahkan ke webserver2.
CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 18.04


Kebutuhan server :

Dalam tutorial cara install dan konfigurasi HAProxy kali ini akan membutuhkan server sebagai berikut :
- 3 server dengan system operasi ubuntu 18.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 MULTI LISTEN PORT PADA UBUNTU 18.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 *:36000
        option forwardfor
        default_backend web_servers

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

frontend front_end2
        bind *:37000
        option forwardfor
        default_backend web_servers2

backend web_servers2
        balance roundrobin
        server server-1 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 MULTI LISTEN PORT PADA UBUNTU 18.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 MULTI LISTEN PORT PADA UBUNTU 18.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 MULTI LISTEN PORT PADA UBUNTU 18.04

CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 18.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 MULTI LISTEN PORT PADA UBUNTU 18.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 MULTI LISTEN PORT PADA UBUNTU 18.04

Simpan dan tutup file. Selanjutnya yaitu testing HAProxy algoritma


5. Mengetest hasil load balancing HAProxy

Pada webbrowser laptop atau client. Masukkan IP HAProxy port 36000
http://192.168.18.6:36000
Dan berikut hasilnya :
 
CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 18.04

Kemudian untuk menguji webserver2. Masukkan IP HAProxy port 37000
http://192.168.18.6:37000
Dan berikut hasilnya :
 
CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 18.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 MULTI LISTEN PORT PADA UBUNTU 18.04


Dan berikut tampilan jendela statistic untuk HAProxy :
 
CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 18.04

Install Dan Konfigurasi Haproxy Multi Listen Port Pada Ubuntu 18.04 telah berhasil dilakukan.


Referensi :
https://www.vultr.com/docs/how-to-install-haproxy-on-ubuntu-20-04/

CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 20.04

 CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 20.04 

CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT 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  Multi Listen Port 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 36000 maka akan diarahkan ke webserver1, dan jika client mengakses IP HAProxy port 37000 maka akan diarahkan ke webserver2.
CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT 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 MULTI LISTEN PORT 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 *:36000
        option forwardfor
        default_backend web_servers

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

frontend front_end2
        bind *:37000
        option forwardfor
        default_backend web_servers2

backend web_servers2
        balance roundrobin
        server server-1 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 MULTI LISTEN PORT 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 MULTI LISTEN PORT 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 MULTI LISTEN PORT PADA UBUNTU 20.04

CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT 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 MULTI LISTEN PORT 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 MULTI LISTEN PORT PADA UBUNTU 20.04

Simpan dan tutup file. Selanjutnya yaitu testing HAProxy algoritma


5. Mengetest hasil load balancing HAProxy

Pada webbrowser laptop atau client. Masukkan IP HAProxy port 36000
http://192.168.18.6:36000
Dan berikut hasilnya :
 
CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 20.04

Kemudian untuk menguji webserver2. Masukkan IP HAProxy port 37000
http://192.168.18.6:37000
Dan berikut hasilnya :
 
CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT 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 MULTI LISTEN PORT PADA UBUNTU 20.04


Dan berikut tampilan jendela statistic untuk HAProxy :
 
CARA INSTALL DAN KONFIGURASI HAPROXY MULTI LISTEN PORT PADA UBUNTU 20.04

Install Dan Konfigurasi Haproxy Multi Listen Port Pada Ubuntu 20.04 telah berhasil dilakukan.


Referensi :
https://www.vultr.com/docs/how-to-install-haproxy-on-ubuntu-20-04/

CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 18.04

 CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 18.04

CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 18.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 18.04 untuk mendistribusikan lalu lintas web ke dua server yang berbeda.

Topologi Install Dan Konfigurasi Haproxy Load Balancer Pada Ubuntu 18.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 18.04


Kebutuhan server :

Dalam tutorial cara install dan konfigurasi HAProxy kali ini akan membutuhkan server sebagai berikut :
- 3 server dengan system operasi ubuntu 18.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 18.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 18.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 18.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 18.04

CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 18.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 18.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 18.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 18.04

Kemudian refresh halaman, setelah refresh maka harusnya kita mendapat tampilan web-server2
 
CARA INSTALL DAN KONFIGURASI HAPROXY LOAD BALANCER PADA UBUNTU 18.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 18.04

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

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

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.