# Instancias spot

> Servidores cloud de sobra, alquilados muy baratos pero que te pueden sacar con poco aviso.

- Nivel: Intermedio
- Temas: Cloud, AWS
- URL: https://tidbit.legios.com.ar/es/spot-instances/
- En inglés: [Spot instances](https://tidbit.legios.com.ar/spot-instances/)

Los proveedores cloud tienen muchos más servidores de los que usan en cada momento, para poder darle capacidad a quien la pida. Las **instancias spot** son la forma de alquilar esa capacidad ociosa: las mismas máquinas virtuales de siempre, con un descuento grande y una condición. Cuando el proveedor necesita esa capacidad para un cliente que paga precio completo, la recupera, y tu máquina se detiene o se apaga.

En AWS, EC2 Spot puede costar hasta alrededor de un 90% menos que el precio on-demand normal, y el precio se mueve despacio según la oferta y la demanda de cada tipo de instancia y zona de disponibilidad. Antes de una interrupción recibís un aviso de dos minutos, que tu software puede leer para guardar lo que estaba haciendo. Google Cloud (Spot VMs) y Azure (Spot Virtual Machines) ofrecen la misma idea con sus propias reglas.

Spot sirve para trabajos que se pueden pausar, reintentar o partir: procesamiento por lotes, renderizado, análisis de datos, builds de CI/CD, entrenamientos con checkpoints o servidores web sin estado detrás de un load balancer con suficientes copias. No sirve para una base de datos única ni para nada que no se pueda cortar. El patrón común es mezclar: una base de capacidad normal o reservada para lo que tiene que seguir andando, y spot encima para el resto, repartido entre varios tipos de instancia para que un faltante no se lleve todo junto.

## Una analogía

Como volar en lista de espera: pagás mucho menos por un asiento vacío, pero si aparece un pasajero con pasaje completo, te bajás del avión.

## Para quedarse

- Las mismas máquinas, mucho más baratas, pero te las pueden pedir de vuelta.
- En AWS te avisan dos minutos antes de una interrupción.
- Ideales para procesos por lotes, builds y todo lo que pueda reiniciarse.
- Combinalas con instancias normales y repartilas entre tipos de instancia.

## Para seguir leyendo

- [Instancias de spot (documentación de Amazon EC2)](https://docs.aws.amazon.com/es_es/AWSEC2/latest/UserGuide/using-spot-instances.html)
- [Instancias de spot de Amazon EC2](https://aws.amazon.com/es/ec2/spot/)
- [Spot VMs (documentación de Google Cloud, en inglés)](https://cloud.google.com/compute/docs/instances/spot)

## Términos relacionados

- [Servidor](https://tidbit.legios.com.ar/es/server/): Una computadora cuyo trabajo es responder pedidos de otras computadoras, todo el día.
- [Máquina virtual](https://tidbit.legios.com.ar/es/virtual-machine/): Una computadora completa hecha de software, que corre adentro de una real.
- [Regiones y zonas de disponibilidad](https://tidbit.legios.com.ar/es/regions-and-availability-zones/): Dónde vive AWS físicamente: ciudades del mundo, cada una con varios centros de datos.
- [Google Cloud](https://tidbit.legios.com.ar/es/google-cloud/): El negocio de nube de Google: cómputo, almacenamiento, datos e IA que se pagan por uso.
- [Microsoft](https://tidbit.legios.com.ar/es/microsoft/): La empresa de Windows y Office, que hoy es igual de importante como nube con Azure.
- [Procesamiento batch](https://tidbit.legios.com.ar/es/batch-processing/): Juntar datos durante un rato y después procesarlos todos de una sola vez.
- [CI/CD](https://tidbit.legios.com.ar/es/ci-cd/): Automatización que construye, prueba y publica cada cambio, para que lanzar sea rutina.
- [Stateless y stateful](https://tidbit.legios.com.ar/es/stateless-and-stateful/): Si un programa recuerda cosas entre un pedido y otro, o guarda esa memoria en otro lado.
