Cara Konfigurasi Eksternal HA Load Balancer Pada Neo Cloud dan Gio Cloud (Ubuntu dan Centos)
0 people liked this article
A. Pendahuluan
HAProxy adalah sebuah aplikasi opensource berbasis Linux yang biasa digunakan sebagai load balancing trafic jaringan. Load balancing adalah teknik untuk mendistribusikan beban trafik pada dua atau lebih jalur koneksi secara seimbang agar trafik dapat berjalan optimal, memaksimalkan throughput, memperkecil waktu tanggap dan menghindari overload pada salah satu jalur koneksi. Teknik balancing dapat menggunakan beberapa cara yang berbeda, tergantung kekompleksan yang ada.
HAProxy adalah solusi baik, sangat cepat dan andal yang menawarkan load-balancing, ketersediaan tinggi, dan proksi untuk aplikasi berbasis TCP dan HTTP. Ini sangat cocok untuk situs web dengan lalu lintas sangat tinggi dan memberdayakan banyak situs web yang paling banyak dikunjungi di dunia. Maka dari itu sangat penting untuk mengerti, apa yang sebenarnya dibutuhkan jaringan sebelum membuat keputusan melakukan konfigurasi load balancer.
Berikut adalah diagram dari Konfigurasi HAProxy Load Balancer nya:
HAProxy sekarang diinstal. Sekarang mari kita membuat pengaturan di mana kita memiliki 2 (dua) instance Apache Web Server dan 1 (satu) instance HAProxy. Di bawah ini adalah informasi pengaturan:
B. Instalasi & Konfigurasi
Kami akan menggunakan tiga VM yang dapat dibuat dari Gio Cloud atau Neo Cloud
Instance 1 - Load Balancer
Hostname: HAProxy
OS: Ubuntu
Private IP: 192.168.100.11
IP Public: 103.93.55.118
Instance 2 - Web Server 1
Hostname: VM-Webserver-A
OS: Ubuntu sudah di install Apache
Private IP: 192.168.100.7
Instance 2 - Web Server 2
Hostname: VM-Webserver-B
OS: Ubuntu sudah di install Apache
Private IP: 192.168.100.24
Berikut adalah diagram dari Konfigurasi HAProxy Load Balancer nya
Langkah 1
Konfigurasi pada ( VM HAProxy )
Sebelum memulai instalasi, kami merekomendasikan untuk mengupdate system dengan versi terbaru terlebih dahulu.
# apt-get update
Langkah 2
Install HAProxy
# apt-get install haproxy
Cek versi dari HAPorxy
# haproxy -v
Kita perlu mengaktifkan HAProxy untuk memulai dengan skrip init /etc/default /haproxy. Setel opsi ENABLED ke 1 sebagai berikut:
Untuk memverifikasi apakah perubahan ini dilakukan dengan benar, jalankan skrip init HAProxy tanpa parameter apa pun. Anda harus melihat yang berikut ini:
# systemctl status haproxy
Langkah 3
1. Konfigurasi HAProxy
Tinjau file konfigurasi default di /etc/haproxy/haproxy.cfg, yang dibuat secara otomatis selama instalasi. File ini mendefinisikan pengaturan standar tanpa load balancing:
# cat /etc/haproxy/haproxy.cfg
Bagian global mendefinisikan parameter tingkat sistem seperti lokasi file dan pengguna serta grup tempat HAProxy dijalankan. Dalam kebanyakan kasus, Anda tidak perlu mengubah apa pun di bagian ini. Pengguna haproxy dan grup haproxy keduanya dibuat selama instalasi.
Bagian default mendefinisikan parameter logging tambahan dan opsi yang terkait dengan timeout dan kesalahan. Secara default, pesan normal dan kesalahan akan dicatat.
2. Konfigurasi Load Balancing
Saat Anda mengkonfigurasi load balancing menggunakan HAProxy, ada dua jenis node yang perlu didefinisikan: frontend dan backend. Frontend adalah simpul di mana HAProxy mendengarkan koneksi. Node backend adalah yang digunakan HAProxy untuk meneruskan permintaan. Jenis simpul ketiga, simpul statistik, dapat digunakan untuk memantau penyeimbang beban dan dua simpul lainnya.
Buka /etc/haproxy/haproxy.cfg di teks editor dan tambahkan konfigurasi untuk front end:
# nano /etc/haproxy/haproxy.cfg
frontend haproxynode bind *:80 mode http default_backend backendnodes
Blok konfigurasi ini menentukan node frontend bernama haproxy node, yang terikat pada semua antar muka jaringan pada port 80. Ia akan mendengarkan koneksi HTTP (dimungkinkan untuk menggunakan mode TCP untuk tujuan lain) dan akan menggunakannodes back end.
- Tambahkan konfigurasi pada sisi backend
# nano /etc/haproxy/haproxy.cfg
backend backendnodes balance roundrobin option forwardfor http-request set-header X-Forwarded-Port %[dst_port] http-request add-header X-Forwarded-Proto https if { ssl_fc } option httpchk HEAD / HTTP/1.1\r\nHost:localhost server node1 192.168.100.7:80 check server node2 192.168.100.24:80 check
- Tambahkan optional status node pada konfigurasinya
# nano /etc/haproxy/haproxy.cfg
listen stats bind :32700 stats enable stats uri / stats hide-version stats auth someuser:password
Berikut adalah file konfigurasi lengkap setelah modifikasi:
- Restart HAProxy untuk mendapatkan konfigurasi yang barunya
# systemctl restart haproxy
Sekarang, setiap permintaan yang masuk ke simpul HAProxy di alamat IP 103.93.55.118 akan diteruskan ke simpul jaringan internal dengan alamat IP 192.168.100.7 atau 192.168.100.24. Node backend ini akan melayani permintaan HTTP. Jika sewaktu-waktu salah satu dari simpul ini gagal dalam pemeriksaan kesehatan, mereka tidak akan digunakan untuk melayani permintaan apa pun sampai mereka lulus tes.
Untuk melihat statistik dan memantau kesehatan node, navigasikan ke alamat IP atau nama domain dari node frontend di browser web di port yang ditugaskan, mis., Http://103.93.55.118:32700. Ini akan menampilkan statistik seperti berapa kali permintaan diteruskan ke simpul tertentu serta jumlah sesi saat ini dan sebelumnya yang ditangani oleh simpul frontend.
Saat ini konfigurasi HAProxy telah selesai dan kita coba akses website menggunakan IP Http://103.93.55.118 untuk melihat hasilnya
Hasil Pertama
Hasil Kedua setelah di refresh browser
Saat ini kita coba untuk menonaktifkan webserver B dan lihat pada statistic
Lalu kita coba jalankan kembali untuk webserver B
Popular Articles
-
Cara Install & Konfigurasi Monitoring Cacti Serta Mengetahui Fungsi Fitur Pada Cacti
8 people say this guide was helpful
-
Cara Mengaktifkan Telnet pada Windows 7, 8 dan 10
3 people say this guide was helpful
-
Instalasi DNS Server Menggunakan Service Bind di CentOS 7
4 people say this guide was helpful
-
Jenis-Jenis Software Virtualisasi untuk Membuat Virtual Machine
5 people say this guide was helpful