Apa itu Application Load Balancer? - Elastic Load Balancing

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Apa itu Application Load Balancer?

Elastic Load Balancing secara otomatis mendistribusikan lalu lintas masuk Anda ke beberapa target, seperti instans EC2, kontainer, dan alamat IP, dalam satu atau beberapa Availability Zone. Ini memantau kesehatan target terdaftarnya, dan mengarahkan lalu lintas hanya ke target yang sehat. Elastic Load Balancing menskalakan load balancer Anda saat lalu lintas masuk Anda berubah seiring waktu. Ini dapat secara otomatis menskalakan sebagian besar beban kerja.

Elastic Load Balancing mendukung penyeimbang beban berikut: Application Load Balancer, Penyeimbang Beban Jaringan, Gateway Load Balancer, dan Classic Load Balancer. Anda dapat memilih jenis penyeimbang beban yang paling sesuai dengan kebutuhan Anda. Panduan ini membahas Application Load Balancer. Untuk informasi selengkapnya tentang penyeimbang beban lainnya, lihat Panduan Pengguna untuk Penyeimbang Beban Jaringan, Panduan Pengguna untuk Gateway Load Balancer, dan Panduan Pengguna untuk Classic Load Balancer.

Komponen Application Load Balancer

Penyeimbang beban berfungsi sebagai titik kontak tunggal untuk klien. Penyeimbang beban mendistribusikan lalu lintas aplikasi yang masuk ke beberapa target, seperti instans EC2, di beberapa Availability Zone. Hal ini akan meningkatkan ketersediaan aplikasi Anda. Anda menambahkan satu listener atau lebih ke penyeimbang beban Anda.

Listener memeriksa permintaan koneksi dari klien, menggunakan protokol dan port yang Anda konfigurasikan. Peraturan yang Anda tetapkan untuk listener menentukan cara penyeimbang beban merutekan permintaan untuk target terdaftar. Setiap peraturan terdiri dari prioritas, satu tindakan atau lebih, dan satu syarat atau lebih. Bila syarat untuk suatu peraturan terpenuhi, maka tindakannya dilakukan. Anda harus menentukan aturan default untuk setiap listener, dan Anda dapat menentukan aturan tambahan secara opsional.

Setiap grup target merutekan permintaan ke satu atau beberapa target yang terdaftar, seperti instans EC2, menggunakan protokol dan nomor port yang Anda tentukan. Anda dapat mendaftarkan target dengan beberapa grup target. Anda dapat mengonfigurasi pemeriksaan kondisi berdasarkan per grup target. Pemeriksaan kondisi dilakukan pada semua target yang terdaftar ke grup target yang ditentukan dalam aturan listener untuk penyeimbang beban Anda.

Diagram berikut menggambarkan komponen dasar. Perhatikan bahwa setiap listener berisi aturan default, dan satu listener berisi aturan lain yang merutekan permintaan ke grup target yang berbeda. Satu target terdaftar dengan dua kelompok sasaran.

Komponen dari Application Load Balancer dasar

Untuk informasi lebih lanjut, lihat dokumentasi berikut ini:

Gambaran umum Application Load Balancer

Application Load Balancer berfungsi pada lapisan aplikasi, lapisan ketujuh dari model Open Systems Interconnection (OSI). Setelah penyeimbang beban menerima permintaan, penyeimbang beban mengevaluasi aturan listener dalam urutan prioritas untuk menentukan aturan yang akan diterapkan, dan kemudian memilih target dari grup target untuk tindakan aturan. Anda dapat mengonfigurasi aturan listener untuk merutekan permintaan ke grup target yang berbeda berdasarkan isi lalu lintas aplikasi. Perutean dilakukan secara independen untuk setiap grup target, bahkan ketika target terdaftar dengan beberapa grup target. Anda dapat mengonfigurasi algoritme perutean yang digunakan pada tingkat grup target. Algoritma perutean default adalah round robin; sebagai alternatif, Anda dapat menentukan algoritme perutean permintaan yang paling sedikit menonjol.

Anda dapat menambah dan menghapus target dari penyeimbang beban saat kebutuhan Anda berubah, tanpa mengganggu keseluruhan aliran permintaan ke aplikasi Anda. Elastic Load Balancing menskalakan penyeimbang beban Anda saat lalu lintas ke aplikasi Anda berubah seiring waktu. Elastic Load Balancing dapat menskalakan sebagian besar beban kerja secara otomatis.

Anda dapat mengonfigurasi pemeriksaan kondisi, yang digunakan untuk memantau kondisi target terdaftar sehingga penyeimbang beban hanya dapat mengirim permintaan ke target yang sehat.

Untuk informasi lebih lanjut, lihat Cara kerja Elastic Load Balancing di Panduan Pengguna Elastic Load Balancing.

Manfaat migrasi dari Classic Load Balancer

