Senin, 23 Maret 2020

LOAD BALANCING

PENGERTIAN LOAD BALANCING


    Load Balancing atau Load Balance merupakan teknik untuk mendistribusikan beban trafik pada dua atau lebih jalur koneksi secara seimbang, menghindari overload pada salah satu jalur koneksi agar trafik dapat berjalan optimal.
    Metode ini biasa digunakan untuk membagi beban suatu server menjadi dua atau lebih secara seimbang agar server lebih optimal dan tidak mengalami kelebihan beban (overload) saat menerima request dari user atau client.
    Metode Load Balancing ini tidak menambah bandwidth dari sebuah server tetapi hanya membagi beban server tersebut. Load Balance ini biasa digunakan pada server yang memiliki jumlah user atau client yang melebihi kapasitas maksimum dari jumlah request yang dapat ditangani oleh server tersebut.

CARA KERJA LOAD BALANCING
    Saat 4 Client melakukan request data kepada server maka Load Balancer akan membagi beban tersebut menjadi sebagian, client 1 dan client 2 akan dilayani oleh server1 sementara client 3 dan client 4 akan dilayani oleh server2. Sama seperti dengan analogi kue, bila kue adalah data request dari client dan pemakan merupakan server maka kue tersebut akan dibagi sebagian agar kue tersebut habis.

KELEBIHAN DAN KEKURANGAN
Kelebihan Load Balancing:
  1. Dapat membagi pekerjaan secara merata kepada server layanan utama.
  2. Sebagai pintu masuk kepada layanan yang ada.
  3. Meminimalisir waktu down dari layanan.
  4. Mempercepat akses layanan karena dapat mengarahkan permintaan layanan ke server yang memilih respon cepat.

Kelemahan Load Balancing:
  1. Menambah biaya karena membutuhkan dua atau lebih server.
  2. Jika server induk bermasalah maka semua sistem virtual yang ada di dalamnya tidak bisa digunakan.
  3. Penempatan semua data dalam satu server akan menjadi target serangan virus atau pun seorang hacker.

MANFAAT LOAD BALANCING

  • Mengurangi Beban Server
      Request data dari client tentu akan membuat server mengalami overload, bila terjadi overload server tersebut akan down dan tidak dapat diakses oleh client. Maka dari itu load balancing membagi beban request data dari client agar server berjalan lebih maksimal dalam menangani request data client.
  • Mempercepat Akses
      Bila melakukan load balancing pada web server maka website dari web server tersebut akan lebih cepat diakses dikarenakan beban dari client ditangani oleh dua atau lebih web server yang menyebabkan akses tersebut dapat ditangani tanpa memperlambat kinerja dari server.

  • Redudansi
      Jika terdapat 3 web server dan salah satunya mengalami kerusakan (down) maka 2 web server lain akan tetap menjaga website selalu berjalan dan dapat di akses oleh client, client tidak akan menyadari downtime apapun dari website tersebut.

TRAFFIC UTAMA LOAD BALANCING
    Administrator Load balancer membuat peraturan penerusan untuk empat jenis traffic utama:

  1. HTTP – Standar  balancing HTTP mengarahkan permintaan berdasarkan mekanisme HTTP standar. Load Balancer menetapkan header X-Forwarded-For, X-Forwarded-Proto, dan X-Forwarded-Port untuk memberi informasi tentang permintaan awal.
  2. HTTPS – fungsi  balancing HTTPS sama dengan balancing HTTP, dengan penambahan enkripsi. Enkripsi ditangani dengan salah satu dari dua cara: baik dengan passthrough SSL yang menyimpan enkripsi sampai ke backend atau dengan penghentian SSL yang menempatkan beban dekripsi pada Load balancer namun mengirimkan traffic yang tidak dienkripsi ke bagian belakang.
  3. TCP – Untuk aplikasi yang tidak menggunakan HTTP atau HTTPS, TCP juga bisa diimbangi. Misalnya, traffic ke cluster database bisa tersebar di semua server.
  4. UDP – Baru-baru ini, beberapa balancers beban telah menambahkan dukungan untuk protokol internet core load balancing seperti DNS dan syslogd yang menggunakan UDP.

    Aturan penerusan ini akan menentukan protokol dan port pada Load balancer itu sendiri dan memetakannya ke protokol dan port yang digunakan Load balancer untuk mengarahkan traffic ke backend

