Penyeimbangan Beban Elastis di AWS
Diterbitkan: 2022-08-10Elastic Load Balancing adalah inti dari aplikasi di AWS. Pelajari semua tentang ELB, jenisnya, dan fitur-fiturnya di posting ini.
Saat ini, sebagian besar organisasi memerlukan pengelolaan dan peningkatan skalabilitas, ketersediaan, dan toleransi kesalahan aplikasi mereka. AWS memberikan solusi yang sangat baik untuk ini, yaitu layanan Elastic Load Balancing. Layanan ini terdiri dari penyeimbang beban yang dapat mendistribusikan beban kerja ke banyak sumber daya komputasi seperti server virtual.

Layanan Load Balancing memungkinkan kami mengonfigurasi health check untuk memantau kondisi sumber daya komputasi. Ini juga memungkinkan kami untuk memindahkan pekerjaan enkripsi dan dekripsi ke penyeimbang beban Anda sehingga sumber daya komputasi dapat fokus pada pekerjaan utamanya.
Penyeimbangan Beban Elastis (ELB): Ikhtisar
ELB adalah layanan yang secara otomatis mendistribusikan lalu lintas masuk ke beberapa instans EC2. Ini membantu mencapai tingkat toleransi kesalahan yang lebih tinggi dalam aplikasi Anda dengan menyediakan kapasitas penyeimbangan beban untuk mendistribusikan lalu lintas aplikasi.

Selain itu, Elastic Load Balancing dapat mendeteksi instans EC2 yang tidak sehat, dan segera setelah instans EC2 ditemukan tidak sehat, ELB berhenti mengirimkan lalu lintas ke instans tersebut hingga menjadi sehat kembali. Pelanggan dapat dengan mudah mengaktifkan Elastic Load Balancing dalam satu atau beberapa Availability Zone untuk kinerja aplikasi yang lebih konsisten.
Fitur Penyeimbangan Beban Elastis
Keamanan
Anda dapat mengelola dan membuat grup keamanan yang terkait dengan Elastic Load Balancing di Amazon Virtual Private Cloud (VPC) untuk memberikan opsi jaringan dan keamanan ekstra untuk Application Load Balancer dan Classic Load Balancer.
Ketersediaan tinggi
Penyeimbang Beban Elastis sangat tersedia. Anda dapat mendistribusikan lalu lintas masuk ke aplikasi Anda ke instans EC2 dalam satu Availability Zone atau beberapa Availability zone.
Throughput tinggi
Elastic Load Balancer dirancang untuk menangani lalu lintas seiring pertumbuhannya dan dapat memuat serta menyeimbangkan jutaan permintaan/dtk. Itu juga dapat menangani lonjakan lalu lintas yang tiba-tiba.
Pemeriksaan Kesehatan
Dengan Elastic Load Balancing, Anda dapat menjaga kesehatan instans EC2 Anda dan tidak mengambil risiko mengirimkan lalu lintas ke instans yang tidak sehat.
Pemantauan dan pencatatan operasional
Amazon CloudWatch melaporkan metrik Aplikasi dan Penyeimbang Beban Klasik seperti jumlah kesalahan, jenis kesalahan, latensi permintaan, jumlah permintaan, dan banyak lagi.
Hapus Perlindungan
Anda dapat mengaktifkan Hapus Perlindungan pada Penyeimbang Beban Elastis untuk mencegahnya terhapus secara tidak sengaja.
Komponen Penyeimbang Beban Elastis
Pendengar
Anda harus mengonfigurasi satu atau beberapa pendengar untuk penyeimbang beban Anda. Ini adalah proses yang memeriksa permintaan koneksi. Ini diatur dengan protokol dan port untuk koneksi untuk koneksi front-end (klien untuk load balancer) dan protokol untuk koneksi back-end (load balancer ke instance back-end).
Protokol yang didukung untuk penyeimbangan beban elastis meliputi:
- HTTPS (HTTP aman)
- TCP
- SSL (TCP aman)
Penyeimbang Beban
Penyeimbang beban berfungsi sebagai "polisi lalu lintas" di depan server Anda, mendistribusikan permintaan klien di semua server yang dilengkapi untuk menanganinya dengan cara yang memaksimalkan kecepatan dan pemanfaatan kapasitas dan memastikan bahwa tidak ada server yang terlalu banyak bekerja, yang dapat mengakibatkan penurunan kinerja.
Penyeimbang beban mengarahkan lalu lintas ke server aktif jika satu server offline. Penyeimbang beban memulai permintaan ke server baru saat ditambahkan ke grup server.
Target grup
Permintaan dirutekan ke satu atau lebih target terdaftar menggunakan setiap grup target. Anda menentukan grup target dan ketentuan saat membuat setiap aturan pendengar. Ketika kondisi aturan terpenuhi, lalu lintas dialihkan ke grup target yang sesuai.
Untuk berbagai jenis permintaan, Anda dapat membuat grup target terpisah. Misalnya, buat grup target yang berbeda untuk permintaan ke layanan mikro dan permintaan umum aplikasi Anda.
Jenis Penyeimbang Beban
Penyeimbang Beban Aplikasi
Application Load Balancer memungkinkan pengembang untuk mengatur dan mengarahkan lalu lintas pengguna akhir yang masuk ke aplikasi yang berjalan di cloud publik AWS.
Load balancing sangat penting dalam lingkungan cloud dengan banyak aplikasi web. Penyeimbang beban memastikan tidak ada satu server yang kelebihan beban dengan membagi lalu lintas jaringan dan arus informasi di antara beberapa server. Ini meningkatkan pengalaman pengguna, meningkatkan respons dan ketersediaan aplikasi, dan dapat bertahan terhadap serangan penolakan layanan (DDoS) terdistribusi.
Akses ke aplikasi web telah berkembang secara signifikan dalam beberapa tahun terakhir. Namun, peningkatan lalu lintas yang tidak terduga dapat memperlambat layanan online dan mengurangi ketersediaan. Application Load Balancer secara efisien mendistribusikan beban jaringan di cloud publik untuk meningkatkan stabilitas dan ketersediaan.

