Konfigurasi kapasitas untuk lingkungan Elastic Beanstalk Anda - AWS Elastic Beanstalk

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

Konfigurasi kapasitas untuk lingkungan Elastic Beanstalk Anda

Topik ini menjelaskan berbagai pendekatan untuk mengonfigurasi kapasitas Auto Scaling untuk lingkungan Elastic Beanstalk Anda. Anda dapat menggunakan konsol Elastic Beanstalk, EB CLI, opsi, atau namespace. AWS CLI

penting

Pengaturan EnableSpot opsi dapat menyebabkan Elastic Beanstalk menciptakan lingkungan dengan template peluncuran atau memperbarui lingkungan yang ada dari konfigurasi peluncuran hingga meluncurkan templat. Melakukannya memerlukan izin yang diperlukan untuk mengelola templat peluncuran. Izin ini disertakan dalam kebijakan terkelola kami. Jika Anda menggunakan kebijakan khusus alih-alih kebijakan terkelola kami, pembuatan atau pembaruan lingkungan mungkin gagal saat Anda mengaktifkan instance spot untuk lingkungan Anda. Untuk informasi lebih lanjut dan pertimbangan lainnya, lihatLuncurkan template untuk lingkungan Elastic Beanstalk Anda.

Konfigurasi menggunakan konsol

Anda dapat mengonfigurasi manajemen kapasitas grup Auto Scaling dengan mengedit Kapasitas pada halaman Konfigurasi lingkungan di konsol Elastic Beanstalk.

