Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan reservasi kapasitas dengan armada instans di Amazon EMR
Untuk meluncurkan armada Instans Sesuai Permintaan dengan opsi pencadangan kapasitas, lampirkan izin peran layanan tambahan yang diperlukan guna menggunakan opsi pencadangan kapasitas. Karena opsi pencadangan kapasitas harus digunakan bersama dengan strategi alokasi Sesuai Permintaan, Anda juga harus menyertakan izin yang diperlukan untuk strategi alokasi dalam peran layanan dan kebijakan terkelola Anda. Untuk informasi selengkapnya, lihat Izin strategi alokasi.
Amazon EMR mendukung pencadangan kapasitas terbuka dan tertarget. Topik berikut menunjukkan konfigurasi armada instans yang dapat Anda gunakan dengan tindakan RunJobFlow
atau perintah create-cluster
untuk meluncurkan armada instans menggunakan Pencadangan Kapasitas Sesuai Permintaan.
Gunakan pencadangan kapasitas terbuka berdasarkan upaya terbaik
Jika Instans Sesuai Permintaan klaster cocok dengan atribut pencadangan kapasitas terbuka (tipe instans, platform, penghunian, dan Availability Zone) yang tersedia di akun Anda, pencadangan kapasitas akan diterapkan secara otomatis. Namun, tidak ada jaminan bahwa pencadangan kapasitas Anda akan digunakan. Untuk penyediaan klaster, Amazon EMR mengevaluasi semua kumpulan instans yang ditentukan dalam permintaan peluncuran dan menggunakan salah satu dengan harga terendah yang memiliki kapasitas yang memadai untuk meluncurkan semua simpul inti yang diminta. Pencadangan kapasitas terbuka yang tersedia yang cocok dengan kumpulan instans diterapkan secara otomatis. Jika pencadangan kapasitas terbuka yang tersedia tidak cocok dengan kumpulan instans, pencadangan tersebut tetap tidak digunakan.
Setelah simpul inti disediakan, Availability Zone dipilih dan ditetapkan. Amazon EMR menyediakan simpul tugas ke dalam kumpulan instans, dimulai dengan harga yang paling rendah terlebih dahulu, di Availability Zone yang dipilih hingga semua simpul tugas disediakan. Pencadangan kapasitas terbuka yang tersedia yang cocok dengan kumpulan instans diterapkan secara otomatis.
Berikut ini adalah kasus penggunaan logika alokasi kapasitas Amazon EMR untuk menggunakan pencadangan kapasitas terbuka berdasarkan upaya terbaik.
Contoh 1: Kumpulan instans dengan harga terendah dalam permintaan peluncuran memiliki reservasi kapasitas terbuka yang tersedia
Dalam hal ini, Amazon EMR meluncurkan kapasitas di kumpulan instans harga terendah dengan Instans Sesuai Permintaan. Pencadangan kapasitas terbuka Anda yang tersedia di kumpulan instans tersebut digunakan secara otomatis.
Strategi Sesuai Permintaan | harga terendah | ||
Kapasitas yang Diminta | 100 | ||
Tipe Instans | c5.xlarge | m5.xlarge | r5.xlarge |
Pencadangan kapasitas terbuka yang tersedia | 150 | 100 | 100 |
Harga Sesuai Permintaan | $ | $$ | $$$ |
Instans yang Disediakan | 100 | - | - |
---|---|---|---|
Pencadangan kapasitas terbuka yang digunakan | 100 | - | - |
Pencadangan kapasitas terbuka yang tersedia | 50 | 100 | 100 |
Setelah armada instans diluncurkan, Anda dapat menjalankan describe-capacity-reservations
untuk melihat berapa banyak pencadangan kapasitas tidak terpakai yang tersisa.
Contoh 2: Pool instans dengan harga terendah dalam permintaan peluncuran tidak memiliki reservasi kapasitas terbuka yang tersedia
Dalam hal ini, Amazon EMR meluncurkan kapasitas di kumpulan instans harga terendah dengan Instans Sesuai Permintaan. Namun, pencadangan kapasitas terbuka Anda tetap tidak digunakan.
Strategi Sesuai Permintaan | harga terendah | ||
Kapasitas yang Diminta | 100 | ||
Tipe Instans | c5.xlarge | m5.xlarge | r5.xlarge |
Pencadangan kapasitas terbuka yang tersedia |
- | - | 100 |
Harga Sesuai Permintaan | $ | $$ | $$$ |
Instans yang Disediakan | 100 | - | - |
---|---|---|---|
Pencadangan kapasitas terbuka yang digunakan | - | - | - |
Pencadangan kapasitas terbuka yang tersedia | - | - | 100 |
Konfigurasikan Armada Instance untuk menggunakan reservasi kapasitas terbuka dengan upaya terbaik
Jika Anda menggunakan tindakan RunJobFlow
untuk membuat klaster berbasis armada instans, atur strategi alokasi Sesuai Permintaan ke lowest-price
dan CapacityReservationPreference
untuk opsi pencadangan kapasitas ke open
.. Atau, jika Anda membiarkan bidang ini kosong, Amazon EMR akan me-default preferensi reservasi kapasitas Instans Sesuai Permintaan. open
"LaunchSpecifications": {"OnDemandSpecification": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "CapacityReservationPreference": "open" } } }
Anda juga dapat menggunakan CLI Amazon EMR untuk membuat klaster berbasis armada instans menggunakan pencadangan kapasitas terbuka.
aws emr create-cluster \ --name 'open-ODCR-cluster' \ --release-label emr-5.30.0 \ --service-role EMR_DefaultRole \ --ec2-attributes SubnetId=subnet-22XXXX01,InstanceProfile=EMR_EC2_DefaultRole \ --instance-fleets InstanceFleetType=MASTER,TargetOnDemandCapacity=1,InstanceTypeConfigs=['{InstanceType=c4.xlarge}'] \ InstanceFleetType=CORE,TargetOnDemandCapacity=100,InstanceTypeConfigs=['{InstanceType=c5.xlarge},{InstanceType=m5.xlarge},{InstanceType=r5.xlarge}'],\ LaunchSpecifications={OnDemandSpecification='{AllocationStrategy=lowest-price,CapacityReservationOptions={CapacityReservationPreference=open}}'}
Jika,
-
open-ODCR-cluster
diganti dengan nama klaster menggunakan pencadangan kapasitas terbuka. -
subnet-22XXXX01
diganti dengan ID subnet.
Gunakan pencadangan kapasitas terbuka terlebih dahulu
Anda dapat memilih untuk mengganti strategi alokasi harga terendah dan memprioritaskan penggunaan pencadangan kapasitas terbuka yang tersedia terlebih dahulu selagi menyediakan klaster Amazon EMR. Dalam hal ini, Amazon EMR mengevaluasi semua kumpulan instans dengan pencadangan kapasitas yang ditentukan dalam permintaan peluncuran dan menggunakan salah satu dengan harga terendah yang memiliki kapasitas memadai untuk meluncurkan semua simpul inti yang diminta. Jika tidak ada kumpulan instans dengan pencadangan kapasitas yang memiliki kapasitas yang memadai untuk simpul inti yang diminta, Amazon EMR kembali ke kasus upaya terbaik yang dijelaskan dalam topik sebelumnya. Artinya, Amazon EMR mengevaluasi ulang semua kumpulan instans yang ditentukan dalam permintaan peluncuran dan menggunakan salah satu dengan harga terendah yang memiliki kapasitas memadai untuk meluncurkan semua simpul inti yang diminta. Pencadangan kapasitas terbuka yang tersedia yang cocok dengan kumpulan instans diterapkan secara otomatis. Jika pencadangan kapasitas terbuka yang tersedia tidak cocok dengan kumpulan instans, pencadangan tersebut tetap tidak digunakan.
Setelah simpul inti disediakan, Availability Zone dipilih dan ditetapkan. Amazon EMR menyediakan simpul tugas ke dalam kumpulan instans dengan pencadangan kapasitas, dimulai dengan yang memiliki harga terendah terlebih dahulu, di Availability Zone yang dipilih hingga semua simpul tugas disediakan. Amazon EMR menggunakan pencadangan kapasitas terbuka yang tersedia yang terdapat di setiap kumpulan instans di Availability Zone yang dipilih terlebih dahulu, dan hanya jika diperlukan, menggunakan strategi harga terendah untuk menyediakan simpul tugas yang lainnya.
Berikut ini adalah kasus penggunaan logika alokasi kapasitas Amazon EMR untuk menggunakan pencadangan kapasitas terbuka terlebih dahulu.
Contoh 1: Kumpulan instans dengan reservasi kapasitas terbuka yang tersedia dalam permintaan peluncuran memiliki kapasitas yang cukup untuk node inti
Dalam hal ini, Amazon EMR meluncurkan kapasitas di kumpulan instans dengan pencadangan kapasitas terbuka yang tersedia terlepas dari harga kumpulan instans. Sehingga, pencadangan kapasitas terbuka Anda digunakan bila memungkinkan, hingga semua simpul inti tersedia.
Strategi Sesuai Permintaan | harga terendah | ||
Kapasitas yang Diminta | 100 | ||
Strategi Penggunaan | use-capacity-reservations-first | ||
Tipe Instans | c5.xlarge | m5.xlarge | r5.xlarge |
Pencadangan kapasitas terbuka yang tersedia | - | - | 150 |
Harga Sesuai Permintaan | $ | $$ | $$$ |
Instans yang Disediakan | - | - | 100 |
---|---|---|---|
Pencadangan kapasitas terbuka yang digunakan | - | - | 100 |
Pencadangan kapasitas terbuka yang tersedia | - | - | 50 |
Contoh 2: Kumpulan instans dengan reservasi kapasitas terbuka yang tersedia dalam permintaan peluncuran tidak memiliki kapasitas yang cukup untuk node inti
Dalam hal ini, Amazon EMR kembali meluncurkan simpul inti menggunakan strategi harga terendah dengan upaya terbaik untuk menggunakan pencadangan kapasitas.
Strategi Sesuai Permintaan | harga terendah | ||
Kapasitas yang Diminta | 100 | ||
Strategi Penggunaan | use-capacity-reservations-first | ||
Tipe Instans | c5.xlarge | m5.xlarge | r5.xlarge |
Pencadangan kapasitas terbuka yang tersedia | 10 | 50 | 50 |
Harga Sesuai Permintaan | $ | $$ | $$$ |
Instans yang Disediakan | 100 | - | - |
---|---|---|---|
Pencadangan kapasitas terbuka yang digunakan | 10 | - | - |
Pencadangan kapasitas terbuka yang tersedia | - | 50 | 50 |
Setelah armada instans diluncurkan, Anda dapat menjalankan describe-capacity-reservations
untuk melihat berapa banyak pencadangan kapasitas tidak terpakai yang tersisa.
Konfigurasikan Armada Instance untuk menggunakan reservasi kapasitas terbuka terlebih dahulu
Jika Anda menggunakan tindakan RunJobFlow
untuk membuat klaster berbasis armada instans, atur strategi alokasi Sesuai Permintaan ke lowest-price
dan UsageStrategy
untuk CapacityReservationOptions
hingga use-capacity-reservations-first
.
"LaunchSpecifications": {"OnDemandSpecification": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first" } } }
Anda juga dapat menggunakan Amazon EMR CLI untuk membuat cluster berbasis armada instans menggunakan reservasi kapasitas terlebih dahulu.
aws emr create-cluster \ --name 'use-CR-first-cluster' \ --release-label emr-5.30.0 \ --service-role EMR_DefaultRole \ --ec2-attributes SubnetId=subnet-22XXXX01,InstanceProfile=EMR_EC2_DefaultRole \ --instance-fleets \ InstanceFleetType=MASTER,TargetOnDemandCapacity=1,InstanceTypeConfigs=['{InstanceType=c4.xlarge}'] \ InstanceFleetType=CORE,TargetOnDemandCapacity=100,InstanceTypeConfigs=['{InstanceType=c5.xlarge},{InstanceType=m5.xlarge},{InstanceType=r5.xlarge}'],\ LaunchSpecifications={OnDemandSpecification='{AllocationStrategy=lowest-price,CapacityReservationOptions={UsageStrategy=use-capacity-reservations-first}}'}
Jika,
-
use-CR-first-cluster
diganti dengan nama klaster menggunakan pencadangan kapasitas terbuka. -
subnet-22XXXX01
diganti dengan ID subnet.
Gunakan pencadangan kapasitas yang ditargetkan terlebih dahulu
Saat Anda menyediakan klaster EMR Amazon, Anda dapat memilih untuk mengganti strategi alokasi harga terendah dan memprioritaskan menggunakan reservasi kapasitas bertarget yang tersedia terlebih dahulu. Dalam hal ini, Amazon EMR mengevaluasi semua kumpulan instans dengan pencadangan kapasitas yang ditargetkan yang ditentukan dalam permintaan peluncuran dan memilih satu dengan harga terendah yang memiliki kapasitas memadai untuk meluncurkan semua simpul inti yang diminta. Jika tidak ada kumpulan instans dengan pencadangan kapasitas yang ditargetkan memiliki kapasitas yang memadai untuk simpul inti, Amazon EMR kembali ke kasus upaya terbaik yang dijelaskan sebelumnya. Artinya, Amazon EMR mengevaluasi ulang semua kumpulan instans yang ditentukan dalam permintaan peluncuran dan memilih satu dengan harga terendah yang memiliki kapasitas memadai untuk meluncurkan semua simpul inti yang diminta. Pencadangan kapasitas terbuka tersedia yang cocok dengan kumpulan instans diterapkan secara otomatis. Namun, pencadangan kapasitas yang ditargetkan tetap tidak digunakan.
Setelah simpul inti disediakan, Availability Zone dipilih dan ditetapkan. Amazon EMR menyediakan simpul tugas ke dalam kumpulan instans dengan pencadangan kapasitas yang ditargetkan, dimulai dengan yang memiliki harga terenda terlebih dahulu, di Availability Zone yang dipilih hingga semua simpul tugas disediakan. Amazon EMR mencoba menggunakan pencadangan kapasitas tertarget yang tersedia yang berada di setiap kumpulan instans di Availability Zone yang dipilih terlebih dahulu. Kemudian, hanya jika diperlukan, Amazon EMR menggunakan strategi harga terendah untuk menyediakan simpul tugas lainnya.
Berikut ini adalah kasus penggunaan logika alokasi kapasitas Amazon EMR untuk menggunakan pencadangan kapasitas yang ditargetkan terlebih dahulu.
Contoh 1: Kumpulan instans dengan reservasi kapasitas tertarget yang tersedia dalam permintaan peluncuran memiliki kapasitas yang cukup untuk node inti
Dalam hal ini, Amazon EMR meluncurkan kapasitas di kumpulan instans dengan pencadangan kapasitas tertarget yang tersedia terlepas dari harga kumpulan instans. Sehingga, pencadangan kapasitas yang Anda targetkan digunakan bila memungkinkan hingga semua simpul inti tersedia.
Strategi Sesuai Permintaan | harga terendah | ||
Strategi Penggunaan | use-capacity-reservations-first | ||
Kapasitas yang Diminta | 100 | ||
Tipe Instans | c5.xlarge | m5.xlarge | r5.xlarge |
Pencadangan kapasitas tertarget yang tersedia | - | - | 150 |
Harga Sesuai Permintaan | $ | $$ | $$$ |
Instans yang Disediakan | - | - | 100 |
---|---|---|---|
Pencadangan kapasitas tertarget yang digunakan | - | - | 100 |
Pencadangan kapasitas tertarget yang tersedia | - | - | 50 |
contoh Contoh 2: Kumpulan instans dengan pencadangan kapasitas tertarget yang tersedia dalam permintaan peluncuran tidak memiliki kapasitas yang memadai untuk simpul inti
Strategi Sesuai Permintaan | harga terendah | ||
Kapasitas yang Diminta | 100 | ||
Strategi Penggunaan | use-capacity-reservations-first | ||
Tipe Instans | c5.xlarge | m5.xlarge | r5.xlarge |
Pencadangan kapasitas tertarget yang tersedia | 10 | 50 | 50 |
Harga Sesuai Permintaan | $ | $$ | $$$ |
Instans yang Disediakan | 100 | - | - |
---|---|---|---|
Reservasi kapasitas yang ditargetkan digunakan | 10 | - | - |
Pencadangan kapasitas tertarget yang tersedia | - | 50 | 50 |
Setelah armada instans diluncurkan, Anda dapat menjalankan describe-capacity-reservations
untuk melihat berapa banyak pencadangan kapasitas tidak terpakai yang tersisa.
Konfigurasikan Armada Instance untuk menggunakan reservasi kapasitas yang ditargetkan terlebih dahulu
Jika Anda menggunakan tindakan RunJobFlow
untuk membuat klaster berbasis armada instans, atur strategi alokasi Sesuai Permintaan ke lowest-price
, UsageStrategy
untuk CapacityReservationOptions
hingga use-capacity-reservations-first
, dan CapacityReservationResourceGroupArn
hingga CapacityReservationOptions
ke <your resource group
ARN>
. Untuk informasi selengkapnya, lihat Bekerja dengan reservasi kapasitas di Panduan EC2 Pengguna Amazon.
"LaunchSpecifications": {"OnDemandSpecification": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first", "CapacityReservationResourceGroupArn": "arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup" } } }
Jika arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup
diganti dengan grup sumber daya Anda ARN.
Anda juga dapat menggunakan Amazon EMR CLI untuk membuat cluster berbasis armada instance menggunakan reservasi kapasitas yang ditargetkan.
aws emr create-cluster \ --name 'targeted-CR-cluster' \ --release-label emr-5.30.0 \ --service-role EMR_DefaultRole \ --ec2-attributes SubnetId=subnet-22XXXX01,InstanceProfile=EMR_EC2_DefaultRole \ --instance-fleets InstanceFleetType=MASTER,TargetOnDemandCapacity=1,InstanceTypeConfigs=['{InstanceType=c4.xlarge}'] \ InstanceFleetType=CORE,TargetOnDemandCapacity=100,\ InstanceTypeConfigs=['{InstanceType=c5.xlarge},{InstanceType=m5.xlarge},{InstanceType=r5.xlarge}'],\ LaunchSpecifications={OnDemandSpecification='{AllocationStrategy=lowest-price,CapacityReservationOptions={UsageStrategy=use-capacity-reservations-first,CapacityReservationResourceGroupArn=arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup}}'}
Di mana,
-
targeted-CR-cluster
diganti dengan nama klaster Anda menggunakan pencadangan kapasitas yang ditargetkan. -
subnet-22XXXX01
diganti dengan ID subnet. -
arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup
diganti dengan grup sumber daya ARN.
Hindari menggunakan pencadangan kapasitas terbuka yang tersedia
Jika Anda ingin menghindari penggunaan pencadangan kapasitas terbuka secara tidak terduga saat meluncurkan klaster Amazon EMR, atur strategi alokasi Sesuai Permintaan ke lowest-price
dan CapacityReservationPreference
untuk CapacityReservationOptions
hingga none
. Jika tidak, Amazon EMR menetapkan preferensi pencadangan kapasitas Instans Sesuai Permintaan ke default open
dan mencoba menggunakan pencadangan kapasitas terbuka yang tersedia berdasarkan upaya terbaik.
"LaunchSpecifications": {"OnDemandSpecification": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "CapacityReservationPreference": "none" } } }
Anda juga dapat menggunakan CLI Amazon EMR untuk membuat klaster berbasis armada instans tanpa menggunakan pencadangan kapasitas terbuka apa pun.
aws emr create-cluster \ --name 'none-CR-cluster' \ --release-label emr-5.30.0 \ --service-role EMR_DefaultRole \ --ec2-attributes SubnetId=subnet-22XXXX01,InstanceProfile=EMR_EC2_DefaultRole \ --instance-fleets \ InstanceFleetType=MASTER,TargetOnDemandCapacity=1,InstanceTypeConfigs=['{InstanceType=c4.xlarge}'] \ InstanceFleetType=CORE,TargetOnDemandCapacity=100,InstanceTypeConfigs=['{InstanceType=c5.xlarge},{InstanceType=m5.xlarge},{InstanceType=r5.xlarge}'],\ LaunchSpecifications={OnDemandSpecification='{AllocationStrategy=lowest-price,CapacityReservationOptions={CapacityReservationPreference=none}}'}
Jika,
-
none-CR-cluster
diganti dengan nama klaster Anda yang tidak menggunakan pencadangan kapasitas terbuka. -
subnet-22XXXX01
diganti dengan ID subnet.
Skenario untuk menggunakan pencadangan kapasitas
Anda bisa mendapatkan keuntungan dari penggunaan pencadangan kapasitas dalam skenario berikut.
Skenario 1: Rotasi klaster yang berjalan lama menggunakan pencadangan kapasitas
Saat merotasi klaster yang berjalan lama, Anda mungkin memiliki persyaratan ketat mengenai tipe instans dan Availability Zone untuk instans baru yang Anda sediakan. Dengan pencadangan kapasitas, Anda dapat menggunakan jaminan kapasitas untuk menyelesaikan rotasi klaster tanpa gangguan.
![Rotasi klaster menggunakan pencadangan kapasitas yang tersedia](images/odcr-longrunning-cluster-diagram.png)
Skenario 2: Sediakan klaster jangka pendek berturut-turut menggunakan pencadangan kapasitas
Anda juga dapat menggunakan pencadangan kapasitas untuk menyediakan sekelompok klaster jangka pendek yang berurutan untuk beban kerja individual sehingga saat Anda mengakhiri klaster, klaster berikutnya dapat menggunakan pencadangan kapasitas. Anda dapat menggunakan pencadangan kapasitas yang ditargetkan untuk memastikan bahwa hanya klaster yang dituju yang menggunakan pencadangan kapasitas.
![Penyediaan klaster jangka pendek yang menggunakan pencadangan kapasitas yang tersedia](images/odcr-short-cluster-diagram.png)