Dokumen Asli
Terbatas  Dessy Rondang Monaomi
» Gedung UPT Perpustakaan
Terbatas  Dessy Rondang Monaomi
» Gedung UPT Perpustakaan
Load balancer berguna untuk melakukan pendistribusian lalu lintas jaringan yang masuk pada sebuah sistem. Dalam implementasinya khususnya pada kubernetes, sangat mudah dilakukan dan dapat dibuat pada berbagai layer. Pada kubernetes, load balancer secara default menggunakan iptables yang mana menyimpan chain rules dalam melakukan pemilihan servis yang disimpan. Terdapat kelemahan pada iptables dalam melakukan pemilihan dan perubahan pada servis yang disimpan karena harus melakukan pencocokan satu per satu pada chain rules sehingga memiliki kompleksitas O(n) dalam melakukan pemilihannya. Dalam perubahan chain rules, chain rules harus di-restore secara keseluruhan untuk menyimpan perubahannya sehingga jika menyimpan banyak chain rules akan menyebabkan adanya overhead. Dalam mengatasi hal tersebut, terdapat teknologi yang bernama eBPF yang memiliki eBPF maps yang dapat berjalan pada kernel space yang mana dalam melakukan pemilihan dan perubahan elemen di dalamnya hanya perlu menggunakan key. Pada kubernetes, terdapat sebuah teknologi yang bernama Cilium yang memiliki fungsi untuk melakukan manajemen jaringan dan memiliki fondasi eBPF di dalamnya, sehingga ip tables dapat sepenuhnya diganti menggunakan eBPF maps. Walaupun begitu, dalam implementasi load balancer pada Cilium khususnya pada OSI layer ke empat sangat terbatas dalam melakukan pemilihan algoritmanya dan hanya terbatas pada algoritma yang bersifat stateless karena Cilium memfokuskan pada load balancer dengan throughput yang tinggi dan latensi yang sangat rendah. Dalam implementasi load balancer kali ini akan digunakan eBPF dan algoritma least connection pada kubenetes dan hasilnya LB dapat berjalan dengan mengonsumsi cpu yang lebih rendah dibandingkan dengan iptables dan berjalan dengan kinerja yang lebih stabil.
Perpustakaan Digital ITB