Shared Load Balancer
4 min read
Shared Load Balancer #
Platform ini menggunakan beberapa komponen Shared Load Balancer (SLB) untuk menangani semua permintaan masuk (incoming requests) (kecuali koneksi langsung lewat public IP) yang dikirim ke environment yang dihosting. SLB ini adalah server proxy berbasis NGINX yang berfungsi sebagai penghubung antara sisi klien (misalnya browser) dengan aplikasi kamu yang sudah dideploy di platform.

Jadi, Shared Load Balancer (SLB) memproses permintaan dari luar platform dan meneruskannya melalui jaringan internal untuk terhubung ke aplikasi yang dituju. SLB juga dibatasi maksimal 50 koneksi simultan per alamat sumber permintaan untuk mencegah serangan DDoS.
Untuk menjamin ketersediaan tinggi (high availability), platform ini menggunakan beberapa SLB yang tersinkronisasi dan ditempatkan di host berbeda, sehingga dapat menangani permintaan secara bersamaan. Semua SLB ini terhubung ke penyimpanan data yang sama, jadi jika salah satu SLB gagal, yang lain bisa langsung menggantikannya tanpa gangguan.
Akibatnya, bisa ada beberapa entry point untuk environment pengguna, sehingga beban permintaan yang masuk dapat didistribusikan secara efisien.
📝 NOTE
Kami menyarankan untuk menggunakan Shared Load Balancer (SLB) pada environment pengembangan dan pengujian.Namun, untuk environment produksi yang ditujukan untuk menangani lalu lintas tinggi, lebih tepat menggunakan public IP sendiri untuk menerima dan memproses permintaan.Selain itu, penggunaan public IP juga memungkinkan kamu untuk menerapkan berbagai opsi tambahan ke aplikasi Kamu, seperti:
- Custom SSL untuk meningkatkan keamanan
- Custom Domain agar lebih responsif dan profesional

Backend Health Check with Shared Load Balancer #
Shared Load Balancer (SLB) pada platform ini secara berkala melakukan pemeriksaan kesehatan server dengan menggunakan modul NGINX upstream check dan pengaturan berikut:
check interval=15000 rise=2 fall=3 timeout=2000 default_down=false;
Artinya:
Semua container dianggap “up” saat SLB pertama kali dijalankan. Sistem akan mengecek ketersediaan setiap node setiap 15 detik (interval=15000 ms). Jika tidak ada respons dalam 2 detik (timeout=2000 ms), maka dianggap gagal. Jika terjadi 3 kegagalan berturut-turut (fall=3), maka node akan ditandai sebagai “down”. Jika node memberikan 2 respons sukses berturut-turut (rise=2), maka akan dianggap kembali “up”.
Dengan ini, SLB hanya akan mengarahkan trafik ke node yang benar-benar aktif dan responsif.
💡 TIP
Jika suatu environment memiliki beberapa backend (application server), maka node load balancer khusus akan otomatis ditambahkan oleh platform untuk mengelola lalu lintas (traffic) secara merata ke semua backend dan melakukan pemeriksaan kesehatan (health checks) terhadap tiap backend agar hanya yang aktif yang menerima traffic. Dengan begitu, distribusi beban dan ketersediaan layanan tetap optimal secara otomatis.
Deny Access via Shared Load Balancer #
Platform ini menyediakan opsi bawaan untuk menonaktifkan akses eksternal ke node environment melalui SLB. Fitur ini akan melarang akses ke container melalui domain default-nya hanya dengan satu klik — tanpa perlu menambahkan public IP atau mengatur firewall secara manual. Opsi ini tersedia dalam bentuk toggle Access via SLB di topology wizard.

📝 NOTE
Platform ini secara otomatis menonaktifkan Access via SLB untuk layer tertentu setelah Public IP ditambahkan. Konfigurasi seperti ini direkomendasikan untuk memberikan tingkat keamanan tertinggi bagi aplikasi Kamu.
Namun, jika dibutuhkan, Kamu masih bisa mengaktifkan kembali Access via SLB agar bisa menggunakan keduanya secara bersamaan (akses lewat SLB dan Public IP).
Opsi Access via SLB diaktifkan secara default untuk setiap layer, yang menyebabkan perilaku berikut :
- Node dapat diakses dari Shared Load Balancer melalui nama domain environment menggunakan port default (80, 8080, 8686, 8443, 4848, 4949, 7979)
- Tombol Open in Browser akan membuka layanan terkait (misalnya panel admin database)
- Link ke node akan muncul di email (jika dibutuhkan)
Namun, jika Kamu menonaktifkan fitur Access via SLB secara manual, maka :
- Node tidak dapat diakses dari Shared Load Balancer (layer jadi terisolasi dari SLB)
- Tombol Open in Browser akan menampilkan error 403 Forbidden
- Link ke node akan tidak dimasukkan ke dalam email
- Akses SSH dan endpoint tetap berfungsi seperti biasa
Sebagai tambahan, layer yang SLB-nya dinonaktifkan akan diberi label khusus di dashboard untuk memudahkan pengenalan.

Mengakses node-node tersebut melalui URL default akan menampilkan halaman error 403 berikut ini alih-alih layanan default :

Di bawah ini, kami telah menyiapkan beberapa contoh kasus penggunaan yang paling umum untuk fitur ini:
- Memblokir akses publik melalui SLB ke node yang dimaksudkan untuk akses internal saja (misalnya basis data)
- Memblokir akses melalui SLB ke node yang memiliki alamat IP publik terpasang dan domain custom yang dikonfigurasi
- Mengkonfigurasi topologi yang memungkinkan koneksi melalui environment load balancer tetapi melarang akses melalui URL langsung ke container
Secara umum, Kamu dapat menggunakan opsi Access via SLB untuk development dan testing environment. Namun, kami merekomendasikan untuk menonaktifkan fitur ini pada aplikasi yang berada di lingkungan produksi dan menggunakan alamat IP publik dengan domain kustom sebagai gantinya.
Powered by BetterDocs
