View a markdown version of this page

Contoh konfigurasi CLI untuk Armada EC2 - 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 konfigurasi CLI untuk Armada EC2

Anda dapat menentukan konfigurasi Armada EC2 Anda dalam file JSON, dan kemudian mereferensikan file tersebut dengan perintah create-fleet 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 Armada EC2. Untuk informasi selengkapnya tentang parameter konfigurasi, lihat create-fleet.

Untuk contoh CLI lainnya untuk jenis armadainstant, lihat. Konfigurasikan jenis Armada EC2 instant

Contoh 1: Meluncurkan Instans Spot sebagai opsi pembelian default

Contoh berikut menentukan parameter minimum yang diperlukan dalam Armada EC2: templat 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: Luncur On-Demand kan Instans sebagai opsi pembelian default

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

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

Contoh 3: Luncur On-Demand kan Instans sebagai kapasitas utama

Contoh berikut menentukan kapasitas target total 2 instans untuk armada, dan kapasitas target 1 On-Demand Instans. Opsi pembelian default adalah spot. Armada meluncurkan 1 On-Demand Instans seperti yang ditentukan, tetapi perlu meluncurkan satu instance lagi untuk memenuhi kapasitas target total. 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 On-Demand Instans menggunakan beberapa Reservasi Kapasitas

Anda dapat mengonfigurasi armada untuk menggunakan Reservasi On-Demand Kapasitas terlebih dahulu saat meluncurkan On-Demand Instans dengan menyetel strategi penggunaan untuk Reservasi Kapasitas keuse-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 On-Demand Instans

  • Total Reservasi Kapasitas yang tidak digunakan: 15 (lebih dari kapasitas target armada 12 On-Demand Instans)

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

  • Jumlah Reservasi Kapasitas per kolam: 5

  • On-Demand strategi alokasi: lowest-price (Jika ada beberapa Reservasi Kapasitas yang tidak digunakan di beberapa kumpulan instans, armada menentukan kumpulan untuk meluncurkan On-Demand Instans berdasarkan strategi On-Demand alokasi.)

    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. Strateg On-Demand i alokasi adalah lowest-price Strategi penggunaan untuk Reservasi Kapasitas adalah use-capacity-reservations-first.

Dalam contoh ini, harga On-Demand Instance 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 m5.large On-Demand Instans in us-east-1am5.large in us-east-1a adalah harga terendah, dan ada 5 Reservasi m5.large Kapasitas yang tidak digunakan yang tersedia

  • 5 m4.xlarge On-Demand Instans di us-east-1a — m4.xlarge in us-east-1a adalah harga terendah berikutnya, dan ada 5 Reservasi Kapasitas yang tidak digunakan yang tersedia m4.xlarge

  • 2 m4.2xlarge On-Demand Instans di us-east-1a — m4.2xlarge in us-east-1a adalah harga terendah ketiga, dan ada 5 Reservasi m4.2xlarge Kapasitas yang tidak digunakan yang tersedia di mana hanya 2 yang diperlukan untuk memenuhi kapasitas target

Setelah armada diluncurkan, Anda dapat menjalankan describe-capacity-reservations untuk melihat jumlah 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: Luncur On-Demand kan Instans menggunakan Reservasi Kapasitas ketika total kapasitas target melebihi jumlah Reservasi Kapasitas yang tidak digunakan

Anda dapat mengonfigurasi armada untuk menggunakan Reservasi On-Demand Kapasitas terlebih dahulu saat meluncurkan On-Demand Instans dengan menyetel strategi penggunaan untuk Reservasi Kapasitas keuse-capacity-reservations-first. Contoh ini menunjukkan bagaimana armada memilih kumpulan instans untuk meluncurkan On-Demand Instans ketika total kapasitas target melebihi jumlah Reservasi Kapasitas yang tidak terpakai yang tersedia.

Dalam contoh ini, konfigurasi armada adalah sebagai berikut:

  • Kapasitas target: 16 On-Demand Instans

  • Total Reservasi Kapasitas yang tidak digunakan: 15 (kurang dari kapasitas target armada 16 On-Demand Instans)

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

  • Jumlah Reservasi Kapasitas per kolam: 5

  • On-Demand strategi alokasi: lowest-price (Jika jumlah Reservasi Kapasitas yang tidak digunakan kurang dari kapasitas On-Demand target, armada menentukan kumpulan tempat untuk meluncurkan On-Demand kapasitas yang tersisa berdasarkan strategi al On-Demand okasi.)

    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. Strateg On-Demand i alokasi adalah lowest-price Strategi penggunaan untuk Reservasi Kapasitas adalah use-capacity-reservations-first.

Dalam contoh ini, harga On-Demand Instance 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 m5.large On-Demand Instans in us-east-1am5.large in us-east-1a adalah harga terendah, dan ada 5 Reservasi m5.large Kapasitas yang tidak digunakan yang tersedia. Reservasi Kapasitas digunakan terlebih dahulu untuk meluncurkan 5 On-Demand Instans. Setelah sisa m4.xlarge dan Reservasi m4.2xlarge Kapasitas digunakan, untuk memenuhi kapasitas target, On-Demand Instans tambahan diluncurkan sesuai dengan strategi al On-Demand okasi, yang ada lowest-price dalam contoh ini.

  • 5 m4.xlarge On-Demand Instans in us-east-1am4.xlarge in us-east-1a adalah harga terendah berikutnya, dan ada 5 Reservasi m4.xlarge Kapasitas yang tidak terpakai yang tersedia

  • 5 m4.2xlarge On-Demand Instans in us-east-1am4.2xlarge in us-east-1a adalah harga terendah ketiga, dan ada 5 Reservasi m4.2xlarge Kapasitas yang tidak terpakai yang tersedia

