Auto provisioning group membuat dan mengelola armada instans Elastic Compute Service (ECS) di berbagai tipe instans, zona, dan model harga. Gunakan auto provisioning group untuk membangun kluster instans yang menyeimbangkan biaya, ketersediaan, dan kapasitas guna menjalankan workload seperti machine learning dan layanan web.
Pilih strategi konfigurasi
Pilih strategi yang sesuai dengan workload Anda sebelum mengonfigurasi auto provisioning group.
| Skenario | Konfigurasi | Detail |
|---|---|---|
| Mengoptimalkan efektivitas biaya dan tingkat keberhasilan pembuatan? | Capacity Optimization Policy (default) | Menggunakan tipe instans paling hemat biaya berdasarkan harga dan laju reclamation spot instans. |
| Meminimalkan biaya di beberapa resource pool? | Cost Optimization Policy dengan spot instans | Auto provisioning group memilih tipe instans dengan harga terendah untuk membuat instans. |
| Mendistribusikan instans di berbagai zona untuk disaster recovery? | Balanced Distribution Policy | Auto provisioning group membuat instans secara merata di berbagai zona untuk mencegah kegagalan pembuatan instans akibat sumber daya yang tidak mencukupi dalam satu zona. |
| Memprioritaskan tipe instans tertentu (misalnya, untuk menggunakan reserved instance)? | Prioritized allocation (PayAsYouGoAllocationStrategy = prioritized) | Membuat instans pay-as-you-go berdasarkan prioritas yang ditentukan oleh LaunchTemplateConfig.N.Priority. |
| Menggunakan beberapa pool berbiaya rendah untuk mengurangi risiko interupsi spot? | Lowest-price allocation dengan SpotInstancePoolsToUseCount | Mendistribusikan spot instans di N resource pool termurah alih-alih berkonsentrasi pada satu pool saja. |
Konsep inti
| Konsep | Deskripsi |
|---|---|
| Resource pool | Kombinasi satu tipe instans dan satu zona. Setiap pool merupakan sumber kapasitas independen. |
| Target Capacity | Target kapasitas total untuk grup, diukur dalam jumlah instans atau vCPU. |
| Weighted capacity | Bobot yang diberikan pada tipe instans relatif terhadap target capacity. Saat target capacity diukur dalam vCPU, tipe instans dengan 4 vCPU memiliki bobot 4. |
| Provisioning policy | Strategi yang menentukan cara instans dialokasikan di berbagai resource pool. |
| Group type | Mengontrol apakah grup mengirimkan instans sekali saja (One-time Delivery) atau mempertahankan kapasitas secara berkelanjutan (Continuous Delivery and Maintain Capacity). |
Penanganan Interupsi Spot Instance
Saat spot instans direklamasi, auto provisioning group menanganinya berdasarkan Spot Instance Interruption Settings yang Anda pilih.
| Pengaturan | Perilaku | Waktu pemulihan | Biaya setelah interupsi |
|---|---|---|---|
| Release | Instans dilepas dan sumber dayanya dibebaskan. | Lebih lama: instans baru harus dibuat. | Tidak ada biaya lanjutan. |
| Stop | Instans masuk mode hemat (stopped) dan dapat dijalankan ulang saat kapasitas tersedia. | Lebih cepat: menjalankan ulang lebih cepat daripada membuat instans baru. | Tidak ada biaya komputasi. Biaya penyimpanan tetap berlaku. |
Konfigurasi di Konsol ECS
Contoh 1: Kluster machine learning (dioptimalkan biaya)
Skenario: Menyelesaikan tugas machine learning selama seminggu untuk menganalisis faktor risiko dalam pinjaman hipotek. Kluster memerlukan instans GPU, biaya harus diminimalkan, dan semua instans harus dilepas setelah tugas selesai.
Persyaratan:
Wilayah: Tiongkok (Hangzhou)
GPU: NVIDIA V100, hingga 32 GB Memori GPU per instans
Target capacity: 20 instans
Untuk meminimalkan biaya, buat hanya spot instans. Jumlah instans dalam kluster boleh kurang dari target capacity.
Instans harus dilepas setelah tugas selesai.
Konfigurasi:
| Bagian | Parameter | Pengaturan |
|---|---|---|
| Capacity Configuration | Target Capacity | Pilih Instances dari daftar drop-down. Atur nilainya ke 20. |
| Instance Configuration | Instance Configuration | 1. Pilih tipe instans ecs.gn6v-c8g1.2xlarge dan ecs.gn6e-c12g1.3xlarge. Tipe-tipe ini dilengkapi GPU NVIDIA V100 dan memiliki hingga 32 GB Memori GPU. 2. Periksa ketersediaan tipe instans di Hangzhou Zone H dan Hangzhou Zone I pada halaman ECS Instance Types Available for Each Region. 3. Tambahkan dua konfigurasi instans: satu dengan vSwitch di Hangzhou Zone H, dan satu lagi dengan vSwitch di Hangzhou Zone I. Tambahkan kedua tipe instans ke setiap konfigurasi. |
| Provisioning Policy | Pilih Cost Optimization Policy. Grup membuat instans dari resource pool termurah yang tersedia. | |
| Spot Instance Interruption Settings | Pilih Release. Jumlah instans dalam kluster instans boleh kurang dari target capacity untuk meminimalkan biaya. | |
| Advanced | Group Type | Pilih One-time Delivery. Jumlah instans dalam kluster instans boleh kurang dari target capacity untuk meminimalkan biaya. |
| Start Time dan End Time | Atur waktu mulai dan selesai agar mencakup periode tugas selama satu minggu. | |
| Global Maximum Price for Spot Instances | Pilih Set Maximum Price dan tentukan harga maksimum yang dapat Anda tanggung. | |
| Instance Shutdown Settings | Pilih Shut Down Instances Upon Group Expiration untuk melepas semua instans saat tugas selesai. Pilih Shut Down Excessive Instances When Target Capacity Is Exceeded untuk meminimalkan biaya. |
Konfigurasi ini membentuk empat resource pool:
| Resource pool | Instance type | Zone |
|---|---|---|
| 1 | ecs.gn6v-c8g1.2xlarge | Hangzhou Zone H |
| 2 | ecs.gn6e-c12g1.3xlarge | Hangzhou Zone H |
| 3 | ecs.gn6v-c8g1.2xlarge | Hangzhou Zone I |
| 4 | ecs.gn6e-c12g1.3xlarge | Hangzhou Zone I |
Grup mengevaluasi keempat pool tersebut dan membuat instans dari pool termurah yang tersedia.
Untuk detail tentang tipe instans ini, lihat Overview of instance families.
Contoh 2: Website ticketing (high availability)
Skenario: Membangun website ticketing yang menyediakan layanan andal selama 24 jam, termasuk saat trafik puncak. Kluster harus mempertahankan kapasitas minimum menggunakan instans pay-as-you-go dan tersebar di beberapa zona untuk disaster recovery.
Persyaratan:
Wilayah: Tiongkok (Hangzhou)
Tipe instans: hingga 8 vCPU per instans (family c6, cocok untuk server web frontend)
Target capacity: 80 vCPU
Kapasitas minimum: 60 vCPU (dijamin oleh instans pay-as-you-go)
Disaster recovery di beberapa zona
Konfigurasi:
| Bagian | Parameter | Pengaturan |
|---|---|---|
| Capacity Configuration | Target Capacity | Pilih vCPUs dari daftar drop-down. Atur nilainya ke 80. Pilih Use Pay-as-you-go Instances to Provide Computing Power. |
| Pay-as-you-go Instance Capacity | Atur ke 60 untuk menjamin kapasitas minimum. | |
| Instance Configuration | Instance Configuration | 1. Pilih tipe instans ecs.c6.large, ecs.c6.xlarge, dan ecs.c6.2xlarge. 2. Periksa ketersediaan di Hangzhou Zone H, Hangzhou Zone I, dan Hangzhou Zone J. 3. Tambahkan tiga konfigurasi instans, satu per zona, masing-masing dengan ketiga tipe instans tersebut. |
| Provisioning Policy | Pilih Balanced Distribution Policy. Grup membuat instans secara merata di berbagai zona untuk mencegah kegagalan pembuatan instans akibat sumber daya yang tidak mencukupi dalam satu zona, sehingga meningkatkan disaster recovery. | |
| Spot Instance Interruption Settings | Pilih Stop untuk memastikan website dapat diakses dengan latensi rendah. Waktu yang diperlukan untuk memulihkan instans dari status stopped dalam mode hemat lebih singkat daripada waktu yang diperlukan untuk membuat instans baru. | |
| Advanced | Group Type | Pilih Continuous Delivery and Maintain Capacity untuk terus menyediakan layanan ticketing. |
| Start Time dan End Time | Auto provisioning group langsung dimulai dan dapat dipertahankan tanpa batas waktu untuk terus menyediakan layanan ticketing. | |
| Global Maximum Price for Spot Instances | Pilih Automatic Bidding untuk mempertahankan jumlah instans yang stabil dalam kluster. | |
| Instance Shutdown Settings | Pilih Shut Down Excessive Instances When Target Capacity Is Exceeded untuk meminimalkan biaya. |
Konfigurasi ini membentuk sembilan resource pool (3 tipe instans × 3 zona):
| Resource pool | Instance type | Zone |
|---|---|---|
| 1 | ecs.c6.large | Hangzhou Zone H |
| 2 | ecs.c6.xlarge | Hangzhou Zone H |
| 3 | ecs.c6.2xlarge | Hangzhou Zone H |
| 4 | ecs.c6.large | Hangzhou Zone I |
| 5 | ecs.c6.xlarge | Hangzhou Zone I |
| 6 | ecs.c6.2xlarge | Hangzhou Zone I |
| 7 | ecs.c6.large | Hangzhou Zone J |
| 8 | ecs.c6.xlarge | Hangzhou Zone J |
| 9 | ecs.c6.2xlarge | Hangzhou Zone J |
Cara kerja balanced distribution policy
Saat target capacity diukur dalam vCPU, setiap tipe instans memiliki bobot yang sama dengan jumlah vCPU-nya.
| Instance type | vCPUs | Harga pay-as-you-go (USD) | Bobot | Harga berbobot (USD) |
|---|---|---|---|---|
| ecs.c6.large | 2 | 0,06 per jam | 2 | 0,03 per jam |
| ecs.c6.xlarge | 4 | 0,121 per jam | 4 | 0,03025 per jam |
| ecs.c6.2xlarge | 8 | 0,241 per jam | 8 | 0,030125 per jam |
Harga hanya sebagai referensi. Harga aktual mengikuti halaman pembelian yang berlaku.
Grup mengikuti urutan alokasi berikut:
Distribusi di berbagai zona: Buat instans secara merata di Hangzhou Zone H, Zone I, dan Zone J.
Pilih berdasarkan harga berbobot: Di setiap zona, utamakan tipe instans dengan harga berbobot lebih rendah.
Pemecahan seri acak: Jika harga berbobot sama, pilih tipe instans secara acak.
Konfigurasi dengan memanggil operasi API
Gunakan operasi API CreateAutoProvisioningGroup untuk membuat auto provisioning group secara terprogram.
Contoh 1: Distribusi di pool termurah
Jika Anda ingin meminimalkan biaya dan mengurangi dampak reklamasi spot instans akibat penggunaan satu resource pool, Anda dapat mengonfigurasi auto provisioning group untuk menggunakan beberapa resource pool termurah dalam membuat instans.
Tujuan:
Buat 30 spot instans dari launch template dengan lima resource pool.
Gunakan tiga pool termurah, buat 10 instans dari masing-masing.
Parameter API:
| Parameter | Nilai | Deskripsi |
|---|---|---|
TotalTargetCapacity | 30 | Target total: 30 instans |
SpotTargetCapacity | 30 | Semua 30 adalah spot instans |
PayAsYouGoTargetCapacity | 0 | Tidak ada instans pay-as-you-go |
SpotAllocationStrategy | lowest-price | Pilih pool berdasarkan harga, termurah terlebih dahulu |
SpotInstancePoolsToUseCount | 3 | Gunakan 3 pool termurah dari 5 yang tersedia |
PayAsYouGoAllocationStrategy | lowest-price | Optimasi biaya untuk pay-as-you-go (tidak digunakan dalam contoh ini karena jumlahnya 0) |
LaunchTemplateId | lt-bp1ivgo4p5now3px**** | Launch template yang menentukan pengaturan dasar instans |
Konfigurasi resource pool (LaunchTemplateConfig):
| Pool | Awalan parameter | ID vSwitch | Instance type | Weighted capacity |
|---|---|---|---|---|
| 1 | LaunchTemplateConfig.1 | vsw-bp1ygryo03m39xhsy**** | ecs.c6e.large | 1 |
| 2 | LaunchTemplateConfig.2 | vsw-bp16hgf8f3kvtcbyu**** | ecs.c6e.xlarge | 1 |
| 3 | LaunchTemplateConfig.3 | vsw-bp1oeawdo9tj2gvjp**** | ecs.c6e.2xlarge | 1 |
| 4 | LaunchTemplateConfig.4 | vsw-bp1oeawdo9tj2gvjp**** | ecs.g6e.xlarge | 1 |
| 5 | LaunchTemplateConfig.5 | vsw-bp1oeawdo9tj2gvjp**** | ecs.g6e.2xlarge | 1 |
Hasil: Grup mengurutkan kelima pool berdasarkan harga spot saat ini dan membuat instans dari tiga pool termurah, mendistribusikan 10 instans ke masing-masing.
Contoh 2: Memprioritaskan resource pool tertentu
Anda dapat mengonfigurasi auto provisioning group untuk membuat instans dengan memprioritaskan resource pool tertentu. Misalnya, jika Anda menggunakan reserved instance yang dapat diterapkan pada instans ecs.c6e.large, Anda dapat mengonfigurasi auto provisioning group untuk memprioritaskan pemilihan tipe instans ecs.c6e.large guna memperoleh diskon penagihan dari reserved instance tersebut.
Tujuan:
Buat 20 instans: 10 spot dan 10 pay-as-you-go.
Buat instans pay-as-you-go dari pool ecs.c6e.large terlebih dahulu (prioritas 0 = tertinggi).
Parameter API:
| Parameter | Nilai | Deskripsi |
|---|---|---|
TotalTargetCapacity | 20 | Target total: 20 instans |
SpotTargetCapacity | 10 | 10 spot instans |
PayAsYouGoTargetCapacity | 10 | 10 instans pay-as-you-go |
SpotAllocationStrategy | lowest-price | Pilih pool spot berdasarkan harga |
PayAsYouGoAllocationStrategy | prioritized | Buat instans pay-as-you-go berdasarkan prioritas pool |
LaunchTemplateId | lt-bp1ivgo4p5now3px**** | Launch template |
Konfigurasi resource pool (LaunchTemplateConfig):
| Pool | Awalan parameter | ID vSwitch | Instance type | Weighted capacity | Prioritas |
|---|---|---|---|---|---|
| 1 | LaunchTemplateConfig.1 | vsw-bp1ygryo03m39xhsy**** | ecs.c6e.large | 1 | 0 (tertinggi) |
| 2 | LaunchTemplateConfig.2 | vsw-bp16hgf8f3kvtcbyu**** | ecs.c6e.xlarge | 1 | -- |
| 3 | LaunchTemplateConfig.3 | vsw-bp1oeawdo9tj2gvjp**** | ecs.c6e.2xlarge | 1 | -- |
| 4 | LaunchTemplateConfig.4 | vsw-bp1oeawdo9tj2gvjp**** | ecs.g6e.xlarge | 1 | -- |
| 5 | LaunchTemplateConfig.5 | vsw-bp1oeawdo9tj2gvjp**** | ecs.g6e.2xlarge | 1 | -- |
Hasil: Grup membuat 10 instans pay-as-you-go dari pool ecs.c6e.large (prioritas 0). Jika kapasitas pool tersebut tidak mencukupi, sistem akan beralih ke pool 2–5. Spot instans dibuat dari pool termurah yang tersedia.
Nilai prioritas0menunjukkan prioritas tertinggi. Tetapkan prioritas hanya pada pool yang digunakan dengan strategi alokasiprioritized.