Contoh CLI konfigurasi untuk EC2 Armada - Amazon Elastic Compute Cloud

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

Contoh CLI konfigurasi untuk EC2 Armada

Anda dapat menentukan konfigurasi EC2 Armada Anda dalam sebuah JSON file, dan kemudian mereferensikan file tersebut dengan create-fleet AWS CLI perintah untuk membuat armada Anda, sebagai berikut:

aws ec2 create-fleet --cli-input-json file://file_name.json

Contoh berikut menggambarkan konfigurasi peluncuran untuk berbagai kasus penggunaan EC2 Armada. Untuk informasi selengkapnya tentang parameter konfigurasi, lihat create-fleet di AWS CLI Referensi Perintah.

Untuk CLI contoh lebih lanjut untuk armada tipeinstant, lihatKonfigurasikan EC2 Armada tipe instant.

Contoh 1: Meluncurkan Instans Spot sebagai opsi pembelian default

Contoh berikut menentukan parameter minimum yang diperlukan dalam EC2 Armada: template peluncuran, kapasitas target, dan opsi pembelian default. Templat peluncuran diidentifikasi dengan ID templat dan nomor versi peluncurannya. Kapasitas target untuk armada adalah 2 instans, dan opsi pembelian default adalah spot, yang menghasilkan armada meluncurkan 2 Instans Spot.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0e8c754449b27161c", "Version": "1" } } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 2, "DefaultTargetCapacityType": "spot" } }

Contoh 2: Meluncurkan Instans Sesuai Permintaan sebagai opsi pembelian default

Contoh berikut menentukan parameter minimum yang diperlukan dalam EC2 Armada: template peluncuran, kapasitas target, dan opsi pembelian default. Templat peluncuran diidentifikasi dengan ID templat dan nomor versi peluncurannya. Kapasitas target untuk armada adalah 2 instans, dan opsi pembelian default adalah on-demand, yang menghasilkan armada meluncurkan 2 Instans Sesuai Permintaan.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0e8c754449b27161c", "Version": "1" } } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 2, "DefaultTargetCapacityType": "on-demand" } }

Contoh 3: Meluncurkan Instans Sesuai Permintaan sebagai kapasitas primer

Contoh berikut menentukan total kapasitas target dari 2 instans untuk armada tersebut dan kapasitas target dari 1 Instans Sesuai Permintaan. Opsi pembelian default adalah spot. Armada meluncurkan 1 Instans Sesuai Permintaan sebagaimana ditentukan, tetapi perlu meluncurkan satu instans lagi untuk memenuhi total kapasitas target. Opsi pembelian untuk selisihnya dihitung sebagai TotalTargetCapacityOnDemandTargetCapacity = DefaultTargetCapacityType, yang menghasilkan armada yang meluncurkan 1 Instans Spot.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0e8c754449b27161c", "Version": "1" } } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 2, "OnDemandTargetCapacity": 1, "DefaultTargetCapacityType": "spot" } }

Contoh 4: Luncurkan Instans Sesuai Permintaan menggunakan beberapa Reservasi Kapasitas

Anda dapat mengonfigurasi armada agar menggunakan Reservasi Kapasitas Sesuai Permintaan terlebih dahulu saat meluncurkan Instans Sesuai Permintaan dengan mengatur strategi penggunaan untuk Reservasi Kapasitas ke use-capacity-reservations-first. Contoh ini menunjukkan cara armada memilih Reservasi Kapasitas yang akan digunakan jika terdapat lebih banyak Reservasi Kapasitas daripada yang dibutuhkan untuk memenuhi kapasitas target.

