Apa Perbedaan Antara Penyeimbangan Beban Aplikasi, Jaringan, dan Gateway?


Apa perbedaan antara penyeimbangan beban aplikasi, jaringan, dan gateway?

Penyeimbang beban aplikasi (ALB), penyeimbang beban jaringan (NLB), dan penyeimbang beban gateway (GLB) adalah tiga tipe penyeimbang beban yang digunakan di cloud. Penyeimbangan beban adalah proses distribusi lalu lintas jaringan secara merata di seluruh kumpulan sumber daya yang mendukung aplikasi. Aplikasi modern memproses jutaan pengguna secara bersamaan. Volume lalu lintas yang tinggi ini membutuhkan banyak server sumber daya dengan data duplikat. Untuk mengalihkan lalu lintas aplikasi, ALB memeriksa konten yang diminta, seperti header HTTP atau ID sesi SSL. NLB memeriksa alamat IP dan informasi jaringan lainnya untuk mengalihkan lalu lintas secara optimal. GLB bertindak sebagai gateway jaringan transparan (titik masuk dan keluar tunggal untuk semua lalu lintas) dan mendistribusikan lalu lintas sekaligus menskalakan peralatan virtual Anda sesuai dengan permintaan.

Baca tentang penyeimbangan beban

Cara kerja: ALB vs. NLB vs. GLB

ALB, NLB, dan GLB menyediakan fungsi yang berbeda. Karena itulah, fitur-fitur tersebut bekerja dengan cara yang sedikit berbeda dan mencakup komponen yang berbeda. 

Cara kerja penyeimbang beban aplikasi

ALB mendistribusikan lalu lintas masuk ke beberapa target, seperti instans EC2. Misalnya, aplikasi e-commerce memiliki direktori produk, keranjang belanja, dan fungsi checkout. ALB mengirimkan permintaan untuk menjelajahi produk ke server yang berisi gambar dan video tetapi tidak perlu mempertahankan koneksi terbuka. Sebagai perbandingan, ALB mengirimkan permintaan keranjang belanja ke server yang dapat mempertahankan banyak koneksi klien dan menyimpan data keranjang untuk waktu yang lama.

ALB memiliki komponen pendengar yang memeriksa permintaan koneksi dari klien. Anda dapat menentukan aturan untuk pendengar yang menentukan cara penyeimbang beban merutekan permintaan ke target terdaftar. Grup target mengurutkan target terdaftar ke dalam grup. Anda dapat menentukan aturan untuk merutekan lalu lintas umum ke seluruh grup. Misalnya, Anda dapat membuat grup target untuk permintaan umum dan grup target lainnya untuk permintaan ke layanan mikro untuk aplikasi Anda.

Diagram berikut menunjukkan cara kerja ALB.

Cara kerja penyeimbang beban jaringan

NLB mendistribusikan lalu lintas berdasarkan kondisi jaringan. Misalnya, jika Anda memiliki beberapa server basis data dengan data duplikat, NLB merutekan lalu lintas berdasarkan alamat IP server yang telah ditentukan atau ketersediaan server.

NLB memantau kondisi target yang terdaftar dan mengarahkan lalu lintas hanya ke target yang sehat. Setelah menerima permintaan koneksi, penyeimbang beban memilih target dari grup target untuk aturan default. Penyeimbang beban mencoba untuk membuka koneksi TCP ke target yang dipilih pada port yang ditentukan dalam konfigurasi pendengar. Setiap koneksi TCP individual dirutekan ke satu target selama masa koneksi. Demikian pula, Anda juga dapat merutekan aliran UDP secara konsisten ke satu target sepanjang masa pakainya. 

Cara kerja penyeimbang beban gateway

Dengan GLB, Anda dapat melakukan deployment, mengelola, dan menskalakan peralatan virtual, seperti deteksi dan pencegahan penyusup, firewall, dan sistem inspeksi paket mendalam. GLB membuat satu titik masuk dan keluar untuk semua lalu lintas alat dan menskalakan peralatan virtual Anda sesuai permintaan. Anda juga dapat menggunakannya untuk bertukar lalu lintas di seluruh batas cloud privat virtual (VPC). 

Di GLB, Anda menetapkan aturan menggunakan tabel rute. Tergantung pada aturan yang Anda siapkan, GLB memilih grup target yang berbeda untuk meneruskan lalu lintas. GLB menerima paket IP dan meneruskan lalu lintas ke grup target tertentu.

Perbedaan utama: ALB vs. NLB vs. GLB

ALB, NLB, dan GLB beroperasi di berbagai lapisan komunikasi jaringan Anda. ALB beroperasi pada OSI lapisan 7 dan memungkinkan manipulasi lalu lintas tingkat aplikasi dan perutean. NLB beroperasi pada lapisan 4 untuk manajemen lalu lintas tingkat jaringan berdasarkan port dan alamat IP. GLB bekerja di seluruh lapisan 3 dan 7, yang menyediakan layanan penyeimbangan dan perutean di tingkat jaringan bersama dengan fungsionalitas gateway.

Baca tentang model OSI

Berikut ini adalah perbedaan utama lainnya antara ALB, NLB, dan GLB.

Tipe target

Tipe target adalah titik akhir tempat masing-masing penyeimbang beban ini merutekan lalu lintas. ALB bekerja dengan alamat IP, instans, dan tipe target AWS Lambda. NLB bekerja dengan IP dan instans, serta dapat merutekan lalu lintas ke ALB untuk permintaan yang lebih kompleks. GLB bekerja dengan IP dan tipe target instans.

Baca tentang instans di komputasi cloud