Menggunakan Application Load Balancer alih-alih Classic Load Balancer memiliki manfaat sebagai berikut:

  • Dukungan untuk Syarat jalur. Anda dapat mengonfigurasi aturan untuk listener Anda yang meneruskan permintaan berdasarkan URL dalam permintaan tersebut. Ini memungkinkan Anda untuk menyusun aplikasi Anda sebagai layanan yang lebih kecil, dan mengarahkan permintaan ke layanan yang benar berdasarkan konten URL.

  • Dukungan untuk Syarat host. Anda dapat mengonfigurasi aturan untuk listener Anda yang meneruskan permintaan berdasarkan bidang host di header HTTP. Ini memungkinkan Anda merutekan permintaan ke beberapa domain menggunakan penyeimbang beban tunggal.

  • Dukungan untuk perutean berdasarkan bidang dalam permintaan, seperti Syarat header HTTP dan metode, parameter kueri, dan alamat IP sumber.

  • Dukungan untuk merutekan permintaan ke beberapa aplikasi pada satu instans EC2. Anda dapat mendaftarkan instans atau alamat IP dengan beberapa grup target, masing-masing pada port yang berbeda.

  • Dukungan untuk mengarahkan permintaan dari satu URL ke URL lainnya.

  • Dukungan untuk mengembalikan respons HTTP kustom.

  • Dukungan untuk mendaftarkan target berdasarkan alamat IP, termasuk target di luar VPC untuk penyeimbang beban.

  • Dukungan untuk mendaftarkan fungsi Lambda sebagai target.

  • Dukungan untuk penyeimbang beban untuk mengotentikasi pengguna aplikasi Anda melalui identitas perusahaan atau sosial mereka sebelum merutekan permintaan.

  • Dukungan untuk aplikasi kontainer. Amazon Elastic Container Service (Amazon ECS) dapat memilih port yang tidak terpakai ketika penjadwalan tugas dan mendaftarkan tugas dengan grup target menggunakan port ini. Hal ini memungkinkan Anda untuk memanfaatkan klaster Anda secara efisien.

  • Support untuk memantau kesehatan setiap layanan secara independen, karena pemeriksaan kesehatan didefinisikan pada tingkat kelompok sasaran dan banyak CloudWatch metrik dilaporkan pada tingkat kelompok sasaran. Melampirkan grup target ke grup Auto Scaling memungkinkan Anda menskalakan setiap layanan secara dinamis berdasarkan permintaan.

  • Log akses berisi informasi tambahan dan disimpan dalam format terkompresi.

  • Peningkatan performa penyeimbang beban.

Untuk informasi selengkapnya tentang fitur yang didukung oleh setiap jenis penyeimbang beban, lihat Perbandingan produk untuk Elastic Load Balancing.

Elastic Load Balancing bekerja dengan layanan berikut untuk meningkatkan ketersediaan dan skalabilitas aplikasi Anda.

  • Amazon EC2— Server virtual yang menjalankan aplikasi Anda di cloud. Anda dapat mengonfigurasi penyeimbang beban Anda untuk mengarahkan lalu lintas ke instans EC2 Anda.

  • Amazon EC2 Auto Scaling — Memastikan bahwa Anda menjalankan jumlah instans yang Anda inginkan, bahkan jika sebuah instans gagal, dan memungkinkan Anda untuk secara otomatis menambah atau mengurangi jumlah instans saat permintaan pada instans Anda berubah. Jika Anda mengaktifkan Auto Scaling dengan Elastic Load Balancing, instans yang diluncurkan oleh Auto Scaling secara otomatis terdaftar dengan grup target, dan instance yang diakhiri oleh Auto Scaling secara otomatis dibatalkan registrasi dari grup target.

  • AWS Certificate Manager— Ketika Anda membuat pendengar HTTPS, Anda dapat menentukan sertifikat yang disediakan oleh ACM. Penyeimbang beban menggunakan sertifikat untuk mengakhiri koneksi dan mendekripsi permintaan dari klien. Untuk informasi selengkapnya, lihat Sertifikat SSL.

  • Amazon CloudWatch - Memungkinkan Anda memantau penyeimbang beban dan mengambil tindakan sesuai kebutuhan. Untuk informasi selengkapnya, lihat CloudWatch metrik untuk Application Load Balancer.

  • Amazon ECS — Memungkinkan Anda untuk menjalankan, menghentikan, dan mengelola kontainer Docker pada klaster instans EC2. Anda dapat mengonfigurasi penyeimbang beban Anda untuk mengarahkan lalu lintas ke kontainer Anda. Untuk informasi lebih lanjut, lihat Penyeimbang beban layanan di Panduan Developer Layanan Amazon Elastic Container.

  • AWS Global Accelerator — Meningkatkan ketersediaan dan performa aplikasi Anda. Gunakan akselerator untuk mendistribusikan lalu lintas di beberapa load balancers dalam satu Wilayah atau lebihAWS. Untuk informasi selengkapnya, lihat AWS Global Accelerator Panduan Developer.

  • Route 53 — Menyediakan cara yang andal dan hemat biaya untuk mengarahkan pengunjung ke situs web dengan menerjemahkan nama domain (sepertiwww.example.com) ke alamat IP numerik (seperti192.0.2.1) yang digunakan komputer untuk terhubung satu sama lain. AWSmenetapkan URL ke sumber daya Anda, seperti penyeimbang beban. Namun, Anda mungkin menginginkan URL yang mudah diingat pengguna. Misalnya, Anda dapat memetakan nama domain Anda ke sebuah load balancer. Untuk informasi selengkapnya, lihat Merutekan lalu lintas ke penyeimbang beban ELB di Panduan Pengembang Amazon Route 53.

  • AWS WAF — Anda dapat menggunakan AWS WAF dengan Application Load Balancer Anda untuk mengizinkan atau memblokir permintaan berdasarkan aturan dalam daftar kontrol akses web (web ACL). Untuk informasi selengkapnya, lihat Aplikasi Load Balancer dan AWS WAF.

Untuk melihat informasi tentang layanan yang terintegrasi dengan penyeimbang beban Anda, pilih penyeimbang beban Anda di AWS Management Console dan pilih tab Layanan terintegrasi.

Harga

Dengan penyeimbang beban, Anda hanya membayar apa yang Anda gunakan. Untuk informasi lebih lanjut, lihat Harga Elastic Load Balancing?