Untuk mengonfigurasi kapasitas grup Auto Scaling di konsol Elastic Beanstalk
  1. Buka konsol Elastic Beanstalk, dan di daftar Wilayah, pilih konsol Elastic Beanstalk. Wilayah AWS

  2. Di panel navigasi, pilih Lingkungan, dan kemudian pilih nama lingkungan Anda dari daftar.

    catatan

    Jika Anda memiliki banyak lingkungan, gunakan bilah pencarian untuk memfilter daftar lingkungan.

  3. Di panel navigasi, pilih Konfigurasi.

  4. Pada kategori konfigurasi Kapasitas, pilih Edit.

  5. Di bagian Grup Auto Scaling, konfigurasikan pengaturan berikut.

    • Tipe lingkungan – Pilih Beban yang Diseimbangkan.

    • Min instance — Jumlah minimum EC2 instance yang harus dikandung grup kapan saja. Grup dimulai dengan jumlah minimum dan menambahkan instans ketika kondisi pemicu menaikkan skala tersebut terpenuhi.

    • Instance Max — Jumlah maksimum EC2 instance yang harus dikandung grup kapan saja.

      catatan

      Jika Anda menggunakan pembaruan bergulir, pastikan bahwa jumlah instans maksimum lebih tinggi daripada Instans minimum dalam pengaturan layanan untuk pembaruan bergulir.

    • Komposisi armada — Standarnya adalah Instans Sesuai Permintaan. Untuk mengaktifkan permintaan Instans Spot, pilih Opsi pembelian gabungan dan instans.

      penting

      Pengaturan EnableSpot opsi dapat menyebabkan Elastic Beanstalk menciptakan lingkungan dengan template peluncuran atau memperbarui lingkungan yang ada dari konfigurasi peluncuran hingga meluncurkan templat. Melakukannya memerlukan izin yang diperlukan untuk mengelola templat peluncuran. Izin ini disertakan dalam kebijakan terkelola kami. Jika Anda menggunakan kebijakan khusus alih-alih kebijakan terkelola kami, pembuatan atau pembaruan lingkungan mungkin gagal saat Anda mengaktifkan instance spot untuk lingkungan Anda. Untuk informasi lebih lanjut dan pertimbangan lainnya, lihatLuncurkan template untuk lingkungan Elastic Beanstalk Anda.

      Opsi berikut diaktifkan jika Anda memilih untuk mengaktifkan permintaan Instans Spot:

      • Strategi alokasi spot — Menentukan metode yang digunakan untuk mengelola dan menyediakan Instans Spot di lingkungan Anda, berdasarkan kapasitas, harga, dan pemilihan jenis instans yang tersedia. Pilih dari Kapasitas yang dioptimalkan (default), Kapasitas harga dioptimalkan, Kapasitas dioptimalkan diprioritaskan, atau Harga terendah. Untuk deskripsi setiap strategi alokasi dan informasi lebih lanjut, lihatStrategi alokasi Instans Spot.

      • Harga spot maksimum — Untuk rekomendasi tentang opsi harga maksimum untuk Instans Spot, lihat riwayat harga Instans Spot di Panduan EC2 Pengguna Amazon.

      • Basis Sesuai Permintaan — Jumlah minimum Instans Sesuai Permintaan yang disediakan oleh grup Auto Scaling Anda sebelum mempertimbangkan Instans Spot sebagai skala lingkungan Anda.

      • Sesuai Permintaan di atas dasar — Persentase Instans Sesuai Permintaan sebagai bagian dari kapasitas tambahan apa pun yang disediakan grup Auto Scaling Anda di luar instans dasar On-Demand.

        catatan

        Basis opsi On-Demand dan On-Demand di atas berkorelasi dengan opsi Instans Min dan Maks yang tercantum sebelumnya. Untuk informasi selengkapnya tentang opsi dan contoh ini, lihatDukungan Spot Instance untuk lingkungan Elastic Beanstalk Anda.

      • Penyeimbangan Kembali Kapasitas — Opsi ini hanya relevan jika ada setidaknya satu Instance Spot di grup Auto Scaling Anda. Saat fitur ini diaktifkan, EC2 secara otomatis mencoba mengganti Instans Spot di grup Auto Scaling sebelum terputus, meminimalkan interupsi Instans Spot ke aplikasi Anda. Untuk informasi selengkapnya, lihat Penyeimbangan Kembali Kapasitas di Panduan Pengguna Amazon Auto EC2 Scaling

    • Arsitektur — Arsitektur prosesor untuk EC2 instans Anda. Arsitektur prosesor menentukan jenis EC2 Instance yang tersedia di bidang berikutnya.

    • Jenis instans — Jenis EC2 instans Amazon yang diluncurkan untuk menjalankan aplikasi Anda. Untuk detailnya, lihat Tipe instans.

    • ID AMI - Gambar mesin yang digunakan Elastic Beanstalk untuk EC2 meluncurkan instans Amazon di lingkungan Anda. Untuk detailnya, lihat ID AMI.

    • Availability Zone – Memilih jumlah Availability Zone untuk menyebarkan instans lingkungan Anda. Secara default, grup Auto Scaling meluncurkan instans secara merata di semua zona yang dapat digunakan. Untuk memusatkan instans Anda di zona yang lebih sedikit, pilih jumlah zona yang akan digunakan. Untuk lingkungan produksi, gunakan setidaknya dua zona untuk memastikan bahwa aplikasi Anda tersedia jika seandainya satu Availability Zone tidak berfungsi.

    • Penempatan (opsional) – Pilih Availability Zone yang akan digunakan. Gunakan pengaturan ini jika instans Anda perlu terhubung ke sumber daya di zona tertentu, atau jika Anda telah membeli instans cadangan, yang merupakan spesifik zona. Jika Anda meluncurkan lingkungan Anda di VPC khusus, Anda tidak dapat mengonfigurasi opsi ini. Dalam VPC khusus, Anda memilih Availability Zone untuk subnet yang Anda tetapkan untuk lingkungan Anda.

    • Menskalakan pendinginan – Jumlah waktu, dalam detik, untuk menunggu instans diluncurkan atau diakhiri setelah penskalaan, sebelum melanjutkan mengevaluasi pemicu. Untuk informasi lebih lanjut, lihat Penskalaan Pendinginan.

  6. Untuk menyimpan perubahan pilih Terapkan di bagian bawah halaman.

Konfigurasi menggunakan opsi namespace

Elastic Beanstalk menyediakan opsi konfigurasi untuk pengaturan Auto Scaling dalam dua namespace: aws:autoscaling:asg dan aws:ec2:instances.

Namespace aws:autoscaling:asg

Namespace aws:autoscaling:asg menyediakan pilihan untuk penskalaan keseluruhan dan ketersediaan.