Dalam contoh ini, konfigurasi armada adalah sebagai berikut:

  • Kapasitas target: 12 Instans Sesuai Permintaan

  • Total Reservasi Kapasitas yang tidak terpakai: 15 (lebih dari kapasitas target armada sebesar 12 Instans Sesuai Permintaan)

  • Jumlah kolam Reservasi Kapasitas: 3 (m5.large, m4.xlarge, dan m4.2xlarge)

  • Jumlah Reservasi Kapasitas per kolam: 5

  • Strategi alokasi Sesuai Permintaan: lowest-price (Jika terdapat lebih dari satu Reservasi Kapasitas yang tidak terpakai di lebih dari satu kolam instans, armada akan menentukan kolam tempat untuk meluncurkan Instans Sesuai Permintaan berdasarkan strategi alokasi Sesuai Permintaan.)

    Perhatikan bahwa Anda juga dapat menggunakan strategi alokasi prioritized alih-alih strategi alokasi lowest-price.

Reservasi Kapasitas

Akun tersebut memiliki 15 Reservasi Kapasitas yang tidak terpakai dalam 3 kolam yang berbeda. Jumlah Reservasi Kapasitas di setiap kolam ditunjukkan dengan AvailableInstanceCount.

{ "CapacityReservationId": "cr-111", "InstanceType": "m5.large", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 5, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-222", "InstanceType": "m4.xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 5, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-333", "InstanceType": "m4.2xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount":5, "InstanceMatchCriteria": "open", "State": "active" }

Konfigurasi Armada

Konfigurasi armada berikut hanya menampilkan konfigurasi terkait untuk contoh ini. Total kapasitas target adalah 12, dan tipe kapasitas target default adalah on-demand. Strategi alokasi Sesuai Permintaan adalah lowest-price. Strategi penggunaan untuk Reservasi Kapasitas adalah use-capacity-reservations-first.

Dalam contoh ini, harga Instans Sesuai Permintaan adalah:

  • m5.large – 0,096 USD per jam

  • m4.xlarge – 0,20 USD per jam

  • m4.2xlarge – 0,40 USD per jam

catatan

Tipe armada harus bertipe instant. Tipe armada lainnya tidak mendukung use-capacity-reservations-first.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-abc1234567example", "Version": "1" }, "Overrides": [ { "InstanceType": "m5.large", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 }, { "InstanceType": "m4.xlarge", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 }, { "InstanceType": "m4.2xlarge", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 12, "DefaultTargetCapacityType": "on-demand" }, "OnDemandOptions": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first" } }, "Type": "instant" }

Setelah Anda membuat armada instant menggunakan konfigurasi sebelumnya, 12 instans berikut diluncurkan untuk memenuhi kapasitas target:

  • 5 Instans Sesuai Permintaan m5.large di us-east-1am5.large di us-east-1a merupakan harga terendah, dan terdapat 5 Reservasi Kapasitas m5.large yang tidak terpakai yang tersedia

  • 5 Instans Sesuai Permintaan m4.xlarge di us-east-1a – m4.xlarge di us-east-1a merupakan harga terendah berikutnya, dan terdapat 5 Reservasi Kapasitas m4.xlarge yang tidak terpakai yang tersedia

  • 2 Instans Sesuai Permintaan m4.2xlarge di us-east-1a – m4.2xlarge di us-east-1a merupakan harga terendah ketiga, dan terdapat 5 Reservasi Kapasitas m4.2xlarge yang hanya dibutuhkan 2 untuk memenuhi target kapasitas

Setelah armada diluncurkan, Anda dapat berlari describe-capacity-reservationsuntuk melihat berapa banyak Reservasi Kapasitas yang tidak terpakai yang tersisa. Dalam contoh ini, Anda akan melihat respons berikut, yang menunjukkan bahwa semua Reservasi Kapasitas m5.large dan m4.xlarge digunakan, dengan 3 Reservasi Kapasitas m4.2xlarge yang masih belum digunakan.

{ "CapacityReservationId": "cr-111", "InstanceType": "m5.large", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-222", "InstanceType": "m4.xlarge", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-333", "InstanceType": "m4.2xlarge", "AvailableInstanceCount": 3 }

Contoh 5: Luncurkan Instans Sesuai Permintaan menggunakan Reservasi Kapasitas ketika total kapasitas target melebihi jumlah Reservasi Kapasitas yang tidak digunakan

