A partir de 1 de abril de 2025, a Equinix Metal decidiu encerrar o serviço do Spot Market em June 20th, 2025 Converta suas instâncias ativas do Spot Market para sob demanda o mais rápido possível.
O Mercado Spot
O mercado Spot do Equinix Metal™ permite que os usuários licitem capacidade de servidor ociosa a preços reduzidos. Em troca, você concede ao Equinix Metal o direito de revogar qualquer instância com apenas dois minutos de aviso. Se você tem uma carga de trabalho portátil, o mercado Spot é uma excelente ferramenta para você a reduzir seus custos.
Como funciona o mercado à vista?
O mercado spot é um mercado com estoque em constante mudança. Você pode dar lances nesse estoque definindo uma variedade de fatores, como o preço máximo que você disposto a pagar por um determinado recurso, número e tipo de servidores, se você que todo ou parte do pedido seja atendido em um determinado momento, etc.
Por exemplo, você pode provisionar cinco instâncias com o preço máximo que você pagar por hora por instância. Se o seu preço for igual ou superior ao preço spot atual para a área metropolitana e o plano em questão, as instâncias serão criadas para você.
Essas instâncias são voláteis, o que significa que podem ser revogadas pela Equinix Metal a qualquer momento se outro usuário oferecer um preço mais alto. Se a sua instância for revogada, ela terá um tempo de encerramento de pelo menos dois minutos.
Preços de mercado atuais e históricos
O preço de mercado atual reflete o preço que você precisa especificar para implantar uma única instância neste momento. Se o preço de mercado à vista listado for 10 vezes o preço padrão para um servidor desse tipo, então estamos sem capacidade para instâncias de mercado à vista naquele local.
O endpoint /market/spot/prices fornecerá os preços atuais para cada área metropolitana e plano Equinix Metal .
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' \
https://api.equinix.com/metal/v1/market/spot/prices
Para ver o histórico de preços de um local e servidor específicos, o endpoint /market/spot/prices/history?plan&metro permitirá que você verifique os preços do mercado spot dos últimos 90 dias.
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' \
https://api.equinix.com/metal/v1/market/spot/prices/history?plan&metro
Estratégias de Licitação
Embora sua estratégia de lance específica dependa inteiramente de você, a maioria dos usuários adota uma dessas estratégias de lance com base em seu caso de uso:
Otimização rigorosa de custos - Sacrifique a disponibilidade para obter o maior desconto possível. Isso é ótimo para cargas de trabalho de longa duração com datas de término flexíveis.
- Caso de uso: tarefas no estilo de pesquisa
- Lance sugerido: próximo ao mínimo
Equilíbrio Custo/Disponibilidade - Preço ligeiramente superior ao otimizado estritamente em termos de custo, mas você aumentar a probabilidade de obter e manter uma instância por períodos de tempo mais longos.
- Caso de uso: trabalhos em lote que podem alça com alguma quantidade de recuperação
- Lance sugerido: 10-20% acima do mínimo
Preço sob Demanda - Receba um desconto sempre que o preço à vista for menor que o preço sob demanda, passando imediatamente para o preço sob demanda quando este subir.
- Caso de uso: aplicativos totalmente nativos da cloud capazes de mover facilmente cargas de trabalho
- Lance sugerido: preço sob demanda
Otimize a Continuidade - Faça lances muito altos para garantir disponibilidade e continuidade.
- Caso de uso: aceitar alguns períodos de preços mais altos do que o mercado em troca da continuidade do disponibilidade
- Lance sugerido: 2x-3x preço sob demanda
Criando uma solicitação de mercado spot
Para fazer uma solicitar de mercado spot, envie uma solicitar POST para o endpoint /projects/{id}/spot-market-requests. No corpo da solicitar, defina os detalhes da sua solicitar.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/{id}/spot-market-requests" \
-d '{
"devices_max": <integer>,
"devices_min": <integer>,
"max_bid_price": <float>,
"metro": "<metro_slug>",
"instance_parameters": {
"hostname": "<string>",
"plan": "<plan_slug>",
"operating_system": "<os_slug>"
}
}'
Parâmetros corporais -
devices_max(required) - The maximum number of devices to provision to fill this request.devices_min(required) - The minimum number of devices to provision to fill this request.max_bid_price(required) -end_at(optional) - Set an expiration for the spot market request with date and UTC time of expiration in ISO8601 format.instance_parameters(required) - Configuration for the requested devices. Theinstance parametersobject must containhostname,plan,operating_system, andmetro.
instance_parameters também pode conter qualquer um dos outros campos usados para provisionar e configurar servidores por meio da API. Uma lista completa desses campos está na referência da API para o endpoint /projects/{id}/spot-market-requests.
Gerenciando seus dispositivos de mercado spot
Para obter uma lista de todos os seus dispositivos spot market, envie uma solicitar GET para o endpoint /projects/{id}/devices, filtrando por tipo de dispositivo .
curl -X GET -H "X-Auth-Token: <API_TOKEN>" \
https://api.equinix.com/metal/v1/projects/{id}/devices?type=spot
Os dispositivos do mercado spot podem ser atualizados através da API enviando uma solicitar PUT para o endpoint /devices/{id}. Inclua os campos que deseja atualizar no corpo da solicitar. Nenhum dos campos é obrigatório e todos podem ser atualizados independentemente.
curl -X PUT \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/devices/{id}" \
-d '{
"description": "<string>",
"hostname": "<string>",
"always_pxe": <boolean>,
"ipxe_script_url": "<string>",
"locked": <boolean>,
"spot_instance": <boolean>,
"tags": [
"<string>"
],
"userdata": "<string>"
}'
Uma lista completa dos campos e suas descrições está disponível na Referência da API .
Convertendo um servidor Spot Market para On Demand
Se você tiver um servidor de mercado spot que você manter, você usar a API para convertê-lo em um servidor sob demanda. Uma vez que se torne um servidor sob demanda, ele não estará sujeito a encerramento e será cobrado pelo preço sob demanda pelo resto de sua existência.
que servidores marcados para encerramento não são elegíveis para conversão. Você deve converter seu servidor de mercado spot para sob demanda ANTES de ele ser selecionado para encerramento.
Para converter, envie uma solicitar PUT para o endpoint /devices/{id} com o corpo da solicitar contendo o área metropolitana onde o servidor reside e "spot_instance": false.
curl -X PUT \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/devices/{id}" \
-d '{
"spot_instance": false
}'
Término do Mercado Spot
O encerramento de servidores do mercado spot ocorre quando o seu preço máximo de lance está abaixo do preço spot atual ou se a demanda por servidores aumentou e o seu dispositivo tem o menor preço de todas as instâncias do mercado spot. Um servidor marcado para encerramento tem 120 segundos antes de ser removido.
O tempo de término está disponível na API ou nos metadados do servidor.
Para determinar o horário de término de um servidor, envie uma solicitar GET para o endpoint /devices/{id}.
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' \
https://api.equinix.com/metal/v1/devices/{id}
O campo termination_time contém a hora UTC no formato ISO8601 em que a instância será encerrada. Se a resposta for null, indica que nenhum horário de encerramento foi definido.
Você também pode obter uma lista de todos os dispositivos em um projeto e suas informações do endpoint /projects/{id}/devices.
Para consultar o próprio servidor sobre o horário de término, você pode usar o cURL para seus metadados. No próprio servidor, execute:
curl -s https://metadata.platformequinix.com/metadata
A resposta conterá uma data/hora de término ou será null.
Excluindo uma solicitação de mercado à vista
Para excluir uma solicitar, envie um DELETE para o endpoint /spot-market-requests/{id}.
curl -X DELETE -H 'X-Auth-Token: <API_TOKEN>' \
https://api.equinix.com/metal/v1//spot-market-requests/{id}
Se você também quiser excluir os servidores provisionados pela solicitar, envie force_termination=true como parâmetro de consulta.
curl -X DELETE -H 'X-Auth-Token: <API_TOKEN>' \
https://api.equinix.com/metal/v1/spot-market-requests/{id}?force_termination=true