Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengonfigurasi Application Load Balancer bersama
Saat Anda mengaktifkan penyeimbangan beban, lingkungan AWS Elastic Beanstalk Anda dilengkapi dengan penyeimbang beban Elastic Load Balancing untuk mendistribusikan lalu lintas di antara instans di lingkungan Anda. Elastic Load Balancing mendukung beberapa tipe penyeimbang beban. Untuk mempelajarinya, lihat Panduan Pengguna Elastic Load Balancing. Elastic Beanstalk dapat membuat penyeimbang beban untuk Anda, atau memungkinkan Anda menentukan penyeimbang beban bersama yang telah Anda buat.
Topik ini menjelaskan konfigurasi Application Load Balancer bersama yang Anda buat dan asosiasikan dengan lingkungan Anda. Lihat juga Mengonfigurasi Application Load Balancer. Untuk informasi tentang cara mengonfigurasi semua tipe penyeimbang beban yang didukung Elastic Beanstalk, lihat Penyeimbang beban untuk lingkungan Elastic Beanstalk Anda.
catatan
Anda dapat memilih tipe penyeimbang beban yang hanya digunakan lingkungan Anda selama pembuatan lingkungan. Anda dapat mengubah pengaturan untuk mengelola perilaku penyeimbang beban lingkungan berjalan Anda, tetapi Anda tidak dapat mengubah tipenya. Anda juga tidak dapat beralih dari penyeimbang beban bersama khusus ke penyeimbang beban bersama atau sebaliknya.
Pengantar
Penyeimbang beban bersama adalah penyeimbang beban yang Anda buat dan kelola sendiri menggunakan layanan Amazon Elastic Compute Cloud (Amazon EC2), lalu digunakan di beberapa lingkungan Elastic Beanstalk.
Saat Anda membuat lingkungan penskalaan yang seimbang beban dan memilih untuk menggunakan Application Load Balancer, Elastic Beanstalk membuat penyeimbang beban yang didedikasikan untuk lingkungan Anda secara default. Untuk mempelajari apa itu Application Load Balancer dan cara kerjanya di lingkungan Elastic Beanstalk, lihat pengantar untuk mengonfigurasi Application Load Balancer untuk Elastic Beanstalk.
Dalam beberapa situasi Anda mungkin ingin menghemat biaya dari kepemilikan beberapa penyeimbang beban khusus. Hal ini dapat membantu ketika Anda memiliki beberapa lingkungan, misalnya, jika aplikasi Anda adalah rangkaian layanan mikro bukan layanan monolitik. Dalam kasus seperti itu, Anda dapat memilih untuk menggunakan penyeimbang beban bersama.
Untuk menggunakan penyeimbang beban bersama, pertama buat penyeimbang beban di Amazon EC2 dan tambahkan satu atau lebih pendengar. Selama pembuatan lingkungan Elastic Beanstalk, Anda kemudian menyediakan penyeimbang beban dan memilih port pendengar. Elastic Beanstalk mengaitkan pendengar dengan proses default di lingkungan Anda. Anda dapat menambahkan aturan pendengar khusus untuk merutekan lalu lintas dari header host tertentu dan jalur untuk proses lingkungan lainnya.
Elastic Beanstalk menambahkan tag ke penyeimbang beban bersama. Nama tag adalah elasticbeanstalk:shared-elb-environment-count
, dan nilainya adalah jumlah lingkungan yang berbagi penyeimbang beban ini.
Menggunakan penyeimbang beban bersama berbeda dengan menggunakan penyeimbana beban khusus dalam beberapa hal.
Mengenai | Application Load Balancer Khusus | Application Load Balancer Bersama |
---|---|---|
Manajemen |
Elastic Beanstalk membuat dan mengelola penyeimbang beban, pendengar, aturan pendengar, dan proses (grup target). Elastic Beanstalk juga menghapusnya saat Anda mengakhiri lingkungan Anda. Elastic Beanstalk dapat mengatur pengambilan log akses penyeimbang beban, jika Anda memilih opsi itu. |
Anda membuat dan mengelola penyeimbang beban dan pendengar di luar Elastic Beanstalk. Elastic Beanstalk membuat dan mengelola aturan default dan proses default, dan Anda dapat menambahkan aturan dan proses. Elastic Beanstalk menghapus aturan pendengar dan proses yang ditambahkan selama pembuatan lingkungan. |
Aturan pendengar |
Elastic Beanstalk membuat aturan default untuk setiap pendengar, untuk merutekan semua lalu lintas ke proses default pendengar. |
Elastic Beanstalk mengaitkan aturan default hanya dengan port 80 pendengar, jika ada. Jika Anda memilih port pendengar default yang berbeda, Anda harus mengasosiasikan aturan default dengan port pendengar (konsol Elastic Beanstalk dan EB CLI melakukan ini untuk Anda). Untuk mengatasi konflik kondisi aturan pendengar di lingkungan berbagi penyeimbang beban, Elastic Beanstalk menambahkan CNAME lingkungan untuk aturan pendengar sebagai kondisi header host. Elastic Beanstalk memperlakukan pengaturan prioritas aturan sebagai relatif di lingkungan yang berbagi penyeimbang beban, dan memetakannya ke prioritas mutlak selama pembuatan. |
Grup keamanan |
Elastic Beanstalk membuat grup keamanan default dan melampirkannya ke penyeimbang beban. |
Anda dapat mengonfigurasi satu atau lebih grup keamanan untuk digunakan sebagai penyeimbang beban. Jika tidak, Elastic Beanstalk memeriksa apakah grup keamanan yang ada yang dikelola Elastic Beanstalk sudah terpasang pada penyeimbang beban. Jika belum, Elastic Beanstalk membuat grup keamanan dan melampirkannya ke penyeimbang beban. Elastic Beanstalk menghapus grup keamanan ini ketika lingkungan terakhir yang berbagi penyeimbang beban berakhir. |
Pembaruan |
Anda dapat memperbarui Application Load Balancer Anda setelah pembuatan lingkungan. Anda dapat mengedit pendengar, aturan pendengar, dan proses. Anda dapat mengonfigurasi pengambilan log akses penyeimbang beban. |
Anda tidak dapat menggunakan Elastic Beanstalk untuk mengonfigurasi pengambilan log akses di Application Load Balancer Anda, dan Anda tidak dapat memperbarui pendengar dan aturan pendengar setelah pembuatan lingkungan. Anda hanya dapat memperbarui proses (grup target). Untuk mengonfigurasi pengambilan log akses, dan untuk memperbarui pendengar dan aturan pendengar, gunakan Amazon EC2. |
Mengonfigurasi Application Load Balancer bersama menggunakan konsol Elastic Beanstalk
Anda dapat menggunakan konsol Elastic Beanstalk untuk mengonfigurasi Application Load Balancer bersama selama pembuatan lingkungan. Anda dapat memilih salah satu penyeimbang beban akun yang dapat dibagi untuk digunakan di lingkungan, pilih port pendengar default, dan konfigurasikan proses tambahan dan aturan pendengar.
Anda tidak dapat mengedit konfigurasi Application Load Balancer bersama Anda di konsol Application Load Balancer setelah lingkungan Anda dibuat. Untuk mengonfigurasi pendengar, aturan pendengar, proses (gruptarget), dan pengambilan log akses, gunakan Amazon EC2.
Untuk mengonfigurasi Application Load Balancer di konsol Elastic Beanstalk selama pembuatan lingkungan
Buka Konsol Elastic Beanstalk, dan di daftar Wilayah, pilih Konsol
Elastic BeanstalkWilayah AWS. -
Pada panel navigasi, pilih Lingkungan.
-
Pilih Buat lingkungan baru untuk mulai membuat lingkungan Anda.
-
Pada halaman utama wizard, sebelum memilih Buat lingkungan, pilih Konfigurasikan opsi lainnya.
-
Pilih konfigurasi Ketersediaan yang tinggi yang telah ditetapkan.
Atau, pada kategori konfigurasi Kapasitas, konfigurasikan tipe lingkungan dengan beban seimbang. Untuk rincian selengkapnya, lihat Kapasitas.
-
Pada kategori konfigurasi Penyeimbang beban, pilih Edit.
-
Pilih opsi Application Load Balancer, jika penyeimbang beban belum dipilih, dan kemudian pilih opsi Dibagikan.
-
Buat perubahan konfigurasi Application Load Balancer bersama yang dibutuhkan lingkungan Anda.
-
Pilih Simpan, dan kemudian buat perubahan konfigurasi lain yang diperlukan lingkungan Anda.
-
Pilih Buat lingkungan.
Pengaturan Application Load Balancer Bersama
Application Load Balancer Bersama
Gunakan bagian ini untuk memilih Application Load Balancer bersama untuk lingkungan Anda dan konfigurasikan perutean lalu lintas default.
Sebelum Anda dapat mengonfigurasi Application Load Balancer bersama di sini, gunakan Amazon EC2 untuk menentukan setidaknya satu Application Load Balancer untuk berbagi, dengan setidaknya satu pendengar, di akun Anda. Jika Anda belum melakukannya, Anda dapat memilih Mengelola penyeimbang beban. Elastic Beanstalk membuka konsol Amazon EC2 di tab peramban baru.
Setelah selesai mengonfigurasi penyeimbang beban bersama di luar Elastic Beanstalk, konfigurasikan pengaturan berikut di bagian konsol ini:
-
ARN penyeimbang beban — Penyeimbang beban bersama yang akan digunakan di lingkungan ini. Pilih dari daftar penyeimbang beban atau masukkan penyeimbang beban Amazon Resource Name (ARN).
-
Port pendengar default — Port pendengar yang diperhatikan oleh penyeimbang beban bersama. Pilih dari daftar port pendengar yang sudah ada. Lalu lintas dari pendengar ini dengan CNAME lingkungan di header host dirutekan ke proses default di lingkungan ini.
Proses
Gunakan daftar ini untuk menentukan proses penyeimbang beban bersama Anda. Sebuah proses adalah target bagi pendengar untuk merutekan lalu lintas. Awalnya, daftar menunjukkan proses default, yang menerima lalu lintas dari pendengar default.
Untuk mengonfigurasi proses yang ada
-
Pilih kotak centang di samping entri tabel, dan kemudian pilih Tindakan, Edit.
-
Gunakan kotak dialog Proses lingkungan untuk mengedit pengaturan, dan kemudian pilih Simpan.
Untuk menambahkan proses
-
Pilih Tambah proses.
-
Di kotak dialog Proses lingkungan, konfigurasikan pengaturan yang Anda inginkan, dan kemudian pilih Tambahkan.
Pengaturan kotak dialog proses lingkungan Application Load Balancer
Definisi
Gunakan pengaturan ini untuk menentukan proses: Nama, dan Port dan Protokol yang mendengarkan permintaan.
Pemeriksaan kondisi
Gunakan pengaturan berikut untuk mengonfigurasi pemeriksaan kondisi proses:
-
Kode HTTP — Kode status HTTP menunjuk proses yang sehat.
-
Jalur — Jalur permintaan pemeriksaan kondisi untuk proses tersebut.
-
Batas waktu — Jumlah waktu, dalam detik, untuk menunggu respons pemeriksaan kondisi.
-
Interval — Jumlah waktu, dalam detik, antara pemeriksaan kondisi dari instans individu. Interval harus lebih besar dari batas waktu.
-
Ambang batas tidak sehat, Ambang batas sehat — Jumlah pemeriksaan kondisi yang harus gagal atau lulus, masing-masing, sebelum Elastic Load Balancing mengubah status kondisi instans.
-
Penundaan pendaftaran — Jumlah waktu, dalam detik, untuk menunggu permintaan aktif selesai sebelum membatalkan pendaftaran.
catatan
Pemeriksaan kondisi Elastic Load Balancing tidak memengaruhi perilaku pemeriksaan kondisi grup Auto Scaling lingkungan. Instans yang gagal pada pemeriksaan kondisi Elastic Load Balancing tidak secara otomatis digantikan oleh Amazon EC2 Auto Scaling kecuali Anda secara manual mengonfigurasi Amazon EC2 Auto Scaling untuk melakukannya. Lihat Pengaturan pemeriksaan kondisi Auto Scaling untuk rincian selengkapnya.
Untuk informasi selengkapnya tentang pemeriksaan kondisi dan pengaruhnya terhadap kondisi lingkungan Anda secara keseluruhan, lihat Pelaporan kondisi dasar.
Sesi
Pilih atau kosongkan kotak Kebijakan kelekatan diaktifkan untuk mengaktifkan atau menonaktifkan sesi lekat. Gunakan durasi cookie untuk mengonfigurasi durasi sesi lekat, hingga 604800
detik.
Aturan
Gunakan daftar ini untuk menentukan aturan pendengar khusus untuk penyeimbang beban bersama Anda. Sebuah aturan memetakan permintaan yang diterima pendengar pada pola jalur tertentu untuk proses target. Setiap pendengar dapat memiliki beberapa aturan, merutekan permintaan pada jalur yang berbeda untuk proses yang berbeda pada instans lingkungan yang berbeda berbagi pendengar.
Aturan memiliki prioritas numerik yang menentukan prioritas penerapannya pada permintaan yang masuk. Elastic Beanstalk menambahkan aturan default yang merutekan semua lalu lintas pendengar default untuk proses default lingkungan baru Anda. Prioritas aturan default adalah yang terendah; itu diterapkan jika tidak ada aturan lain untuk pendengar yang sama cocok dengan permintaan masuk. Awalnya, jika Anda belum menambahkan aturan khusus, daftar tersebut kosong. Aturan default tidak ditampilkan.
Anda dapat mengedit pengaturan aturan yang ada, atau menambahkan aturan baru. Untuk mulai mengedit aturan pada daftar atau menambahkan aturan, gunakan langkah yang sama yang tercantum untuk Daftar proses. Kotak dialog Aturan pendengar terbuka, dengan pengaturan berikut:
-
Nama - Nama aturan.
-
port Pendengar — port Pendengar yang aturannya berlaku.
-
Prioritas - Prioritas aturan. Sebuah nomor prioritas yang lebih rendah memiliki prioritas yang lebih tinggi. Prioritas aturan pendengar harus unik. Elastic Beanstalk memperlakukan prioritas aturan sebagai relatif di lingkungan berbagi, dan memetakan mereka ke prioritas mutlak selama pembuatan.
-
Kondisi yang cocok — Daftar kondisi URL permintaan tempat aturan berlaku. Ada dua jenis kondisi: HostHeader(bagian domain URL), dan PathPattern(bagian jalur URL). Satu kondisi dicadangkan untuk subdomain lingkungan, dan Anda dapat menambahkan hingga empat kondisi. Setiap nilai kondisi mencapai 128 karakter panjangnya, dan dapat mencakup karakter wildcard.
-
Proses — Proses dimana penyeimbang beban merutekan permintaan yang sesuai dengan aturan.
Contoh: gunakan Application Load Balancer bersama untuk micro-service-based aplikasi yang aman
Dalam contoh ini, aplikasi Anda terdiri dari beberapa layanan mikro, masing-masing diimplementasikan sebagai lingkungan Elastic Beanstalk. Selain itu, Anda memerlukan enkripsi end-to-end lalu lintas lalu lintas lalu lintas lalu lintas lalu lintas lalu lintas Kami akan menunjukkan salah satu lingkungan layanan mikro, yang memiliki proses utama untuk permintaan pengguna dan proses terpisah untuk menangani permintaan administratif.
Untuk memenuhi persyaratan ini, gunakan Amazon EC2 untuk membuat Application Load Balancer yang akan Anda bagikan di antara layanan mikro Anda. Tambahkan pendengar yang aman pada port 443 dan protokol HTTPS. Kemudian tambahkan beberapa sertifikat SSL ke pendengar—satu per domain layanan mikro. Untuk detail tentang membuat Application Load Balancer dan pendengar yang aman, lihat Buat Application Load Balancer dan Buat pendengar HTTPS untuk Application Load Balancer di Panduan pengguna untuk Application Load Balancers.
Dalam Elastic Beanstalk, konfigurasikan setiap lingkungan layanan mikro untuk menggunakan Application Load Balancer bersama dan atur port pendengar default ke 443. Dalam kasus lingkungan tertentu yang kami tunjukkan di sini, menunjukkan bahwa proses default mendengarkan port 443 pada HTTPS, dan menambahkan proses dan aturan pendengar untuk lalu lintas admin pada jalur yang berbeda.
Untuk mengonfigurasi penyeimbang beban bersama untuk contoh ini
-
Di bagian Application Load Balancer Bersama, pilih penyeimbang beban Anda, dan kemudian, untuk Port pendengar default, pilih
443
. Port pendengar seharusnya sudah dipilih jika itu satu-satunya pendengar yang dimiliki penyeimbang beban. -
Konfigurasikan proses default untuk HTTPS. Pilih proses default, dan kemudian untuk Tindakan, pilih Edit. Untuk Port, masukkan
443
. Untuk Protokol, pilihHTTPS
. -
Tambahkan proses admin. Untuk Nama, masukkan
admin
. Untuk Port, masukkan443
. Untuk Protokol, pilihHTTPS
. Di bawah Pemeriksaan kondisi, untuk Jalur masukkan/admin
. -
Tambahkan aturan untuk lalu lintas admin. Untuk Nama, masukkan
admin
. Untuk Port pendengar, masukkan443
. Untuk kondisi Pertandingan, tambahkan PathPatterndengan nilai/admin/*
. Untuk Proses, pilihadmin
.
Mengonfigurasi Application Load Balancer bersama menggunakan EB CLI
EB CLI meminta Anda untuk memilih tipe penyeimbang beban saat Anda menjalankan eb create. Jika Anda memilih application
(default), dan jika akun Anda memiliki setidaknya satu Application Load Balancer yang dapat dibagikan, EB CLI juga menanyakan apakah Anda ingin menggunakan Application Load Balancer bersama. Jika Anda menjawab y
, Anda juga diminta untuk memilih penyeimbang beban dan port default.
$ eb create
Enter Environment Name
(default is my-app): test-env
Enter DNS CNAME prefix
(default is my-app): test-env-DLW24ED23SF
Select a load balancer type
1) classic
2) application
3) network
(default is 2):
Your account has one or more sharable load balancers. Would you like your new environment to use a shared load balancer?(y/N) y
Select a shared load balancer
1)MySharedALB1 - arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/app/MySharedALB1/6d69caa75b15d46e
2)MySharedALB2 - arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/app/MySharedALB2/e574ea4c37ad2ec8
(default is 1): 2
Select a listener port for your shared load balancer
1) 80
2) 100
3) 443
(default is 1): 3
Anda juga dapat menentukan penyeimbang beban bersama menggunakan opsi perintah.
$ eb create test-env
--elb-type application --shared-lb MySharedALB2
--shared-lb-port 443
Namespace Application Load Balancer Bersama
Anda dapat menemukan pengaturan yang terkait dengan Application Load Balancers bersama di namespace berikut:
-
aws:elasticbeanstalk:environment
— Pilih tipe penyeimbang beban untuk lingkungan, dan beri tahu Elastic Beanstalk bahwa Anda akan menggunakan penyeimbang beban bersama.Anda tidak dapat mengatur dua opsi ini di file konfigurasi (.Ebextensions).
-
aws:elbv2:loadbalancer
— Konfigurasikan ARN Application Load Balancer bersama dan grup keamanan. -
aws:elbv2:listener
— Hubungkan pendengar Application Load Balancer bersama dengan proses lingkungan dengan mencantumkan aturan pendengar. -
aws:elbv2:listenerrule
— Konfigurasikan aturan pendengar yang merutekan lalu lintas ke proses yang berbeda, tergantung pada jalur permintaan. Aturan unik untuk Application Load Balancers—baik khusus maupun bersama. -
aws:elasticbeanstalk:environment:process
— Konfigurasikan pemeriksaan kondisi dan tentukan port dan protokol untuk proses yang berjalan pada instans lingkungan Anda.
contoh .ebextensions/application-load-balancer-shared .config
Untuk memulai dengan Application Load Balancer bersama, gunakan konsol Elastic Beanstalk, EB CLI, atau API untuk mengatur tipe penyeimbang beban application
dan memilih untuk menggunakan penyeimbang beban bersama. Gunakan file konfigurasi untuk mengonfigurasi penyeimbang beban bersama.
option_settings:
aws:elbv2:loadbalancer:
SharedLoadBalancer: arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/app/MySharedALB2/e574ea4c37ad2ec8
catatan
Anda dapat mengonfigurasi opsi ini hanya selama pembuatan lingkungan.
contoh .ebextensions/alb-shared-secure-listener .config
File konfigurasi berikut memilih pendengar aman default pada port 443 untuk penyeimbang beban bersama, dan menetapkan proses default untuk mendengarkan port 443.
option_settings:
aws:elbv2:loadbalancer:
SharedLoadBalancer: arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/app/MySharedALB2/e574ea4c37ad2ec8
aws:elbv2:listener:443:
rules: default
aws:elasticbeanstalk:environment:process:default:
Port: '443'
Protocol: HTTPS
contoh .ebextensions/alb-shared-admin-rule .config
File konfigurasi berikut dibangun pada contoh sebelumnya dan menambahkan aturan yang merutekan lalu lintas dengan jalur permintaan /admin
ke proses yang bernama admin
yang mendengarkan port 4443.
option_settings:
aws:elbv2:loadbalancer:
SharedLoadBalancer: arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/app/MySharedALB2/e574ea4c37ad2ec8
aws:elbv2:listener:443:
rules: default,admin
aws:elasticbeanstalk:environment:process:default:
Port: '443'
Protocol: HTTPS
aws:elasticbeanstalk:environment:process:admin:
HealthCheckPath: /admin
Port: '4443'
Protocol: HTTPS
aws:elbv2:listenerrule:admin:
PathPatterns: /admin/*
Priority: 1
Process: admin