Anda dapat mengonfigurasi armada agar menggunakan Reservasi Kapasitas Sesuai Permintaan terlebih dahulu saat meluncurkan Instans Sesuai Permintaan dengan mengatur strategi penggunaan untuk Reservasi Kapasitas ke use-capacity-reservations-first. Contoh ini juga menunjukkan cara armada memilih kolam instans tempat untuk meluncurkan Instans Sesuai Permintaan jika total kapasitas target melebihi jumlah Reservasi Kapasitas yang tidak terpakai yang tersedia.

Dalam contoh ini, konfigurasi armada adalah sebagai berikut:

  • Kapasitas target: 16 Instans Sesuai Permintaan

  • Total Reservasi Kapasitas yang tidak terpakai: 15 (kurang dari kapasitas target armada sebesar 16 Instans Sesuai Permintaan)

  • Jumlah kolam Reservasi Kapasitas: 3 (m5.large, m4.xlarge, dan m4.2xlarge)

  • Jumlah Reservasi Kapasitas per kolam: 5

  • Strategi alokasi Sesuai Permintaan: lowest-price (Jika jumlah Reservasi Kapasitas yang tidak terpakai kurang dari kapasitas target Sesuai Permintaan, armada akan menentukan kolam tempat meluncurkan kapasitas Sesuai Permintaan yang tersisa berdasarkan strategi alokasi Sesuai Permintaan.)

    Perhatikan bahwa Anda juga dapat menggunakan strategi alokasi prioritized alih-alih strategi alokasi lowest-price.

Reservasi Kapasitas

Akun tersebut memiliki 15 Reservasi Kapasitas yang tidak terpakai dalam 3 kolam yang berbeda. Jumlah Reservasi Kapasitas di setiap kolam ditunjukkan dengan AvailableInstanceCount.

