AWS

8 out, 2015

Nova Opção Spot Fleet – Distribua a sua frota através de múltiplos Pools de Capacidade

Publicidade

Semana passada eu falei para um público técnico na Pacific Northwest PHP ConferenceComo parte da minha palestra, eu descrevi a computação em nuvem como uma mistura de tecnologia e negócios, e fiz isso falando sobre Instâncias Spot. A plateia parecia um pouco confusa no início, mas a medida que expliquei mais, pude ver seus olhos se iluminarem quando eles começaram a pensar nas maneiras com que eles poderiam economizar dinheiro para as suas empresas por meio de codificação criativa!

No início deste ano, escrevi sobre a API do Spot Fleet, e mostrei como usá-lo para gerenciar milhares de instâncias Spot com uma única função RequestSpotFleet. Hoje estamos introduzindo uma nova opção de estratégia de alocação” para essa API. Esta opção permite que você crie um Spot fleet que contém instâncias retiradas de vários pools de capacidade (um conjunto de instâncias de um determinado tipo, dentro de uma determinada região e zona de disponibilidade).

Como parte de sua chamada para a  RequestSpotFleet, você pode incluir até 20 especificações de lançamento. Se você fizer um pedido não direcionado (não especificando uma zona de disponibilidade ou uma sub-rede), você pode segmentar vários pools de capacidade dentro de uma região AWS. Isto dá-lhe acesso a uma grande quantidade de capacidade EC2, e permite que você configure as frotas que sejam um bom negocio para a sua aplicação.

Você pode definir a estratégia de alocação para um dos seguintes valores:

  • lowestPriceEsta é a estratégia padrão. Ele irá resultar em um Spot fleet que contém instâncias do(s) pool(s) de menor preçoespecificado(s) em seu pedido;
  • diversifiedEsta é a nova estratégia, e ela deve ser especificada como parte da sua solicitação. Ela irá resultar em um Spot fleet que contém instâncias retiradas de todos os pools especificados em seu pedido, com exceção daqueles em que o preço do Spot atual está acima do preço On-Demand.

Esta opção permite que você escolha a estratégia que mais se aproxima dos seus objetivos para cada Spot fleet. A seguinte tabela pode ser utilizada como um guia:

lowestPrice diversified
Tamanho do fleet Bom para fleets de tamanho moderados. No entanto, um pedido de um grande fleet pode afetar os preços no pool com o menor preço. Funciona bem para fleets maiores.
Custo operacional total do fleet
Pode ser inesperadamente elevado se os preços dos poolsatingirem picos. Pode atingir valores médios de 70%-80% no On-Demand ao longo do tempo.
Consequência daCapacidade Flutuaçãoem um Pool Todo o fleet está sujeito a possível interrupção e reposição subsequente. Parte do fleet (1/N da capacidade total) sem prejuízo da eventual interrupção e reposição subsequente.
Características da Aplicação Short-running.
Insensível ao tempo.
Long-running.
Sensível ao tempo.
Aplicações típicas Simulações científicas, cálculos de pesquisa. Transcodificação, servidores web dirigidos ao cliente, HPC, CI / CD.

Se você cria um fleet usando a estratégia diversified e usá-la para hospedar seus servidores web, é uma boa ideia selecionar vários pools para ter uma opção de recurso no caso de todos eles se tornarem indisponíveis.

A alocação diversificada funciona muito bem em conjunto com o novo recurso de licitações orientadas ao recurso que nós lançamos no mês passado. Quando você usa o recurso de licitação orientada e especifica uma alocação diversificada, cada um dos pools de capacidade em sua especificação de lançamento irá incluir o mesmo número de unidades de capacidade.

Para fazer uso desta nova estratégia, basta incluí-la em seu CLI ou pedido orientado à API. Se você estiver usando o CLI, basta adicionar a seguinte entrada ao seu arquivo de configuração:

"AllocationStrategy": "diversified"

Se você estiver usando a API, especifique o mesmo valor em seu SpotFleetRequestConfigData.

Estas opções já estão disponíveis e você já pode começar a usá-las.