[CentOS 7] LAB 8.19 Konfigurasi Reverse Proxy Pass Dengan Load Balance (NGINX Web Server)


Pada kesempatan kali ini, admin mau sharing mengenai Konfigurasi Reverse Proxy Pass Dengan Load Balance (NGINX Web Server). Materi ini adalah kelanjutan dari postingan sebelumnya mengenai Web Server Nginx. Jadi, akan ada beberapa konfigurasi dari materi sebelumnya. Untuk melakukan konfigurasi ini, kita harus melakukan installasi NGINX Web Server terlebih dahulu di setiap server. Untuk konfigurasinya bisa dilihat di postingan sebelumnya yaitu Lab 8.12 Konfigurasi Web Server NGINX (CentOS).

Sebenarnya tidak jauh beda dengan lab sebelumya yaitu Lab 8.18, hanya saja disini admin tambahkan 2 server backend lagi. Jadi ada 3 server backend yang nantinya kita konfigurasi menjadi loadbalance. Loadbalace adalah metode untuk membagi beban traffik/request client pada dua atau lebih jalur koneksi secara seimbang, sehingga traffik dapat berjalan optimal, memaksimalkan throughput, memperkecil waktu tanggap dan menghindari overload pada salah satu jalur koneksi. Dengan cara, si server bekerja secara bergantian sesuai dengan konfigurasi yang nanti kita berikan.

Topologi
Berikut adalah topologi yang digunakan unuk tutorial kali ini



Konfigurasi Server Controller
1) Pertam-tama, lakukan konfigurasi DNS pada server untuk menambahkan domain untuk node2 dan node 3. Disini, admin edit file forward zone nya terlebih dahulu.
nano /var/named/[file forward zone]


2) Didalam file forward tersebut, tambahkan sintak untuk si node2 dan node3 nya seperti pada gambar dibawah ini dengan menambahkan pula IP address nya.



3) Lalu, edit juga file reverse zone nya
 nano /var/named/[file reverse zone]


4) Didalam file reverse tersebut, tambahkan sintak untuk si node2 dan node3 nya seperti pada gambar dibawah ini dengan menambahkan pula IP address nya.



5) Lakukan restart service named agar konfigurasi yang dilakukan sebelumnya berjalan (running)
 systemctl restart named


6) Lakukan pengetesan domain node1 dengan perintah dig
dig [domain node 1]


7)  Lakukan pengetesan domain node2 dengan perintah dig
dig [domain node 2]


8) Lakukan pengetesan domain node3 dengan perintah dig
dig [domain node 3]


9) Selanjutnya kita akan tambahkan konfigurasi (sintak) Reverse Proxy Pass Dengan Load Balance  untuk web server kita. Karena pada lab sebelumnya admin pernah melakukan konfigurasi virtual host di file  vhost.conf. Jadi, semua konfigurasi seperti HTTPS dan konfigurasi lainnya  yang dilakukan sebelumnya berada di file tersebut. Untuk itu, admin akan tambahkan pula konfigurasi Reverse Proxy PassDengan Load Balance di file tersebut. Akan tetapi, jika kalian ingin menambahkannya di file konfigurasi global nginx juga tidak masalah.
 nano /etc/nginx/conf.d/vhost.conf


10) Didalam File vhost.conf tersebut. tambahkan sintak seperti gambar dibawah ini


Keterangan :
  • upstream command ini berfungsi untuk mendefinisikan sebuah cluster yang dapat request proxy. Ini biasa digunakan untuk menentukan cluster web server untuk load balancing
  • backends yaitu penamaan dari cluster yang akan di balancing
  • server merupakan pendefinisian server mana saja yang akan dibalancing, disini saya mengaturnya untuk node1, 2, dan 3
  • weight merupakan beban yang dapat ditanggung pada server tertentu
  • backup berfungsi sebagai server mana yang berperan sebagai backup pada saat server yang lainnya sedang overload ataupun tidak aktif
  • proxy_pass_header yaitu identifikasi Nama server yang dicari di antara kelompok server yang ada, dan jika tidak ditemukan, ditentukan dengan menggunakan resolver.

11) Lalu, tambahkan pula sintak seperti gambar dibawah ini di sintak location /. lalu save


Keterangan :
  • proxy_pass digunakan untuk menetapkan alamat server proxy dan URI ke lokasi mana yang akan dipetakan. Lokasi yang dimaksud dapat berupa Cluster, Domain ataupun IP Address. Disini admin mengaturnya ke domain cluster upstream backends.