{ "CapacityReservationId": "cr-111", "InstanceType": "m5.large", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 5, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-222", "InstanceType": "m4.xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 5, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-333", "InstanceType": "m4.2xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount":5, "InstanceMatchCriteria": "open", "State": "active" }

Konfigurasi Armada

Konfigurasi armada berikut hanya menampilkan konfigurasi terkait untuk contoh ini. Total kapasitas target adalah 16, dan tipe kapasitas target default adalah on-demand. Strategi alokasi Sesuai Permintaan adalah lowest-price. Strategi penggunaan untuk Reservasi Kapasitas adalah use-capacity-reservations-first.

Dalam contoh ini, harga Instans Sesuai Permintaan adalah:

  • m5.large – 0,096 USD per jam

  • m4.xlarge – 0,20 USD per jam

  • m4.2xlarge – 0,40 USD per jam

catatan

Tipe armada harus instant. Tipe armada lainnya tidak mendukung use-capacity-reservations-first.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateId": "lt-0e8c754449b27161c", "Version": "1" }, "Overrides": [ { "InstanceType": "m5.large", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 }, { "InstanceType": "m4.xlarge", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 }, { "InstanceType": "m4.2xlarge", "AvailabilityZone": "us-east-1a", "WeightedCapacity": 1 } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 16, "DefaultTargetCapacityType": "on-demand" }, "OnDemandOptions": { "AllocationStrategy": "lowest-price" "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first" } }, "Type": "instant", }

Setelah Anda membuat armada instant menggunakan konfigurasi sebelumnya, 16 instans berikut diluncurkan untuk memenuhi kapasitas target:

  • 6 Instans Sesuai Permintaan m5.large di us-east-1am5.large di us-east-1a merupakan harga terendah, dan terdapat 5 Reservasi Kapasitas m5.large yang tidak terpakai yang tersedia. Reservasi Kapasitas digunakan terlebih dahulu untuk meluncurkan 5 Instans Sesuai Permintaan. Setelah sisa Reservasi Kapasitas m4.xlarge dan m4.2xlarge digunakan, untuk memenuhi kapasitas target, Instans Sesuai Permintaan tambahan diluncurkan sesuai dengan strategi alokasi Sesuai Permintaan, yaitu lowest-price dalam contoh ini.

  • 5 Instans Sesuai Permintaan m4.xlarge di us-east-1am4.xlarge di us-east-1a merupakan harga terendah berikutnya, dan terdapat 5 Reservasi Kapasitas m4.xlarge yang tidak terpakai yang tersedia

  • 5 Instans Sesuai Permintaan m4.2xlarge di us-east-1am4.2xlarge di us-east-1a merupakan harga terendah ketiga, dan terdapat 5 Reservasi Kapasitas m4.2xlarge yang tidak terpakai yang tersedia

Setelah armada diluncurkan, Anda dapat berlari describe-capacity-reservationsuntuk melihat berapa banyak Reservasi Kapasitas yang tidak terpakai yang tersisa. Dalam contoh ini, Anda akan melihat respons berikut, yang menunjukkan bahwa semua Reservasi Kapasitas di semua kolam telah digunakan.

{ "CapacityReservationId": "cr-111", "InstanceType": "m5.large", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-222", "InstanceType": "m4.xlarge", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-333", "InstanceType": "m4.2xlarge", "AvailableInstanceCount": 0 }

Contoh 6: Luncurkan Instans Sesuai Permintaan menggunakan Reservasi Kapasitas yang ditargetkan

Anda dapat mengonfigurasi armada agar menggunakan Reservasi Kapasitas Sesuai Permintaan targeted terlebih dahulu saat meluncurkan Instans Sesuai Permintaan dengan mengatur strategi penggunaan untuk Reservasi Kapasitas ke use-capacity-reservations-first. Contoh ini menunjukkan cara meluncurkan Instans Sesuai Permintaan ke dalam Reservasi Kapasitas targeted, jika atribut Reservasi Kapasitas sama kecuali untuk Zona Ketersediaan (us-east-1a dan us-east-1b). Contoh ini juga menunjukkan cara armada memilih kolam instans tempat untuk meluncurkan Instans Sesuai Permintaan jika total kapasitas target melebihi jumlah Reservasi Kapasitas yang tidak terpakai yang tersedia.

Dalam contoh ini, konfigurasi armada adalah sebagai berikut:

  • Kapasitas target: 10 Instans Sesuai Permintaan

  • Total Reservasi Kapasitas targeted yang tidak terpakai: 6 (kurang dari kapasitas target Sesuai Permintaan armada sebesar 10 Instans Sesuai Permintaan)

  • Jumlah kolam Reservasi Kapasitas: 2 (us-east-1a dan us-east-1b)

  • Jumlah Reservasi Kapasitas per kolam: 3

  • Strategi alokasi Sesuai Permintaan: lowest-price (Jika jumlah Reservasi Kapasitas yang tidak terpakai kurang dari kapasitas target Sesuai Permintaan, armada akan menentukan kolam tempat meluncurkan kapasitas Sesuai Permintaan yang tersisa berdasarkan strategi alokasi Sesuai Permintaan.)

    Perhatikan bahwa Anda juga dapat menggunakan strategi alokasi prioritized alih-alih strategi alokasi lowest-price.

Untuk panduan prosedur yang harus Anda lakukan untuk menyelesaikan contoh ini, lihat Tutorial: Konfigurasikan EC2 Armada untuk meluncurkan Instans Sesuai Permintaan menggunakan Reservasi Kapasitas yang ditargetkan.

Reservasi Kapasitas

Akun tersebut memiliki 6 Reservasi Kapasitas yang tidak terpakai dalam 2 kolam yang berbeda. Dalam contoh ini, kolam berbeda-beda menurut Zona Ketersediaannya. Jumlah Reservasi Kapasitas di setiap kolam ditunjukkan dengan AvailableInstanceCount.

{ "CapacityReservationId": "cr-111", "InstanceType": "c5.xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1a", "AvailableInstanceCount": 3, "InstanceMatchCriteria": "open", "State": "active" } { "CapacityReservationId": "cr-222", "InstanceType": "c5.xlarge", "InstancePlatform": "Linux/UNIX", "AvailabilityZone": "us-east-1b", "AvailableInstanceCount": 3, "InstanceMatchCriteria": "open", "State": "active" }

Konfigurasi Armada

Konfigurasi armada berikut hanya menampilkan konfigurasi terkait untuk contoh ini. Total kapasitas target adalah 10, dan tipe kapasitas target default adalah on-demand. Strategi alokasi Sesuai Permintaan adalah lowest-price. Strategi penggunaan untuk Reservasi Kapasitas adalah use-capacity-reservations-first.

Dalam contoh ini, harga Instans Sesuai Permintaan untuk c5.xlarge di us-east-1 adalah 0,17 USD per jam.

catatan

Tipe armada harus instant. Tipe armada lainnya tidak mendukung use-capacity-reservations-first.

{ "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "c5.xlarge", "AvailabilityZone": "us-east-1a" }, { "InstanceType": "c5.xlarge", "AvailabilityZone": "us-east-1b" } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 10, "DefaultTargetCapacityType": "on-demand" }, "OnDemandOptions": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first" } }, "Type": "instant" }