Perilaku proksi

Tindakan yang dilakukan penyeimbang beban saat menerima permintaan klien tergantung pada salah satu dari dua hal berikut:

  • Jika penyeimbang beban bertindak sebagai proksi lalu mengakhiri koneksi klien
  • Jika penyeimbang beban meneruskan permintaan tanpa menghentikan aliran

Mengakhiri aliran memungkinkan penyeimbang beban untuk melakukan fungsi manajemen lalu lintas tambahan, seperti penghentian SSL, persistensi sesi, dan perutean berbasis konten. 

ALB mengakhiri koneksi klien lalu membuat koneksi baru, yang bertindak sebagai proksi. NLB juga mengakhiri koneksi klien dan membuat yang baru atas nama klien. Namun, GLB tidak bertindak sebagai proksi atau mengakhiri koneksi; namun, meneruskan lalu lintas secara langsung.

Protokol

Penyeimbang beban ini mendukung protokol yang berbeda untuk menangani tipe lalu lintas tertentu dan melakukan fungsi lanjutan. ALB mendukung protokol HTTP, HTTPS, dan gRPC untuk lalu lintas berbasis web. NLB mendukung protokol TCP, UDP, dan TLS, yang mencakup distribusi lalu lintas tingkat jaringan. Terakhir, GLB mencakup perutean berbasis IP, yang menangani protokol berbasis IP apa pun. 

Algoritma

Penyeimbang beban ini menggunakan berbagai tipe algoritma untuk mendistribusikan lalu lintas secara merata ke targetnya. ALB menggunakan algoritma round-robin secara default, yang merutekan lalu lintas satu demi satu. Namun, NLB menggunakan algoritma hash aliran sehingga lalu lintas dirutekan ke target tertentu dengan cara yang telah ditentukan. GLB menggunakan pencarian tabel perutean untuk menentukan tempat lalu lintas akan diarahkan. 

Kapan perlu menggunakan: ALB vs. NLB vs. GLB

ALB adalah pilihan yang baik ketika Anda membutuhkan manajemen dan perutean lalu lintas tingkat aplikasi yang fleksibel. Terbaik dalam layanan mikro, lingkungan terkontainerisasi, dan aplikasi web. Fitur-fiturnya—seperti penghentian SSL, persistensi sesi, dan perutean berbasis konten yang memungkinkannya memberikan bantuan dengan skenario perutean yang kompleks. 

NLB merupakan fitur terbaik untuk penyeimbangan tingkat jaringan dengan performa tinggi, latensi rendah, dan dapat diskalakan. Aplikasi yang mendistribusikan lalu lintas pada lapisan pengangkutan menggunakan NLB, terutama mengingat keandalannya. Sistem game, layanan streaming media, dan sistem IoT utama menggunakan NLB. 

GLB sangat ideal saat Anda menyeimbangkan pada tingkat gateway jaringan. Misalnya, GLB berfungsi dengan baik jika Anda mengelola lalu lintas antara lingkungan cloud dan on-premise atau di berbagai wilayah. Karena menggabungkan penyeimbangan OSI lapisan 3 dan 4, GLB dapat merutekan lalu lintas antara wilayah dan jaringan yang berbeda. Karena mendukung perutean berbasis IP, GLB dapat mendistribusikan lalu lintas di seluruh gateway virtual sehingga dapat menawarkan skalabilitas dan ketersediaan yang tinggi.

Ringkasan perbedaan: ALB vs. NLB vs. GLB

 

Penyeimbang beban aplikasi (ALB)

Penyeimbang beban jaringan (NLB)

Penyeimbang beban gateway (GLB)

Lapisan OSI

Bekerja pada lapisan 7, lapisan aplikasi.

Bekerja pada lapisan 4, lapisan transportasi.

Bekerja pada lapisan jaringan, lapisan 3, dan lapisan 7.

Tipe target

Bekerja dengan IP, tipe target instans, dan tipe target lambda.

Bekerja dengan IP, tipe target instans, dan tipe target ALB.

Bekerja dengan IP dan tipe target instans.

Perilaku proksi

Mengakhiri koneksi.

Mengakhiri koneksi.

Tidak mengakhiri aliran.

Protokol

Mendukung protokol HTTP, HTTPS, dan gRPC.

Mendukung protokol TCP, UDP, dan TLS.

Mendukung perutean berbasis IP. 

Algoritma

Putaran ronde.

Hash aliran.

Pencarian tabel perutean.

Bagaimana AWS dapat membantu memenuhi kebutuhan penyeimbangan beban Anda?

Elastic Load Balancing (ELB) adalah layanan penyeimbangan beban yang terkelola penuh. ELB secara otomatis mendistribusikan lalu lintas aplikasi masuk ke beberapa target dan peralatan virtual di Amazon Web Services (AWS) dan sumber daya on-premise. Selain itu, fitur ini mendukung penyeimbangan beban lintas zona di seluruh Wilayah AWS. Anda dapat menggunakan ELB untuk mengatur ALB, NLB, atau GLB sesuai dengan kebutuhan Anda. 

ALB adalah salah satu komponen ELB. ELB juga mendukung NLB, GLB, dan Penyeimbang Beban Klasik. Penyeimbang beban ini adalah titik kontak klien dan membantu meningkatkan skalabilitas aplikasi dengan manajemen yang aman. Anda dapat memilih satu atau beberapa penyeimbang beban dan mengonfigurasinya saat Anda mengatur ELB untuk lingkungan cloud Anda.

Mulai menggunakan penyeimbangan beban di AWS dengan membuat akun sekarang juga.

Langkah Berikutnya dengan AWS