Detail

Pentingnya Load Balancing (Application delivery Controller)

Mon, Dec 11 2017 | Author: PT. Central Data Technology

Layanan application delivery sangatlah penting bagi kesuksesan aplikasi, baik dalam meningkatkan skalabilitas, keandalan, ataupun keamanan bagi sebagian besar aplikasi. Hal tersebut lantas membuat Application Delivery Controller (ADC) memiliki peranan kritikal bagi berbagai aplikasi, clouddan desain data center.

Di berbagai lingkungan, termasuk instalasi private cloud, hardware ADC masih menjadi platform pilihan untuk menjalankan layanan application delivery. Hal ini dikarenakan ADC secara khusus menggabungkan sumber-sumber terkontrol, stabil dan konsisten. ADC dapat menghasilkan kinerja dan keandalan secara konsisten, seperti yang dibutuhkan aplikasi dengan beban kerja terbanyak, dikarenakan tidak adanya variasi dalam hypervisor, software atau platform komputasi dasar, selain karena adanya komponen hardware khusus untuk mengurangi beban kerja CPU.

Para vendor ADC mengeluarkan empat tipe metrik untuk pengukuran kinerja:

  1. Jumlah permintaan per detik  (RPS)
  2. Jumlah koneksi per detik (CPS)
  3. Jumlah transaksi per detik (TPS)
  4. Jumlah throughput (biasanya diukur dalam gigabits per detik, Gbps)

 

Application Delivery Controller adalah sebuah komponen infrastruktur yang berperan sebagai proxy aplikasi dan menyediakan layanan application delivery, seperti manajemen trafik, load balancing, dekripsi SSL, keamanan di lapisan aplikasi, serta akses kontrol aplikasi. Setelah perangkat dan layanan klien terhubung ke ADC, ADC akan menciptakan koneksi terpisah atau menggunakan kembali koneksi yang sudah ada agar terhubung ke aplikasi.

Untuk memahami beban kerja ADC, Anda perlu melihat koneksi TCP dan permintaan di lapisan aplikasi. ADC harus melakukan tugas di sejumlah lapisan TCP dan menyelesaikan sejumlah aktivitas untuk menjalankan layanan aplikasi ke trafik aplikasi. (Lihat Gambar 1) Hal ini dapat menyulitkan penginterpretasian metrik kinerja. Langkah awal memahami metrik mana yang relevan adalah dengan mengidentifikasi jenis beban kerja.

pic 1

Beragamnya jenis aplikasi berakibat pada beragamnya beban kerja ADC. Seiring dengan beragamnya beban kerja dalam proses produksi, dampak dan kebutuhan masing-masing beban kerja ini mempengaruhi komponen mana yang paling banyak digunakan dari sebuah ADC. Bahkan di dalam setiap komponen, kebutuhan beban kerjanya beragam. Ada beban kerja yang lebih sensitif terhadap latensi, ada yang terhadap variasi delay, ada pula yang sensitif terhadap batas throughput, serta ketersediaan.

pic 2

Load balancer modern (ADC) memadukan kemampuan load-balancing tradisional dengan layer 7 switching yang lebih canggih untuk mendukung desain jaringan application delivery yang memiliki skalabilitas tinggi dan optimal. Berikut adalah perbedaan kedua teknologi tersebut dan keuntungan penggambungan kedua aplikasi ke dalam satu ADC. Load balancing adalah proses menyeimbangkan beban kerja (jumlah permintaan aplikasi) dengan membagikannya ke beberapa server. Sementara load balancer dikenal sebagai “virtual server” yang menerima permintaan dari beberapa server yang tergabung dalam sebuah pool (disebut juga klaster atau farm) untuk didistribusikan ke seluruh server berdasarkan algoritma load balancing.

Seluruh server yang berada di pool harus memiliki konten yang sama. Load balancer biasanya menggunakan algoritma yang telah menjadi standar bagi beberapa industri untuk mendistribusikan permintaan. Beberapa algoritma load balancing yang umum adalah:

  • round-robin
  • weighted round-robin
  • least connections
  • weighted least connections 

Load balancer digunakan untuk meningkatkan kapasitas sebuah website atau aplikasi, memastikan ketersediaan melalui kemampuan failover, dan meningkatkan kinerja aplikasi. 

LAYER 7 SWITCHING 

Nama layer 7 switching diambil dari model OSI yang mengindikasikan bahwa permintaan switches  didasari oleh data aplikasi layer 7. Layer 7 switching juga diketahui dengan beberapa nama, antara lain "request switching", "application switching", dan "content based routing". 

 Layer 7 switching menyajikan "virtual server" yang dapat menerima permintaan dari beberapa server dan mendistribusikannya berdasarkan kebijakan yang menggunakan data aplikasi untuk menentukan server mana yang akan melayani suatu permintaan. Hal tersebut membuat infrastruktur aplikasi dapat disesuaikan/dioptimalkan secara spesifik dalam melayani jenis konten tertentu. Sebagai contoh, satu server dapat disesuaikan agar dapat melayani gambar saja, sedangkan server lainnya untuk mengeksekusi bahasa skrip server seperti PHP dan ASP, dan server lainnya untuk konten statis seperti HTML, CSS, and JavaScript. 