Setelah Anda membuat armada instant menggunakan konfigurasi sebelumnya, 10 instans berikut diluncurkan untuk memenuhi kapasitas target:

  • Reservasi Kapasitas digunakan terlebih dahulu untuk meluncurkan 6 Instans Sesuai Permintaan sebagai berikut:

    • 3 Instans Sesuai Permintaan diluncurkan ke dalam 3 Reservasi Kapasitas c5.xlarge targeted di us-east-1a

    • 3 Instans Sesuai Permintaan diluncurkan ke dalam 3 Reservasi Kapasitas c5.xlarge targeted di us-east-1b

  • Untuk memenuhi kapasitas target, 4 Instans Sesuai Permintaan tambahan diluncurkan ke kapasitas Sesuai Permintaan reguler sesuai dengan strategi alokasi Sesuai Permintaan, yaitu lowest-price dalam contoh ini. Namun, karena kolam memiliki harga yang sama (karena harganya adalah per Wilayah dan bukan per Zona Ketersediaan), armada meluncurkan 4 Instans Sesuai Permintaan yang tersisa ke salah satu kolam.

Setelah armada diluncurkan, Anda dapat berlari describe-capacity-reservationsuntuk melihat berapa banyak Reservasi Kapasitas yang tidak terpakai yang tersisa. Dalam contoh ini, Anda akan melihat respons berikut, yang menunjukkan bahwa semua Reservasi Kapasitas di semua kolam telah digunakan.

{ "CapacityReservationId": "cr-111", "InstanceType": "c5.xlarge", "AvailableInstanceCount": 0 } { "CapacityReservationId": "cr-222", "InstanceType": "c5.xlarge", "AvailableInstanceCount": 0 }

Contoh 7: Konfigurasikan Penyeimbangan Kembali Kapasitas untuk meluncurkan Instans Spot pengganti

Contoh berikut mengonfigurasi EC2 Armada untuk meluncurkan Instans Spot pengganti saat Amazon EC2 mengeluarkan rekomendasi penyeimbangan ulang untuk Instans Spot di armada. Untuk mengonfigurasi penggantian otomatis Instans Spot, untuk ReplacementStrategy, tentukan launch-before-terminate. Untuk mengonfigurasi penundaan waktu dari saat Instans Spot pengganti baru diluncurkan hingga saat Instans Spot lama dihapus secara otomatis, untuk termination-delay, tentukan nilai dalam detik. Untuk informasi selengkapnya, lihat Opsi konfigurasi.

catatan

Sebaiknya gunakan launch-before-terminate hanya jika Anda dapat memprediksi lamanya prosedur pematian instans akan selesai sehingga instans lama hanya dihentikan setelah prosedur ini selesai. Anda dikenai biaya untuk semua instans saat semuanya berjalan.