Contoh file konfigurasi berikut mengonfigurasi grup Auto Scaling untuk menggunakan dua sampai empat instans, availability zone tertentu, dan periode pendinginan 12 menit (720 detik). Ini memungkinkan Penyeimbangan Kembali Kapasitas untuk Instans Spot. EnableCapacityRebalancingOpsi ini hanya berlaku jika EnableSpot diatur ke true dalam aws:ec2:instancesnamespace, seperti yang ditunjukkan dalam contoh file konfigurasi berikut ini.

option_settings: aws:autoscaling:asg: Availability Zones: Any Cooldown: '720' Custom Availability Zones: 'us-west-2a,us-west-2b' MaxSize: '4' MinSize: '2' EnableCapacityRebalancing: true

Namespace aws:ec2:instances

catatan

Saat memperbarui konfigurasi lingkungan dan menghapus satu atau beberapa jenis instans dari InstanceTypes opsi, Elastic Beanstalk menghentikan semua instans Amazon yang berjalan pada EC2 salah satu jenis instans yang dihapus. Grup Auto Scaling lingkungan Anda kemudian meluncurkan instans baru, yang diperlukan untuk melengkapi kapasitas yang diinginkan, menggunakan tipe instans yang ditentukan saat ini.

aws:ec2:instancesNamespace menyediakan opsi yang terkait dengan instans lingkungan Anda, termasuk manajemen Instans Spot. Ini melengkapi aws:autoscaling:launchconfigurationdan aws:autoscaling:asg.

Contoh file konfigurasi berikut mengonfigurasi grup Auto Scaling untuk mengaktifkan permintaan Instans Spot untuk lingkungan Anda. Ini menunjuk tiga jenis contoh yang mungkin yang dapat digunakan. Setidaknya satu Instans Sesuai Permintaan digunakan untuk kapasitas dasar, dan 33% Instans Sesuai Permintaan yang berkelanjutan digunakan untuk kapasitas tambahan.

Konfigurasi menetapkan strategi alokasi spot kecapacity-optimized-prioritized. Strategi alokasi khusus ini memprioritaskan peluncuran instance dari kumpulan berdasarkan urutan jenis instance yang ditentukan dalam opsi. InstanceTypes Jika tidak SpotAllocationStrategy ditentukan, defaultnya. capacity-optimized

option_settings: aws:ec2:instances: EnableSpot: true InstanceTypes: 't2.micro,t3.micro,t3.small' SpotAllocationStrategy: capacity-optimized-prioritized SpotFleetOnDemandBase: '1' SpotFleetOnDemandAboveBasePercentage: '33'

Untuk memilih tipe Instans Spot, gunakan Penasihat Instans Spot.

penting

Pengaturan EnableSpot opsi dapat menyebabkan Elastic Beanstalk menciptakan lingkungan dengan template peluncuran atau memperbarui lingkungan yang ada dari konfigurasi peluncuran hingga meluncurkan templat. Melakukannya memerlukan izin yang diperlukan untuk mengelola templat peluncuran. Izin ini disertakan dalam kebijakan terkelola kami. Jika Anda menggunakan kebijakan khusus alih-alih kebijakan terkelola kami, pembuatan atau pembaruan lingkungan mungkin gagal saat Anda mengaktifkan instance spot untuk lingkungan Anda. Untuk informasi lebih lanjut dan pertimbangan lainnya, lihatLuncurkan template untuk lingkungan Elastic Beanstalk Anda.

Konfigurasi menggunakan AWS CLI

Bagian ini memberikan contoh bagaimana Anda dapat menggunakan perintah AWS CLI create-environment untuk mengonfigurasi lingkungan Anda dengan opsi Auto Scaling dan Kapasitas yang dijelaskan di bagian ini. Anda akan melihat pengaturan namespace untuk aws:autoscaling:asgdan aws:ec2:instances, seperti yang dijelaskan di bagian opsi konfigurasi namespace sebelumnya juga dikonfigurasi dengan contoh ini.

AWS Command Line Interface menyediakan perintah untuk membuat dan mengkonfigurasi lingkungan Elastic Beanstalk. Dengan --option-settings opsi ini, Anda dapat meneruskan opsi namespace yang didukung oleh Elastic Beanstalk. Ini berarti bahwa opsi konfigurasi namespace yang dijelaskan sebelumnya dapat diteruskan ke AWS CLI perintah yang berlaku untuk mengonfigurasi lingkungan Elastic Beanstalk Anda.

