Jumat, 25 Oktober 2019

Oktober 25, 2019

Assalamualaikum Wr.Wb

Load Balancing adalah teknik untuk membagi beban (load) ke dalam beberapa jalur atau link. Tujuan dari load balance ini agar tidak ada link yang mendapat beban yang lebih besar dari pada link lainnya. Diharapkan dengan membagi beban ke dalam beberapa link tersebut, maka akan tercapai keseimbangan (balance) pada link-link tersebut.

Load Balancing juga memiliki beberapa algoritma dalam membagi beban seperti : 
  • Roundrobin
Round robin merupakan pilihan default dan algoritma ini memilih server secara bergantian berurutan sehingga cenderung balance ke semua server yang ada di Backend. 
  • Leastconn
Memilih server berdasarkan jumlah koneksi yang paling sedikit. Ini direkomendasikan untuk session yang lama. Namun server di Backend yang sama juga akan dirotasi pemilihannya seperti round robin.
  • Source

Memilih server mana berdasarkan source IP (Alamat IP Pengguna) yang di hash. Hal ini untuk memastikan pengguna tersebut mendapatkan server yang sama.
  • Sticky Session

Beberapa aplikasi membutuhkan penggunanya untuk terkoneksi / terhubung pada Backend server yang sama. Untuk keperluan persisten ini dibutuhkan yang namanya Sticky Session dengan parameter appsession pada Backend yang membutuhkannya

gambaran topology


1. Sebelum melakukan konfigurasi setting terlebih dahulu jaringan yang digunakan 

Jaringan yang digunakan ialah :
Server Core : Adapator Hanya-host dan Jaringan Internal
Web 1          : Jaringan Internal
Web 2          : Jaringan Internal



2. Kemudian atur terlebih dahulu ip address yang digunakan pada server core atau server inti kita dengan menambahkan ip address pada eth0 dan eth1 untuk saling terhubung antar server dan juga agar kita bisa mengakses pengujiannya lewat client


3. Kemudian pada web 1 , kita atur terlebih dahulu ip address yang digunakan pada server web 1 dengan menggunakan satu network agar server core dan server web bisa saling terhubung


4. Kemudian pada web 2 juga sama , setting ip address yang satu network pada server inti agar bisa saling terhubung satu server dengan server web lainnya


5. Sebelumnya pada server core , konfigurasi terlebih dahulu DNS agar kita bisa meload balancing menggunakan ip address


6. Langsung saja kita konfigurasi haproxy dengan perintah " apt-get install haproxy " dan akan disuruh memasukkan dvd 3


7. Kemudian kita masuk pada " nano /etc/default/haproxy " kemudian kita uncomment ( # ) atau hapus tanda pagar di bagian CONFIG nya


8. Kemudian kita masukkan script haproxy load balancing pada " nano /etc/haproxy/haproxy.cfg " kita masukkan script yang standarisasi nya


9. Kemudian kita restart terlebih dahulu haproxy yang telah di konfigurasi , setelah restart terlebih dahulu melihat status aktif atau tidak nya pada haproxy dengan perintah " /etc/init.d/haproxy status "



10. Kemudian kita masuk pada konfigurasi Web 1 dengan konfigurasi nginx

NGINX adalah software web server yang open source. Ketika pertama kali dirilis, NGINX hanya berfungsi sebagai HTTP web serving saja. Namun sekarang, software tersebut juga berperan sebagai reverse proxy, HTTP load balancer, dan email proxy untuk IMAP, POP3, dan SMTP.

Cara kerja nginx yaitu menjalankan arsitektur yang event-driven dan asinkron. Hal ini menunjukkan bahwa thread yang sama atau serupa dikelola di bawah satu worker process, dan setiap worker process terdiri atas unit yang lebih kecil dan disebut worker connection. Keseluruhan unit ini bertugas untuk menangani request thread. Worker connection mengirimkan permintaan ke worker process, yang juga dikirimkannya ke master process. Master process kemudian menampilkan hasil dari permintaan atau request tersebut


11. Kemudian setelah konfigurasi nginx , kita lihat status aktif atau tidaknya nginx tersebut dengan perintah " /etc/init.d/nginx status "


12. Untuk merubah tampilan pada nginx , kita bisa merubahnya pada " nano /var/www/html/index.nginx-debian.html "


13. Setting terlebih dahulu ip address yang mengarah pada client , setelah selesai setting ip address yang mengarah pada client , kita lakukan pengujian dengan memasukkan ip address yang digunakan pada server inti


14. Kemudian pada Web 2 , kita sama juga konfigurasi nginx pada web 2 , untuk membackup ketika web 1 ada problem , maka web 2 lah yang langsung membackup web 1 ketika ada masalah


15. Untuk melihat status aktif atau tidaknya nginx , kita bisa lakukan perintah " /etc/init.d/nginx status "


16. Sama seperti sebelumnya pada web 1 , kita juga bisa merubah tampilan default nginx dengan ketik perintah " nano /var/www/html/index.nginx-debian.html "


17. Kemudian terlebih dahulu kita stop nginx pada Web 1 dengan perintah " /etc/init.d/nginx stop " , kemudian setelah itu kita masukkan ip address yang digunakan pada server inti

Kesimpulannya :

Seperti yang saya jelaskan , nginx web 1 dan nginx web 2 , jika ada salah satu web yang troubleshoot atau problem , maka web yang lainnya akan membackup nginx tersebut

Sekian dari saya , semoga bermanfaat dan jangan lupa untuk di pelajari lagi ya

Wassalamualaikum Wr.Wb
Next
This is the most recent post.
Posting Lama

0 comments:

Posting Komentar