Efektivitas strategi Penyeimbangan Kembali Kapasitas tergantung pada jumlah kumpulan kapasitas Spot yang ditentukan dalam permintaan EC2 Armada. Sebaiknya konfigurasikan armada dengan set tipe instans dan Zona Ketersediaan yang beragam, dan untuk AllocationStrategy, tentukan capacity-optimized. Untuk informasi selengkapnya tentang apa yang harus Anda pertimbangkan saat mengonfigurasi EC2 Armada untuk Penyeimbangan Kembali Kapasitas, lihat. Gunakan Rebalancing Kapasitas di EC2 Armada dan Armada Spot untuk mengganti Instans Spot yang berisiko

{ "ExcessCapacityTerminationPolicy": "termination", "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "LaunchTemplate", "Version": "1" }, "Overrides": [ { "InstanceType": "c3.large", "WeightedCapacity": 1, "Placement": { "AvailabilityZone": "us-east-1a" } }, { "InstanceType": "c4.large", "WeightedCapacity": 1, "Placement": { "AvailabilityZone": "us-east-1a" } }, { "InstanceType": "c5.large", "WeightedCapacity": 1, "Placement": { "AvailabilityZone": "us-east-1a" } } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 5, "DefaultTargetCapacityType": "spot" }, "SpotOptions": { "AllocationStrategy": "capacity-optimized", "MaintenanceStrategies": { "CapacityRebalance": { "ReplacementStrategy": "launch-before-terminate", "TerminationDelay": "720" } } } }

Contoh 8: Luncurkan Instans Spot dalam armada yang dioptimalkan kapasitas

Contoh berikut menunjukkan cara mengkonfigurasi EC2 Armada dengan strategi alokasi Spot yang mengoptimalkan kapasitas. Untuk mengoptimalkan kapasitas, Anda harus mengatur AllocationStrategy ke capacity-optimized.

Pada contoh berikut ini, tiga spesifikasi peluncuran menentukan tiga kolam kapasitas Spot. Kapasitas target adalah 50 Instans Spot. EC2Armada mencoba meluncurkan 50 Instans Spot ke dalam kumpulan kapasitas Spot dengan kapasitas optimal untuk jumlah instans yang diluncurkan.

{ "SpotOptions": { "AllocationStrategy": "capacity-optimized", }, "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "r4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2a" }, }, { "InstanceType": "m4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" }, }, { "InstanceType": "c5.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 50, "DefaultTargetCapacityType": "spot" } }

Contoh 9: Luncurkan Instans Spot dalam armada yang dioptimalkan kapasitas dengan prioritas

Contoh berikut menunjukkan cara mengkonfigurasi EC2 Armada dengan strategi alokasi Spot yang mengoptimalkan kapasitas saat menggunakan prioritas berdasarkan upaya terbaik.

Jika menggunakan strategi alokasi capacity-optimized-prioritized, Anda dapat menggunakan parameter Priority untuk menentukan prioritas kolam kapasitas Spot, yaitu makin rendah angkanya, makin tinggi prioritasnya. Anda juga dapat mengatur prioritas yang sama untuk beberapa kolam kapasitas Spot jika Anda menginginkannya setara. Jika Anda tidak menetapkan prioritas, kolam akan dianggap yang terakhir dalam hal prioritas.

Untuk memprioritaskan kolam kapasitas Spot, Anda harus mengatur AllocationStrategy ke capacity-optimized-prioritized. EC2Armada akan mengoptimalkan kapasitas terlebih dahulu, tetapi akan menghormati prioritas atas dasar upaya terbaik (misalnya, jika menghormati prioritas tidak akan secara signifikan mempengaruhi kemampuan EC2 Armada untuk menyediakan kapasitas optimal). Ini adalah pilihan opsi yang bagus untuk beban kerja di mana kemungkinan gangguan harus diminimalkan dan preferensi untuk tipe instans tertentu menjadi penting.

Pada contoh berikut ini, tiga spesifikasi peluncuran menentukan tiga kolam kapasitas Spot. Setiap kolam diprioritaskan, yaitu makin rendah jumlahnya, makin tinggi prioritasnya. Kapasitas target adalah 50 Instans Spot. EC2Armada mencoba meluncurkan 50 Instans Spot ke dalam kumpulan kapasitas Spot dengan prioritas tertinggi berdasarkan upaya terbaik, tetapi mengoptimalkan kapasitas terlebih dahulu.