catatan

Anda juga dapat menggunakan perintah update-environment --option-settings untuk menambah atau memperbarui opsi namespace. Jika Anda perlu menghapus opsi namespace apa pun dari lingkungan Anda, gunakan update-environment perintah dengan. --options-to-remove

Contoh berikut menciptakan lingkungan baru. Lihat opsi konfigurasi namespace topik sebelumnya untuk konteks lebih lanjut tentang opsi yang diteruskan.

Opsi tinju yang tercantum, IamInstanceProfile di aws:autoscaling:launchconfiguration namespace, adalah profil instance Elastic Beanstalk. Ini diperlukan saat Anda membuat lingkungan baru.

contoh — buat-lingkungan dengan opsi Auto Scaling (opsi namespace sebaris)
aws elasticbeanstalk create-environment \ --region us-east-1 \ --application-name my-app \ --environment-name my-env \ --solution-stack-name "64bit Amazon Linux 2023 v4.3.0 running Python 3.12" \ --option-settings \ Namespace=aws:autoscaling:launchconfiguration,OptionName=IamInstanceProfile,Value=aws-elasticbeanstalk-ec2-role Namespace=aws:autoscaling:asg,OptionName=Availability Zones,Value=Any \ Namespace=aws:autoscaling:asg,OptionName=Cooldown,Value=720 \ Namespace=aws:autoscaling:asg,OptionName=Custom Availability Zones,Value=us-west-2a,us-west-2b \ Namespace=aws:autoscaling:asg,OptionName=MaxSize,Value=4 \ Namespace=aws:autoscaling:asg,OptionName=MinSize,Value=2 \ Namespace=aws:autoscaling:asg,OptionName=EnableCapacityRebalancing,Value=true \ Namespace=aws:ec2:instances,OptionName=EnableSpot,Value=true \ Namespace=aws:ec2:instances,OptionName=InstanceTypes,Value=t2.micro,t3.micro,t3.small \ Namespace=aws:ec2:instances,OptionName=SpotAllocationStrategy,Value=capacity-optimized-prioritized \ Namespace=aws:ec2:instances,OptionName=SpotFleetOnDemandBase,Value=1 \ Namespace=aws:ec2:instances,OptionName=SpotFleetOnDemandAboveBasePercentage,Value=33

penting

Pengaturan EnableSpot opsi dapat menyebabkan Elastic Beanstalk menciptakan lingkungan dengan template peluncuran atau memperbarui lingkungan yang ada dari konfigurasi peluncuran hingga meluncurkan templat. Melakukannya memerlukan izin yang diperlukan untuk mengelola templat peluncuran. Izin ini disertakan dalam kebijakan terkelola kami. Jika Anda menggunakan kebijakan khusus alih-alih kebijakan terkelola kami, pembuatan atau pembaruan lingkungan mungkin gagal saat Anda mengaktifkan instance spot untuk lingkungan Anda. Untuk informasi lebih lanjut dan pertimbangan lainnya, lihatLuncurkan template untuk lingkungan Elastic Beanstalk Anda.

Sebagai alternatif, gunakan options.json file untuk menentukan opsi namespace alih-alih memasukkannya sebaris.