Application Load Balancer hanya akan mengarahkan lalu lintas ke target yang sehat di dalam sumber daya cloud jika aplikasi bermasalah mencapai Layer 7. WebSocket adalah protokol lain yang didukung oleh Application Load Balancer untuk meningkatkan konektivitas dengan server yang mendasarinya.
Situs web dan aplikasi seluler yang berjalan dalam wadah atau pada instans AWS EC2 paling diuntungkan dari penggunaan penyeimbang beban aplikasi. Dalam arsitektur layanan mikro, Application Load Balancer dapat digunakan sebagai penyeimbang beban internal di depan instans EC2 atau kontainer Docker yang mengimplementasikan layanan tertentu. Selain itu, dapat digunakan di depan aplikasi RESTful API.
Banyak layanan AWS yang kompatibel dengan penyeimbang beban aplikasi, termasuk:
- Penskalaan Otomatis AWS
- Layanan Kontainer Elastis Amazon
- AWS CloudFormation
- Penerapan Kode AWS
- Manajer Sertifikat AWS
Penyeimbang Beban Klasik
Lalu lintas dari aplikasi yang masuk dibagi di berbagai instans EC2 menjadi berbagai Availability Zone menggunakan penyeimbang beban klasik. Penyeimbang beban klasik bertindak sebagai satu-satunya titik kontak klien. Ini membuat aplikasi Anda lebih mudah diakses. Tanpa mengganggu aliran umum permintaan ke aplikasi Anda, Anda dapat menambahkan/menghapus instans dari penyeimbang beban klasik saat kebutuhan Anda berubah.
Listener menggunakan protokol dan port yang Anda atur untuk memantau permintaan koneksi klien. Listener kemudian mengirimkan permintaan ke satu atau lebih instance terdaftar menggunakan protokol dan port yang dikonfigurasi. Anda memodifikasi penyeimbang beban Anda dengan menambahkan satu atau beberapa pendengar.
Untuk memastikan bahwa penyeimbang beban hanya mengarahkan permintaan ke instans yang sehat, Anda dapat mengonfigurasi health check, yang digunakan untuk mengawasi kondisi instans terdaftar.
Penyeimbang beban klasik, secara default, mendistribusikan lalu lintas secara merata di antara Availability Zone yang Anda aktifkan untuk penyeimbang beban Anda. Aktifkan penyeimbangan beban lintas-zona pada penyeimbang beban Anda untuk mendistribusikan lalu lintas di antara semua instans terdaftar di semua Availability Zone yang diaktifkan.