{ "SpotOptions": { "AllocationStrategy": "capacity-optimized-prioritized" }, "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "r4.2xlarge", "Priority": 1, "Placement": { "AvailabilityZone": "us-west-2a" }, }, { "InstanceType": "m4.2xlarge", "Priority": 2, "Placement": { "AvailabilityZone": "us-west-2b" }, }, { "InstanceType": "c5.2xlarge", "Priority": 3, "Placement": { "AvailabilityZone": "us-west-2b" } } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 50, "DefaultTargetCapacityType": "spot" }

Contoh 10: Luncurkan Instans Spot di armada price-capacity-optimized

Contoh berikut menunjukkan cara mengonfigurasi EC2 Armada dengan strategi alokasi Spot yang mengoptimalkan kapasitas dan harga terendah. Untuk mengoptimalkan kapasitas sambil mempertimbangkan harga, Anda harus mengatur Spot AllocationStrategy ke price-capacity-optimized.

Pada contoh berikut ini, tiga spesifikasi peluncuran menentukan tiga kolam kapasitas Spot. Kapasitas target adalah 50 Instans Spot. EC2Armada mencoba meluncurkan 50 Instans Spot ke dalam kumpulan kapasitas Spot dengan kapasitas optimal untuk jumlah instans yang diluncurkan sambil juga memilih kolam dengan harga terendah.

{ "SpotOptions": { "AllocationStrategy": "price-capacity-optimized", "MinTargetCapacity": 2, "SingleInstanceType": true }, "OnDemandOptions": { "AllocationStrategy": "lowest-price" }, "LaunchTemplateConfigs": [ { "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [ { "InstanceType": "r4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2a" }, }, { "InstanceType": "m4.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" }, }, { "InstanceType": "c5.2xlarge", "Placement": { "AvailabilityZone": "us-west-2b" } } ] } ], "TargetCapacitySpecification": { "TotalTargetCapacity": 50, "OnDemandTargetCapacity":0, "SpotTargetCapacity":50, "DefaultTargetCapacityType": "spot" }, "Type": "instant" }

Contoh 11: Konfigurasikan pemilihan tipe instans berbasis atribut

Contoh berikut menunjukkan cara mengonfigurasi EC2 Armada untuk menggunakan pemilihan tipe instans berbasis atribut untuk mengidentifikasi jenis instance. Untuk menentukan atribut instans yang diperlukan, Anda menentukan atribut dalam struktur InstanceRequirements.

Pada contoh berikut ini, dua atribut instans ditentukan:

  • VCpuCount— Minimal 2 vCPUs ditentukan. Karena tidak ada jumlah maksimum yang ditentukan, maka tidak ada batas maksimum.

  • MemoryMiB – Minimum 4 MiB memori ditentukan. Karena tidak ada jumlah maksimum yang ditentukan, maka tidak ada batas maksimum.

Setiap jenis instance yang memiliki 2 atau lebih vCPUs dan 4 MiB atau lebih memori akan diidentifikasi. Namun, perlindungan harga dan strategi alokasi mungkin mengecualikan beberapa jenis instance ketika EC2Armada menyediakan armada.

Untuk daftar dan deskripsi semua kemungkinan atribut yang dapat Anda tentukan, lihat InstanceRequirementsdi EC2APIReferensi Amazon.

{ "SpotOptions": { "AllocationStrategy": "price-capacity-optimized" }, "LaunchTemplateConfigs": [{ "LaunchTemplateSpecification": { "LaunchTemplateName": "my-launch-template", "Version": "1" }, "Overrides": [{ "InstanceRequirements": { "VCpuCount": { "Min": 2 }, "MemoryMiB": { "Min": 4 } } }] }], "TargetCapacitySpecification": { "TotalTargetCapacity": 20, "DefaultTargetCapacityType": "spot" }, "Type": "instant" }