contoh —create-environment dengan opsi Auto Scaling (opsi namespace dalam file) options.json
aws elasticbeanstalk create-environment \ --region us-east-1 \ --application-name my-app \ --environment-name my-env \ --solution-stack-name "64bit Amazon Linux 2023 v4.3.0 running Python 3.12" --option-settings file://options.json
### example options.json ### [ { "Namespace": "aws:autoscaling:launchconfiguration", "OptionName": "IamInstanceProfile", "Value": "aws-elasticbeanstalk-ec2-role" }, { "Namespace": "aws:autoscaling:asg", "OptionName": "Availability Zones", "Value": "Any" }, { "Namespace": "aws:autoscaling:asg", "OptionName": "Cooldown", "Value": "720" }, { "Namespace": "aws:autoscaling:asg", "OptionName": "Custom Availability Zones", "Value": "us-west-2a,us-west-2b" }, { "Namespace": "aws:autoscaling:asg", "OptionName": "MaxSize", "Value": "4" }, { "Namespace": "aws:autoscaling:asg", "OptionName": "MinSize", "Value": "2" }, { "Namespace": "aws:autoscaling:asg", "OptionName": "EnableCapacityRebalancing", "Value": "true" }, { "Namespace": "aws:ec2:instances", "OptionName": "EnableSpot", "Value": "true" }, { "Namespace": "aws:ec2:instances", "OptionName": "InstanceTypes", "Value": "t2.micro,t3.micro,t3.small" }, { "Namespace": "aws:ec2:instances", "OptionName": "SpotAllocationStrategy", "Value": "capacity-optimized-prioritized" }, { "Namespace": "aws:ec2:instances", "OptionName": "SpotFleetOnDemandBase", "Value": "1" }, { "Namespace": "aws:ec2:instances", "OptionName": "SpotFleetOnDemandAboveBasePercentage", "Value": "33" } ]

Konfigurasi menggunakan EB CLI

Saat membuat lingkungan menggunakan eb createperintah, Anda dapat menentukan beberapa opsi yang terkait dengan grup Auto Scaling lingkungan Anda. Ini adalah beberapa opsi yang membantu Anda mengontrol kapasitas lingkungan Anda.

--single

Menciptakan lingkungan dengan satu EC2 instans Amazon dan tanpa penyeimbang beban. Jika Anda tidak menggunakan opsi ini, penyeimbang beban ditambahkan ke lingkungan yang dibuat.

--enable-spot

Mengaktifkan permintaan Instans Spot untuk lingkungan Anda.

penting

Pengaturan enable-spot opsi dapat menyebabkan Elastic Beanstalk menciptakan lingkungan dengan template peluncuran atau memperbarui lingkungan yang ada dari konfigurasi peluncuran hingga meluncurkan templat. Melakukannya memerlukan izin yang diperlukan untuk mengelola templat peluncuran. Izin ini disertakan dalam kebijakan terkelola kami. Jika Anda menggunakan kebijakan khusus alih-alih kebijakan terkelola kami, pembuatan atau pembaruan lingkungan mungkin gagal saat Anda mengaktifkan instance spot untuk lingkungan Anda. Untuk informasi lebih lanjut dan pertimbangan lainnya, lihatLuncurkan template untuk lingkungan Elastic Beanstalk Anda.

Opsi berikut untuk eb createperintah hanya dapat digunakan dengan--enable-spot.

--instance-types

Daftar jenis EC2 instans Amazon yang Anda ingin lingkungan Anda gunakan.

--spot-max-price

Harga maksimum per unit jam, dalam dolar A.S., yang bersedia Anda bayarkan untuk Instans Spot. Untuk rekomendasi tentang opsi harga maksimum untuk Instans Spot, lihat riwayat harga Instans Spot di Panduan EC2 Pengguna Amazon.

--on-demand-base-capacity

Jumlah minimum Instans Sesuai Permintaan yang disediakan grup Auto Scaling Anda sebelum mempertimbangkan Instans Spot saat lingkungan Anda bertambah besar.

--on-demand-above-base-capacity

Persentase Instans Sesuai Permintaan sebagai bagian dari kapasitas tambahan yang disediakan grup Auto Scaling lebih dari jumlah instans yang ditentukan oleh opsi --on-demand-base-capacity.

Contoh berikut membuat lingkungan dan mengonfigurasi grup Auto Scaling untuk mengaktifkan permintaan Instans Spot untuk lingkungan baru. Untuk contoh ini, tiga jenis instance yang mungkin dapat digunakan.

$ eb create --enable-spot --instance-types "t2.micro,t3.micro,t3.small"
penting

Ada opsi lain dengan nama serupa yang disebut --instance-type (tanpa “s”) yang hanya dikenali oleh EB CLI saat memproses Instans Sesuai Permintaan. Jangan gunakan --instance-type (tanpa "s") dengan opsi --enable-spot. Jika Anda melakukannya, EB CLI mengabaikannya. Alih-alih menggunakan --instance-types (dengan "s") dengan opsi --enable-spot.