Jenis Penyeimbang Beban Klasik:
- Penyeimbang Beban Klasik yang Menghadapi Internet : Penyeimbang beban yang menghadap ke Internet dapat merutekan permintaan dari klien ke instans EC2 yang terdaftar dengan penyeimbang beban melalui Internet, berkat domain DNS-nya yang dapat diselesaikan secara publik. Penyeimbang beban Anda diberi nama DNS publik saat dibuat, yang dapat digunakan klien untuk membuat permintaan. Server DNS menerjemahkan nama DNS penyeimbang beban Anda ke alamat IP publik node penyeimbang beban. Alamat IP pribadi menghubungkan setiap node load balancing ke instance back-end.
- Penyeimbang Beban Klasik Internal: Node penyeimbang beban internal hanya memiliki alamat IP pribadi. Nama DNS penyeimbang beban internal dapat diselesaikan secara publik ke alamat IP node. Akibatnya, permintaan hanya dapat dirutekan oleh penyeimbang beban internal dari klien yang memiliki akses ke VPC penyeimbang beban.
Penyeimbang Beban Jaringan
Penyeimbang beban jaringan bekerja pada lapisan keempat model OSI. Itu dapat menangani jutaan permintaan per detik.
Penyeimbang beban memilih target dari grup target untuk aturan default setelah menerima permintaan koneksi. Ini mencoba membuat koneksi TCP ke target yang dipilih pada port yang ditunjukkan dalam pengaturan pendengar.
Untuk meningkatkan toleransi kesalahan aplikasi, Anda dapat mengaktifkan beberapa zona ketersediaan, layanan berbayar di AWS untuk Network Load balancer. Jika satu Availability Zone turun, aplikasi Anda tidak akan berhenti bekerja.
Untuk lalu lintas TCP, target dipilih menggunakan algoritma hash aliran berdasarkan protokol, port sumber, alamat IP sumber, port tujuan, alamat IP tujuan, dan nomor urut TCP.
Koneksi TCP klien memiliki nomor urut dan port sumber yang berbeda, sehingga koneksi dirutekan ke target lain. Setiap koneksi TCP unik dirutekan ke satu target selama durasi koneksi.
Penyeimbang Beban Gerbang
Peralatan virtual pihak ketiga Anda dapat dengan mudah digunakan, diskalakan, dan dikelola dengan bantuan Gateway Load Balancer. Ini menyediakan gerbang tunggal untuk membagi lalu lintas antara berbagai peralatan virtual dan meningkatkan atau menurunkannya sebagai respons terhadap permintaan. Ini menghilangkan potensi titik kegagalan di jaringan Anda dan meningkatkan ketersediaan.
Peralatan virtual dari produsen independen dapat ditemukan, diuji, dan dibeli langsung melalui AWS Marketplace. Baik Anda ingin terus bekerja dengan vendor Anda saat ini atau mencoba sesuatu yang baru, pengalaman terintegrasi ini mempercepat proses penerapan sehingga Anda dapat memanfaatkan peralatan virtual dengan lebih cepat.
Manfaat penyeimbang beban gateway:
- Penyebaran lebih cepat dari peralatan virtual pihak ketiga.
- Menskalakan peralatan virtual Anda sambil mengelola biaya.
- Tingkatkan ketersediaan alat virtual
Kata-kata Terakhir
Penyeimbang Beban Elastis adalah bagian penting dari banyak infrastruktur yang dibuat di AWS. Fitur yang kami dapatkan dari ELB membuat pengelolaan infrastruktur Anda menjadi lebih mudah. Elastic Load Balancing adalah metode yang terbukti benar untuk menyebarkan permintaan lalu lintas aplikasi dan web ke beberapa target atau instance.
Anda dapat secara otomatis menskalakan berbagai beban kerja Anda menggunakan Elastic Load Balancer. Kami telah membahas semua jenis penyeimbang beban yang disediakan oleh AWS, dan Anda dapat menggunakannya sesuai permintaan aplikasi Anda.