Setelah armada diluncurkan, Anda dapat menjalankan describe-capacity-reservations untuk melihat jumlah 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: Meluncurkan On-Demand Instans menggunakan Reservasi Kapasitas yang ditargetkan

Anda dapat mengonfigurasi armada untuk menggunakan Reservasi targeted On-Demand Kapasitas terlebih dahulu saat meluncurkan On-Demand Instans dengan menyetel strategi penggunaan untuk Reservasi Kapasitas keuse-capacity-reservations-first. Contoh ini menunjukkan cara meluncurkan On-Demand Instans ke targeted Reservasi Kapasitas, di mana atribut Reservasi Kapasitas sama kecuali untuk Zona Ketersediaan (us-east-1adanus-east-1b). Ini juga menunjukkan bagaimana armada memilih kumpulan instans untuk meluncurkan On-Demand Instans ketika kapasitas target total melebihi jumlah Reservasi Kapasitas yang tidak terpakai yang tersedia.

Dalam contoh ini, konfigurasi armada adalah sebagai berikut:

  • Kapasitas target: 10 On-Demand Instans

  • Total Reserv targeted asi Kapasitas yang tidak digunakan: 6 (kurang dari kapasitas On-Demand target armada 10 On-Demand Instans)

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

  • Jumlah Reservasi Kapasitas per kolam: 3

  • On-Demand strategi alokasi: lowest-price (Jika jumlah Reservasi Kapasitas yang tidak digunakan kurang dari kapasitas On-Demand target, armada menentukan kumpulan tempat untuk meluncurkan On-Demand kapasitas yang tersisa berdasarkan strategi al On-Demand okasi.)

    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: Mengkonfigurasi Armada EC2 untuk meluncurkan On-Demand Instans 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. Strateg On-Demand i alokasi adalah lowest-price Strategi penggunaan untuk Reservasi Kapasitas adalah use-capacity-reservations-first.

Dalam contoh ini, harga On-Demand Instans untuk c5.xlarge in us-east-1 adalah $0,17 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 On-Demand Instans sebagai berikut:

    • 3 On-Demand Instans diluncurkan ke 3 Reservasi c5.xlarge targeted Kapasitas di us-east-1a

    • 3 On-Demand Instans diluncurkan ke 3 Reservasi c5.xlarge targeted Kapasitas di us-east-1b

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

Setelah armada diluncurkan, Anda dapat menjalankan describe-capacity-reservations untuk melihat jumlah 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 Armada EC2 untuk meluncurkan Instans Spot pengganti saat Amazon EC2 memancarkan rekomendasi penyeimbangan ulang untuk Instans Spot di armada. Untuk mengonfigurasi penggantian otomatis Instans Spot, untukReplacementStrategy , tentukanlaunch-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 Ulang Kapasitas bergantung pada jumlah kolam kapasitas Spot yang ditentukan dalam permintaan Armada EC2. Sebaiknya konfigurasikan armada dengan set tipe instans dan Zona Ketersediaan yang beragam, dan untuk AllocationStrategy, tentukan capacity-optimized. Untuk informasi selengkapnya tentang hal-hal yang harus Anda pertimbangkan saat mengonfigurasi Armada EC2 untuk Penyeimbangan Ulang Kapasitas, lihat Gunakan Penyeimbangan Kembali Kapasitas di Armada EC2 dan Spot Fleet untuk menggantikan 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 mengonfigurasi Armada EC2 dengan strategi alokasi 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. Armada EC2 berupaya meluncurkan 50 Instans Spot ke kolam 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 mengonfigurasi Armada EC2 dengan strategi alokasi Spot yang mengoptimalkan kapasitas sambil menggunakan prioritas dengan 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. Armada EC2 akan mengoptimalkan kapasitas terlebih dahulu, tetapi akan mempertimbangkan prioritas dengan upaya terbaik (misalnya, jika mempertimbangkan prioritas tidak akan secara signifikan memengaruhi kemampuan Armada EC2 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. Armada EC2 berupaya meluncurkan 50 Instans Spot ke dalam kolam kapasitas Spot dengan prioritas tertinggi menggunakan 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 dalam armada yang dioptimalkan kapasitas harga

Contoh berikut menunjukkan cara mengonfigurasi Armada EC2 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. Armada EC2 berupaya meluncurkan 50 Instans Spot ke kolam kapasitas Spot dengan kapasitas optimal untuk jumlah instans yang diluncurkan sekaligus memilih kolam yang memiliki 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: Mengkonfigurasi pemilihan jenis instans berbasis atribut

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

Pada contoh berikut ini, dua atribut instans ditentukan:

  • VCpuCount – Minimum 2 vCPU 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 tipe instans yang memiliki 2 atau lebih VCPU dan 4 MiB atau lebih memori akan diidentifikasi. Namun, perlindungan harga dan strategi alokasi mungkin akan mengecualikan beberapa tipe instans jika Armada EC2 menyediakan armada.

Untuk daftar dan deskripsi semua atribut yang mungkin dapat Anda tentukan, lihat InstanceRequirements di Refer ensi API Amazon EC2.

{ "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" }