JENIS-JENIS LOAD BALANCING
    Dalam membangun suatu topologi yang memanfaatkan load balancing tentu kita akan merencanakannya terlebih dahulu akan bagaimana topologi, harga, kemampuan akhir dari topologi load balancing, dan jenis load balancer yang akan digunakan untuk membangun topologi. Di bawah ini merupakan dua jenis load balancer, yaitu :

  • Software load-balancing.

      Dimana load-balancing berjalan disebuah PC/Server, dan aplikasi load-balancing di install dan perlu dikonfigurasi sebelum dapat berfungsi. Keuntungannya adalah jika ada penambahan fitur atau fasilitas tambahan tidak perlu mengganti keseluruhan perangkat load-balancing. Performa proses load-balancing dipengaruhi oleh perangkat komputer yang digunakan, tidak bisa hanya mengandalkan kemampuan software yang canggih saja. Perangkat keras yang dapat mempengaruhi performa metode ini adalah kartu jaringan, besarnya RAM pada perangkat, media penyimpanan yang besar dan cepat, dsb. sehingga performa metode ini sulit untuk bisa diperkirakan. Beberapa load-balancer software yaitu: Linux Virtual Server, Ultra Monkey, dan Network load-balancing.

Kelebihan

  1. Lebih murah
  2. Software aplikasi memiliki banyak pilihan konfigurasi yang dapat disesuaikan dengan kebutuhan.

Kekurangan

  1. Sebagian besar aplikasi tidak dapat menangani situs-situs yang besar atau jaringan yang kompleks.
  2. Paket aplikasi yang akan mendukung sistem besar memerlukan hardware yang banyak juga.


  • Hardware load-balancing.

       Dimana load-balancing berjalan disebuah device/ alat yang sudah disiapkan dari pabrik dan siap digunakan. Tipe Hardware load-balancing banyak digunakan karena kemudahannya. Beberapa load-balancer hardware, yaitu: Cisco System Catalyst, Coyote Point, FS Network BIG-IP, Baraccuda load-balancer.

Kelebihan

  1. Mudah disesuaikan dari pada perangkat lunak
  2. Proses lalu lintas pada tingkat jaringan, yang secara nominal lebih efisien daripada deskripsi perangkat lunak.
  3. Bekerja dengan banyak OS atau platform

Kekurangan
Biaya lebih mahal dari perangkat lunak

ALGORITMA LOAD BALANCING
     • Round Robin
       Algoritma load balancing paling sederhana yaitu membagi beban secara bergiliran dan berurutan dari satu server ke server lain.
     • Ratio
       Algoritma ini membagi beban dengan cara memberi rasio pada setiap servernya semakin besar rasio maka semakin besar juga server tersebut menangani beban.
     • Fastest
       Melakukan pembagian beban dengan cara menutamakan server-server yang memiliki respon paling cepat. Server ini yang nanti akan menangani beban saat terdapat request. Jadi saat server yang sedang melakukan pengambilan data yang menyebabkan respon server tersebut menjadi lambat dan request tersebut akan di ambil oleh server lain yang memiliki respon tercepat
     • Least Connection
       Melakukan pembagian berdasarkan banyaknya koneksi yang sedang dilayani  oleh server. Server yang paling sedikit melayani koneksi client maka server tersebut yang akan mengambil request berikutnya dari client

    Teknologi load-balancing dapat menjadi salah satu solusi yang efektif dan efisien untuk menciptakan sistem yang handal dengan tingkat ketersediaan tinggi, khususnya sebagai web server. Untuk pemanfaatan teknologi load-balancing menggunakan software load-balancing saat ini banyak digunakan pada sistem operasi open source seperti linux.

Sekian dan terimakasih.
Kritik dan saran sangat berguna bagi penulis.

Sumber referensi:
https://www.jetorbit.com/blog/memahami-pentingnya-load-balancing-pada-jaringan/
https://jihadt-a.blogspot.com/2019/09/pengertian-cara-kerja-load-balance.html?m=1
https://www.jagoanhosting.com/blog/belajar-banyak-tentang-server-kamu-harus-tahu-arti-load-balancing/
https://www.google.com/amp/s/idcloudhost.com/mengenal-tipe-load-balancing-beserta-perbandingannya/amp/


1 komentar: