

# Tutorial: configurar o EC2 Fleet para usar ponderação de instâncias
<a name="ec2-fleet-instance-weighting-walkthrough"></a>

Este tutorial usa uma empresa fictícia chamada Example Corp para ilustrar o processo de solicitação de uma Frota do EC2 usando o peso da instância.

## Objetivo
<a name="ec2-fleet-instance-weighting-walkthrough-objective"></a>

A Exemplo Corp, uma empresa farmacêutica, quer usar a capacidade computacional do Amazon EC2 para fazer a triagem dos compostos químicos que podem ser usados para combater o câncer.

## Planejamento
<a name="ec2-fleet-instance-weighting-walkthrough-planning"></a>

Primeiro, a Exemplo Corp analisa as [Melhores práticas de spot](https://aws.amazon.com/ec2/spot/getting-started/#bestpractices). Em seguida, a Exemplo Corp determina os requisitos para a Frota do EC2.

**Tipos de instância**  
A Exemplo Corp tem uma aplicação de uso intenso de memória e recursos de computação que funciona melhor com, pelo menos, 60 GB de memória e oito CPUs virtuais (vCPUs). Eles querem maximizar esses recursos para a aplicação com o menor preço possível. A Exemplo Corp decide que qualquer um dos seguintes tipos de instância do EC2 atenderá às suas necessidades:


| Tipo de instância | Memória (GiB) | vCPUs | 
| --- | --- | --- | 
| r3.2xlarge | 61 | 8 | 
| r3.4xlarge | 122 | 16 | 
| r3.8xlarge | 244 | 32 | 

**Capacidade de destino em unidades**  
Com o peso da instância, a capacidade de destino pode igualar um número de instâncias (o padrão) ou uma combinação de fatores, como núcleos (vCPUs), memória (GiB) e armazenamento (GB). Considerando a base para sua aplicação (60 GB de RAM e oito vCPUs) como uma unidade, a Exemplo Corp decide que 20 vezes essa quantidade atenderá às suas necessidades. Então, a empresa define a capacidade de destino da solicitação do EC2 Fleet como 20 unidades.

**Pesos das instâncias**  
Depois de determinar a capacidade de destino, a Exemplo Corp calcula os pesos das instâncias. Para calcular o peso para cada tipo de instância, eles determinam as unidades de cada tipo de instância que são necessárias para atingir a capacidade de destino da seguinte forma:
+ r3.2xlarge (61,0 GB, 8 vCPUs) = 1 unidade de 20
+ r3.4xlarge (122,0 GB, 16 vCPUs) = 2 unidades de 20
+ r3.8xlarge (244,0 GB, 32 vCPUs) = 4 unidades de 20

Portanto, a Exemplo Corp atribui os pesos de instância 1, 2 e 4 às respectivas configurações de execução na solicitação de Frota do EC2.

**Preço por hora**  
A Exemplo Corp usa o [Preço sob demanda](https://aws.amazon.com/ec2/pricing/) por hora de instância como o ponto inicial de preço. Eles também podem usar os preços spot recentes ou uma combinação dos dois. Para calcular o preço por hora, eles dividem o preço inicial por hora de instância pelo peso. Por exemplo:


| Tipo de instância | Preço sob demanda | Peso da instância | Preço por hora | 
| --- | --- | --- | --- | 
| r3.2xLarge | 0,7 USD | 1 | 0,7 USD | 
| r3.4xLarge | 1,4 USD | 2 | 0,7 USD | 
| r3.8xLarge | $2,8 | 4 | 0,7 USD | 

A Exemplo Corp pode usar um preço global por hora de 0,7 USD e ser competitiva para todos os três tipos de instância. Eles também podem usar um preço global por hora de 0,7 USD e um preço específico por hora de 0,9 USD na especificação de execução `r3.8xlarge`.

## Verificar permissões
<a name="ec2-fleet-instance-weighting-walkthrough-permissions"></a>

Antes de criar uma Frota do EC2, a Exemplo Corp verifica se ela tem uma função do IAM com as permissões necessárias. Para obter mais informações, consulte [Pré-requisitos da Frota do EC2](ec2-fleet-prerequisites.md).

## Criar um modelo de execução
<a name="ec2-fleet-instance-weighting-create-launch-template"></a>

Em seguida, a Exemplo Corp cria um modelo de execução. O ID do modelo de execução é usado na próxima etapa. Para obter mais informações, consulte [Criar um modelo de execução do Amazon EC2](create-launch-template.md).

## Criar a Frota do EC2
<a name="ec2-fleet-instance-weighting-walkthrough-request"></a>

A Example Corp cria um arquivo, `config.json`, com a seguinte configuração para sua Frota do EC2: No exemplo a seguir, substitua os identificadores de recursos pelos seus identificadores de recursos.

```
{ 
    "LaunchTemplateConfigs": [
        {
            "LaunchTemplateSpecification": {
                "LaunchTemplateId": "lt-07b3bc7625cdab851", 
                "Version": "1"
            }, 
            "Overrides": [
                {
                    "InstanceType": "r3.2xlarge", 
                    "SubnetId": "subnet-482e4972", 
                    "WeightedCapacity": 1
                },
                {
                    "InstanceType": "r3.4xlarge", 
                    "SubnetId": "subnet-482e4972", 
                    "WeightedCapacity": 2
                },
                {
                    "InstanceType": "r3.8xlarge", 
                    "MaxPrice": "0.90", 
                    "SubnetId": "subnet-482e4972", 
                    "WeightedCapacity": 4
                }
            ]
        }
    ], 
    "TargetCapacitySpecification": {
        "TotalTargetCapacity": 20, 
        "DefaultTargetCapacityType": "spot"
    }
}
```

A Example Corp cria a Frota do EC2 usando o seguinte comando [create-fleet](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-fleet.html):

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

Para obter mais informações, consulte [Criar uma Frota do EC2.](create-ec2-fleet.md).

## Atendimento
<a name="ec2-fleet-instance-weighting-walkthrough-fulfillment"></a>

A estratégia de alocação determina de quais grupos de capacidade spot os Instâncias spot procedem.

Com a estratégia `lowest-price` (que é uma estratégia padrão), as Instâncias spot vêm do grupo com o menor preço spot por unidade no momento do atendimento. Para fornecer 20 unidades de capacidade, a Frota do EC2 executa 20 instâncias `r3.2xlarge` (20 dividido por 1), 10 instâncias `r3.4xlarge` (20 dividido por 2) ou 5 instâncias `r3.8xlarge` (20 dividido por 4).

Se a Exemplo Corp usasse a estratégia `diversified`, as Instâncias spot viriam dos três grupos. A Frota do EC2 executaria seis instâncias `r3.2xlarge` (que fornecem 6 unidades), três instâncias `r3.4xlarge` (que fornecem 6 unidades), duas instâncias `r3.8xlarge` (que fornecem 8 unidades), totalizando 20 unidades.