As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Usar reservas de capacidade com a frotas de instância
Para iniciar frotas de instâncias sob demanda com opções de reserva de capacidade, anexe outras permissões de perfil de serviço que são necessárias para usar as opções de reserva de capacidade. Como as opções de reserva de capacidade devem ser usadas junto com a estratégia de alocação sob demanda, também é necessário incluir as permissões necessárias para a estratégia de alocação em no perfil de serviço e na política gerenciada. Para ter mais informações, consulte Permissões da estratégia de alocação.
A Amazon EMR oferece suporte para reservas de capacidade abertas e direcionadas. Os tópicos a seguir mostram as configurações de frotas de instâncias que você pode usar com a ação RunJobFlow
ou o comando create-cluster
para iniciar frotas de instâncias usando reservas de capacidade sob demanda.
Usar reservas de capacidade aberta com base no melhor esforço
Se as instâncias sob demanda do cluster corresponderem aos atributos das reservas de capacidade aberta (tipo de instância, plataforma, locação e zona de disponibilidade) disponíveis na conta, as reservas de capacidade serão aplicadas automaticamente. No entanto, o uso das reservas de capacidade não é garantido. Para provisionar o cluster, a Amazon EMR avalia todos os pools de instâncias especificados na solicitação de execução e usa aquele com o menor preço que tenha capacidade suficiente para iniciar todos os nós principais solicitados. As reservas de capacidade aberta disponíveis que correspondem ao grupo de instâncias são aplicadas automaticamente. Se as reservas de capacidade aberta disponíveis não corresponderem ao grupos de instâncias, elas permanecerão inutilizadas.
Depois que os nós centrais são provisionados, a zona de disponibilidade é selecionada e corrigida. A Amazon EMR provisiona os nós de tarefas em grupos de instâncias, começando primeiro com os de menor preço, na zona de disponibilidade selecionada, até que todos os nós de tarefas sejam provisionados. As reservas de capacidade aberta disponíveis que correspondem aos grupos de instâncias são aplicadas automaticamente.
A seguir estão os casos de uso da lógica de alocação de EMR capacidade da Amazon para usar reservas de capacidade abertas com base no melhor esforço.
Exemplo 1: o grupo de instâncias de menor preço na solicitação de inicialização tem reservas de capacidade abertas disponíveis
Nesse caso, a Amazon EMR lança capacidade no pool de instâncias de menor preço com instâncias sob demanda. Suas reservas de capacidade aberta disponíveis nesse grupo de instâncias são usadas automaticamente.
Estratégia sob demanda | preço mais baixo | ||
Capacidade solicitada | 100 | ||
Tipo de instância | c5.xlarge | m5.xlarge | r5.xlarge |
Reservas de capacidade aberta disponíveis | 150 | 100 | 100 |
Preço sob demanda | $ | $$ | $$$ |
Instâncias provisionadas | 100 | - | - |
---|---|---|---|
Reserva de capacidade aberta utilizada | 100 | - | - |
Reservas de capacidade aberta disponíveis | 50 | 100 | 100 |
Depois que a frota de instâncias for iniciada, você poderá executar describe-capacity-reservations
para ver quantas reservas de capacidade não utilizadas restam.
Exemplo 2: o grupo de instâncias de menor preço na solicitação de execução não tem reservas de capacidade abertas disponíveis
Nesse caso, a Amazon EMR lança capacidade no pool de instâncias de menor preço com instâncias sob demanda. No entanto, suas reservas de capacidade aberta permanecem inutilizadas.
Estratégia sob demanda | preço mais baixo | ||
Capacidade solicitada | 100 | ||
Tipo de instância | c5.xlarge | m5.xlarge | r5.xlarge |
Reservas de capacidade aberta disponíveis |
- | - | 100 |
Preço sob demanda | $ | $$ | $$$ |
Instâncias provisionadas | 100 | - | - |
---|---|---|---|
Reserva de capacidade aberta utilizada | - | - | - |
Reservas de capacidade aberta disponíveis | - | - | 100 |
Configurar frotas de instâncias para usar reservas de capacidade aberta com base no melhor esforço
Ao usar a ação RunJobFlow
para criar um cluster baseado em frota de instâncias, defina a estratégia de alocação sob demanda para lowest-price
e CapacityReservationPreference
para as opções de reservas de capacidade como open
. Como alternativa, se você deixar esse campo em branco, a Amazon EMR padronizará a preferência de reserva de capacidade da instância sob demanda para. open
"LaunchSpecifications": {"OnDemandSpecification": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "CapacityReservationPreference": "open" } } }
Você também pode usar a Amazon EMR CLI para criar um cluster baseado em frota de instâncias usando reservas de capacidade aberta.
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}}'}
Onde,
-
Substitui-se
open-ODCR-cluster
pelo nome do cluster usando reservas de capacidade abertas. -
Substitui-se
subnet-22XXXX01
pelo ID da sub-rede.
Usar primeiro as reservas de capacidade aberta
Você pode optar por substituir a estratégia de alocação de menor preço e priorizar o uso das reservas de capacidade aberta disponíveis primeiro ao provisionar um cluster da Amazon. EMR Nesse caso, a Amazon EMR avalia todos os pools de instâncias com reservas de capacidade especificadas na solicitação de lançamento e usa aquele com o menor preço que tenha capacidade suficiente para iniciar todos os nós principais solicitados. Se nenhum dos pools de instâncias com reservas de capacidade tiver capacidade suficiente para os nós principais solicitados, a EMR Amazon recorre ao caso de melhor esforço descrito no tópico anterior. Ou seja, a Amazon EMR reavalia todos os pools de instâncias especificados na solicitação de lançamento e usa aquele com o menor preço que tenha capacidade suficiente para iniciar todos os nós principais solicitados. As reservas de capacidade aberta disponíveis que correspondem ao grupo de instâncias são aplicadas automaticamente. Se as reservas de capacidade aberta disponíveis não corresponderem ao grupos de instâncias, elas permanecerão inutilizadas.
Depois que os nós centrais são provisionados, a zona de disponibilidade é selecionada e corrigida. A Amazon EMR provisiona os nós de tarefas em grupos de instâncias com reservas de capacidade, começando primeiro com os de menor preço, na zona de disponibilidade selecionada, até que todos os nós da tarefa sejam provisionados. A Amazon EMR usa primeiro as reservas de capacidade aberta disponíveis em cada pool de instâncias na zona de disponibilidade selecionada e, somente se necessário, usa a estratégia de menor preço para provisionar quaisquer nós de tarefas restantes.
A seguir estão os casos de uso da lógica de alocação de EMR capacidade da Amazon para usar primeiro as reservas de capacidade aberta.
Exemplo 1: o grupo de instâncias com reservas de capacidade aberta disponíveis na solicitação de inicialização tem capacidade suficiente para os nós centrais
Nesse caso, a Amazon EMR lança capacidade no pool de instâncias com reservas de capacidade aberta disponíveis, independentemente do preço do pool de instâncias. Como resultado, as reservas de capacidade aberta são usadas sempre que possível, até que todos os nós centrais sejam provisionados.
Estratégia sob demanda | preço mais baixo | ||
Capacidade solicitada | 100 | ||
Estratégia de uso | use-capacity-reservations-first | ||
Tipo de instância | c5.xlarge | m5.xlarge | r5.xlarge |
Reservas de capacidade aberta disponíveis | - | - | 150 |
Preço sob demanda | $ | $$ | $$$ |
Instâncias provisionadas | - | - | 100 |
---|---|---|---|
Reserva de capacidade aberta utilizada | - | - | 100 |
Reservas de capacidade aberta disponíveis | - | - | 50 |
Exemplo 2: o grupo de instâncias com reservas de capacidade aberta disponíveis na solicitação de inicialização não tem capacidade suficiente para os nós centrais
Nesse caso, a Amazon volta EMR a lançar nós principais usando a estratégia de menor preço com o melhor esforço para usar as reservas de capacidade.
Estratégia sob demanda | preço mais baixo | ||
Capacidade solicitada | 100 | ||
Estratégia de uso | use-capacity-reservations-first | ||
Tipo de instância | c5.xlarge | m5.xlarge | r5.xlarge |
Reservas de capacidade aberta disponíveis | 10 | 50 | 50 |
Preço sob demanda | $ | $$ | $$$ |
Instâncias provisionadas | 100 | - | - |
---|---|---|---|
Reserva de capacidade aberta utilizada | 10 | - | - |
Reservas de capacidade aberta disponíveis | - | 50 | 50 |
Depois que a frota de instâncias for iniciada, você poderá executar describe-capacity-reservations
para ver quantas reservas de capacidade não utilizadas restam.
Configurar frotas de instâncias para usar primeiro reservas de capacidade aberta
Ao usar a ação RunJobFlow
para criar um cluster baseado em frota de instâncias, defina a estratégia de alocação sob demanda para lowest-price
e UsageStrategy
para CapacityReservationOptions
como use-capacity-reservations-first
.
"LaunchSpecifications": {"OnDemandSpecification": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first" } } }
Você também pode usar a Amazon EMR CLI para criar um cluster baseado em frota de instâncias usando primeiro as reservas de capacidade.
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}}'}
Onde,
-
Substitui-se
use-CR-first-cluster
pelo nome do cluster usando reservas de capacidade abertas. -
Substitui-se
subnet-22XXXX01
pelo ID da sub-rede.
Usar primeiro as reservas de capacidade direcionadas
Ao provisionar um EMR cluster da Amazon, você pode optar por ignorar a estratégia de alocação de menor preço e priorizar primeiro o uso das reservas de capacidade direcionada disponíveis. Nesse caso, a Amazon EMR avalia todos os pools de instâncias com reservas de capacidade específicas especificadas na solicitação de lançamento e escolhe aquele com o menor preço que tenha capacidade suficiente para iniciar todos os nós principais solicitados. Se nenhum dos pools de instâncias com reservas de capacidade direcionadas tiver capacidade suficiente para os nós principais, a EMR Amazon recorre ao caso de melhor esforço descrito anteriormente. Ou seja, a Amazon EMR reavalia todos os pools de instâncias especificados na solicitação de execução e seleciona aquele com o menor preço que tenha capacidade suficiente para iniciar todos os nós principais solicitados. As reservas de capacidade aberta disponíveis que correspondem ao grupo de instâncias são aplicadas automaticamente. No entanto, as reservas de capacidade direcionadas permanecem inutilizadas.
Depois que os nós centrais são provisionados, a zona de disponibilidade é selecionada e corrigida. A Amazon EMR provisiona os nós de tarefas em grupos de instâncias com reservas de capacidade direcionadas, começando primeiro com os de menor preço, na zona de disponibilidade selecionada, até que todos os nós da tarefa sejam provisionados. A Amazon EMR tenta primeiro usar as reservas de capacidade direcionada disponíveis em cada pool de instâncias na zona de disponibilidade selecionada. Então, somente se necessário, a Amazon EMR usa a estratégia de menor preço para provisionar quaisquer nós de tarefas restantes.
A seguir estão os casos de uso da lógica de alocação de EMR capacidade da Amazon para usar primeiro as reservas de capacidade direcionadas.
Exemplo 1: O grupo de instâncias com reservas de capacidade direcionada disponíveis na solicitação de inicialização tem capacidade suficiente para os nós centrais
Nesse caso, a Amazon EMR lança capacidade no pool de instâncias com reservas de capacidade direcionadas disponíveis, independentemente do preço do pool de instâncias. Como resultado, as reservas de capacidade direcionada são usadas sempre que possível, até que todos os nós centrais sejam provisionados.
Estratégia sob demanda | preço mais baixo | ||
Estratégia de uso | use-capacity-reservations-first | ||
Capacidade solicitada | 100 | ||
Tipo de instância | c5.xlarge | m5.xlarge | r5.xlarge |
Reservas de capacidade direcionada disponíveis | - | - | 150 |
Preço sob demanda | $ | $$ | $$$ |
Instâncias provisionadas | - | - | 100 |
---|---|---|---|
Reserva de capacidade direcionada utilizada | - | - | 100 |
Reservas de capacidade direcionada disponíveis | - | - | 50 |
exemplo Exemplo 2: o grupo de instâncias com reservas de capacidade direcionada disponíveis na solicitação de inicialização não tem capacidade suficiente para os nós centrais
Estratégia sob demanda | preço mais baixo | ||
Capacidade solicitada | 100 | ||
Estratégia de uso | use-capacity-reservations-first | ||
Tipo de instância | c5.xlarge | m5.xlarge | r5.xlarge |
Reservas de capacidade direcionada disponíveis | 10 | 50 | 50 |
Preço sob demanda | $ | $$ | $$$ |
Instâncias provisionadas | 100 | - | - |
---|---|---|---|
Reservas de capacidade direcionada utilizadas | 10 | - | - |
Reservas de capacidade direcionada disponíveis | - | 50 | 50 |
Depois que a frota de instâncias for iniciada, você poderá executar describe-capacity-reservations
para ver quantas reservas de capacidade não utilizadas restam.
Configurar frotas de instâncias para usar primeiro reservas de capacidade direcionada
Ao usar a ação RunJobFlow
para criar um cluster baseado em frota de instâncias, defina a estratégia de alocação sob demanda como lowest-price
, UsageStrategy
de CapacityReservationOptions
como use-capacity-reservations-first
e CapacityReservationResourceGroupArn
de CapacityReservationOptions
como <your resource group
ARN>
. Para obter mais informações, consulte Trabalhar com reservas de capacidade no Guia EC2 do usuário da Amazon.
"LaunchSpecifications": {"OnDemandSpecification": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "UsageStrategy": "use-capacity-reservations-first", "CapacityReservationResourceGroupArn": "arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup" } } }
Onde arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup
é substituído pelo seu grupo de recursosARN.
Você também pode usar a Amazon EMR CLI para criar um cluster baseado em frota de instâncias usando reservas de capacidade direcionadas.
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}}'}
Onde,
-
Substitui-se
targeted-CR-cluster
pelo nome do cluster usando reservas de capacidade direcionadas. -
Substitui-se
subnet-22XXXX01
pelo ID da sub-rede. -
arn:aws:resource-groups:sa-east-1:123456789012:group/MyCRGroup
é substituído pelo seu grupo de recursosARN.
Evitar usar reservas de capacidade aberta disponíveis
Se você quiser evitar o uso inesperado de qualquer uma de suas reservas de capacidade aberta ao lançar um EMR cluster da Amazon, defina a estratégia de alocação sob demanda para e paralowest-price
. CapacityReservationPreference
CapacityReservationOptions
none
Caso contrário, a Amazon EMR padronizará a preferência de reserva de capacidade da instância sob demanda open
e tentará usar as reservas de capacidade aberta disponíveis com base no melhor esforço.
"LaunchSpecifications": {"OnDemandSpecification": { "AllocationStrategy": "lowest-price", "CapacityReservationOptions": { "CapacityReservationPreference": "none" } } }
Você também pode usar a Amazon EMR CLI para criar um cluster baseado em frota de instâncias sem usar nenhuma reserva de capacidade aberta.
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}}'}
Onde,
-
Substitui-se
none-CR-cluster
pelo nome do cluster que não está usando reservas de capacidade abertas. -
Substitui-se
subnet-22XXXX01
pelo ID da sub-rede.
Cenários para o uso de reservas de capacidade
Você pode se beneficiar do uso de reservas de capacidade nos cenários a seguir.
Cenário 1: alternar um cluster de execução prolongada usando reservas de capacidade
Ao alternar um cluster de execução prolongada, você poderá ter requisitos rígidos sobre os tipos de instância e as zonas de disponibilidade das novas instâncias provisionadas. Com as reservas de capacidade, você pode usar a garantia de capacidade para concluir a alternância do cluster sem interrupções.
![Alternância de clusters usando reservas de capacidade disponíveis](images/odcr-longrunning-cluster-diagram.png)
Cenário 2: provisionar clusters sucessivos de curta duração usando reservas de capacidade
Também é possível usar reservas de capacidade para provisionar um grupo de clusters sucessivos e de curta duração para workloads individuais, de forma que, ao encerrar um cluster, o próximo cluster possa usar as reservas de capacidade. Você pode usar reservas de capacidade direcionadas para garantir que apenas os clusters pretendidos usem as reservas de capacidade.
![Provisionamento de cluster de curta duração que utiliza reservas de capacidade disponíveis](images/odcr-short-cluster-diagram.png)