12) Lakukan restart service nginx agar konfigurasi yang dilakukan sebelumnya berjalan (running)
 systemctl restart nginx



Setting IP Address Server Node 1
1) Pertama-tama, setting IP address pada server node1. Sesuai topologi diatas, admin mengunakan IP address 192.168.1.210/24. Untuk DNS Servernya diarahkan ke IP address server controllernya yaitu 192.168.1.110


2) Disarankan untuk mengganti hostname si server node1. Disini admin mengganti hostname si server node1 menjadi node1. Jangan lupa untuk lakukan reboot si server.



3) Verifikasi IP dan hostname si server node1




Konfigurasi Server Node 1
1) Pastikan si web server sudah memiliki konten web (halaman web). Disini, isi konten web admin terletak di file index.html di directory /usr/share/nginx/fadillah


2) Edit atau tambahkan sintak html




Setting IP Address Server Node 2
1) Pertama-tama, setting IP address pada server node2. Sesuai topologi diatas, admin mengunakan IP address 192.168.1.220/24. Untuk DNS Servernya diarahkan ke IP address server controllernya yaitu 192.168.1.110



2) Disarankan untuk mengganti hostname si server node2. Disini admin mengganti hostname si server node2 menjadi node2. Jangan lupa untuk lakukan reboot si server.




Konfigurasi Server Node 2
1) Pastikan si web server sudah memiliki konten web (halaman web). Disini, isi konten web admin terletak di file index.html di directory /usr/share/nginx/fadillah



2) Edit atau tambahkan sintak html untuk si server node 2




Setting IP Address Server Node 3
1) Pertama-tama, setting IP address pada server node3. Sesuai topologi diatas, admin mengunakan IP address 192.168.1.230/24. Untuk DNS Servernya diarahkan ke IP address server controllernya yaitu 192.168.1.110



2) Disarankan untuk mengganti hostname si server node3. Disini admin mengganti hostname si server node3 menjadi node3. Jangan lupa untuk lakukan reboot si server.




Konfigurasi Server Node 3
1) Pastikan si web server sudah memiliki konten web (halaman web). Disini, isi konten web admin terletak di file index.html di directory /usr/share/nginx/fadillah


2) Edit atau tambahkan sintak html untuk si server node 3




Verifikasi Pada Client
1) Setting DNS Server pada client di arahkan ke IP address si server controller nya yaitu 192.168.1.110. Lalu lakukan verifikasi akses melalui web browser. maka akan tampil isi dari code HTML yang ada di file index.html di server node1. Karena sebelumnya, admin me-setting server node 1 untuk dapat menampung beban request client sebanyak 3x maka pada saat request ke 4, controller akan berubah/beralih ke node2, Dan jika si client merequest lagi maka akan kembali ke node 1. 

Mengapa tidak ke node 3 ? Itu karena server node3 hanya sebagai backup. Maksudnya , jika server lainnya sedang tidak aktif maka tampilan akan beralih ke node3. Lakukan percobaan refesh sebanyak 3x. Percobaan refressh pertama



2) Percabaan refressh pertama masih tetap pada website server node1. Lakukan percobaan refresh kedua



3) Pada percobaan refresh kedua masih tetap pada website server node1. Lakukan percobaan refresh ketiga



4) Pada percobaan refresh ketiga. tampilan web berubah/beralih ke tampilan web server node 2. Dan jika di refresh 1x lagi tampilan akan berubah/beralih ke tampilan web server node1



5) Akan tetapi, jika server node 1 dan node 2 mati. Maka Server Controller menyerahkan beban request client ke server backup yaitu naode 3. Ingat server yang berperan sebagai backup akan digunakan jika semua server selain server backup sedang tidak aktif (mati).

Lakukan test untuk si server yang berperan sebagai backup. Lakukan shutdown untuk si server node1 dan node2 dengan perintah init 0. Dan lakukan request lagi lewat browser. maka tampilan konten akan berubah/beralih ke konten node 3.





Cukup sekian materi LAB 8.19 Konfigurasi Reverse Proxy Pass Dengan Load Balance (NGINX Web Server) Centos 7 yang dapat saya sharing

Tunggu tutorial selanjutnya
Terima kasih sudah berkunjung
Mohon maaf jika ada kekurangan dan
Semoga bermanfaat
Previous
Next Post »