Tidak seperti load balancing, layer 7 switching tidak mengharuskan semua server yang ada di pool, klaster ataupun farm untuk memiliki konten yang sama. Nyatanya, layer 7 switching sudah memprediksi para server memiliki konten yang berbeda-beda, sehingga dibutuhkan pemeriksaan lebih dalam terkait permintaan yang ada sebelum memutuskan kemana mereka (permintaan) harus diarahkan. Layer 7 switches mampu mengarahkan permintaan-permintaan berdasarkan URL host, HTTP headers, dan apapun yang ada di dalam pesan aplikasi. Kemampuan yang ada membuat layer 7 switches bisa mengerjakan routing berdasarkan konten untuk layanan ESBs dan XML/SOAP.

LAYER 7 LOAD BALANCING

Setelah penggabungan load balancing dengan layer 7 switching, sekarang kita akan membahas layer 7 load balancing yang memiliki kemampuan inti dari semua load balancer modern (ADC). Layer 7 load balancing menggabungkan fitur-fitur standar dari sebuah load balancing untuk menghadirkan failover dan meningkatkan kapasitas bagi konten spesifik. Hal ini membantu arsitek mendesain jaringan application delivery dengan optimal untuk menyajikan konten spesifik yang memiliki ketersediaan tinggi.

Layer 7 load balancing memberikan fitur-fitur tambahan ADC yang diterapkan berdasarkan tipe konten, sehingga dapat meningkatkan kinerja dengan hanya mengeksekusi kebijakan yang berlaku untuk konten. Sebagai contoh, keamanan data melalui data scrubbing kemungkinan tidak perlu dilakukan pada gambar JPG atau GIF, melainkan hanya pada HTML dan PHP.

Layer 7 load balancing juga dapat meningkatkan efisiensi infrastruktur aplikasi. Sebagai contoh, hanya dua server gambar (image server) dengan performa tinggi yang dibutuhkan untuk memenuhi kinerja aplikasi dan konkurensi pengguna, sementara tiga atau empat server mungkin dibutuhkan untuk memenuhi kebutuhan yang sama bagi layanan scripting PHP atau ASP. Memiliki kemampuan untuk memisahkan konten berdasarkan tipe, URL, atau data memungkinkan pengalokasian sumber daya fisik yang lebih baik di infrastruktur aplikasi.

Aplikasi mendorong adanya inovasi dan profitabilitas, yang dapat membuat bisnis Anda mampu memanfaatkan berbagai tren teknologi seperti komputasi awan, mobilitas, dan software-defined network (SDN). Departemen TI Anda bergantung pada infrastruktur jaringan yang ada untuk menghadapi tantangan yang hadir saat ini ataupun di masa depan.

F5® BIGIP® Local Traffic Manager ™ (LTM) membantu Anda menjalankan aplikasi kepada para pengguna dengan cara yang aman, andal, dan optimal. Anda akan mendapatkan layanan aplikasi yang fleksibel dan ekstensibel dengan kemampuan program yang Anda butuhkan untuk mengelola infrastruktur fisik, virtual, dan awan Anda. Dengan BIGIP (LTM), Anda dapat menyederhanakan, mengotomatisasi, dan mengkustomisasi aplikasi secara lebih cepat dan terprediksi.

Manfaat utama:

a)     Menjalankan aplikasi dengan cepat dan andal; Mengoptimalkan aplikasi web saat ini dengan HTTP/2 untuk memastikan bahwa pelanggan dan pengguna Anda memiliki akses ke aplikasi yang mereka butuhkan kapanpun.

b)     Mengotomatisasi, dan menyesuaikan infrastruktur yang dapat diprogram; Mengontrol aplikasi Anda dari koneksi dan trafik sampai konfigurasi dan manajemen menggunakan F5 iRules LX, sebuah evolusi terbaru dari kemampuan pemrograman jaringan yang mendukung platform BIG-IP dengan bahasa Node.js.

c)     Transisi ke SDN dan jaringan cloud; Menyadari konsistensi operasional dan menyesuaikan dengan kebutuhan bisnis di lingkungan fisik, virtual, dan awan dengan penggunaan yang fleksibel dan skalabel.

d)     Aplikasi yang mudah digunakan dan dikelola; Template bentukan F5 iApps® memudahkan  implementasi, pengelolaan, dan visibilitas lengkap ke aplikasi Anda.

e)     Mengamankan aplikasi penting Anda; Melindungi aplikasi bisnis Anda dengan performa dan visibilitas SSL.