Iniciar, detener y destruir
Las tres acciones
| Acción | Se ofrece cuando la instancia está en | Qué hace | Suele tardar | Reversible |
|---|---|---|---|---|
| Detener | running | apaga el contenedor, conserva el disco, mantiene la ranura de GPU | unos segundos | sí, con Iniciar |
| Iniciar | stopped | vuelve a levantar el mismo contenedor en la misma máquina y el mismo disco | unos segundos | sí, con Detener |
| Destruir | cualquier estado salvo destroyed, incluidos creating, starting y stopping | elimina el contenedor, borra el disco, devuelve la GPU al mercado | unos segundos | no |
Lea Detener frente a destruir antes de usar la tercera. Es la decisión que determina si conserva sus datos y si sigue pagando, y aquí no se repite.
Dónde están los botones
Cada fila de Instancias lleva las acciones que aplican al estado actual de esa instancia, y el mismo conjunto aparece en el encabezado de la página de detalle de la instancia. Los botones que no aplican no se muestran: no hay Iniciar en una instancia en ejecución ni Detener en una detenida. Destruir sigue disponible mientras una instancia todavía se está creando, iniciando o deteniendo, así que una instancia atascada en uno de esos estados nunca queda fuera de su alcance. La consola toma esta lista de allowed_actions de la API.
Detener y Destruir piden confirmación primero. El diálogo de detención dice lo que cuesta la detención: las GPU siguen reservadas para usted, así que la instancia puede volver a arrancar enseguida, y mientras está detenida solo paga el almacenamiento. También dice qué pasa con las GPU si su saldo se agota. Mientras una disputa de pago tenga congelados los pagos de la organización, dice en cambio que esta detención libera las GPU, donde la máquina lo permite. El diálogo de destrucción detalla lo que está a punto de eliminarse. Iniciar no pregunta.
Qué ocurre después de hacer clic
Ninguna de las tres es instantánea. La instancia pasa a un estado de transición, la insignia parpadea y la consola consulta periódicamente hasta que la máquina responde:
| Usted hizo clic en | Estado mientras trabaja | Estado al terminar |
|---|---|---|
| Detener | stopping | stopped |
| Iniciar | starting | running |
| Destruir | destroying | destroyed |
Mientras una instancia está en un estado de transición no acepta ninguna acción salvo Destruir. Solicitar otra de todos modos devuelve 409 INVALID_STATE con un mensaje que nombra el estado que lo bloqueó, por ejemplo Cannot stop an instance while it is creating. Espere a que la transición termine e inténtelo de nuevo. El mapa completo de qué estado puede pasar a cuál está en Estados de la instancia.
Una transición que el host nunca confirma no deja la instancia atascada. A los 30 minutos, una detención que no se ha completado devuelve la instancia a running —el contenedor sigue activo, así que vuelve a facturar la GPU— y sigue reintentando la detención. Un inicio que no se ha completado la devuelve a stopped. La página de la instancia dice entonces La última acción no se completó y por qué, y en la API el error_code de la instancia indica stop_timed_out o start_timed_out.
Volver a iniciar
Un inicio necesita créditos: el saldo de su organización tiene que cubrir una hora de todo lo que tendría entonces en marcha —la GPU y el disco de esta instancia, más la GPU y el disco de cada otra instancia en ejecución, iniciándose o en creación, y el disco de cada una detenida—, no solo estar por encima de cero. Si no la cubre, el inicio se rechaza con 402 INSUFFICIENT_BALANCE y no le pasa nada a la instancia: agregue créditos primero. Los cargos de almacenamiento acumulados mientras la instancia estuvo detenida se liquidan en el momento en que la inicia, así que el saldo que ve después contempla todo el periodo de detención.
El host también tiene que aceptar el inicio. Si no puede, la instancia sigue stopped con su disco, y el inicio se rechaza:
| Respuesta | Qué ocurrió | Qué hacer |
|---|---|---|
409 CAPACITY_UNAVAILABLE | Las GPU de la instancia se liberaron —su saldo llegó a cero, o una disputa de pago congeló los pagos— y otro cliente está usando una de ellas ahora. La página de la instancia mostraba GPU liberadas antes de que pulsara Iniciar | Inténtelo de nuevo más tarde. Si no puede esperar, copie sus datos y destruya la instancia |
409 HOST_UNREACHABLE | La máquina en la que vive su instancia no está conectada en este momento | Iníciela de nuevo más tarde |
409 START_REFUSED | El host rechazó reanudar la instancia, o ya no conserva su carga de trabajo | Inténtelo de nuevo más tarde. Si sigue ocurriendo —o el mensaje de la API dice que el host ya no conserva la carga de trabajo—, destruya la instancia y vuelva a desplegar |
503 START_UNAVAILABLE | La reanudación no pudo completarse en este momento | Inténtelo de nuevo en breve. Si la reanudación terminó llegando, la instancia pasa a running por su cuenta |
Un inicio también puede aceptarse y fallar después en la máquina. La instancia vuelve a stopped por su cuenta, con su disco, y la página de la instancia explica por qué bajo La última acción no se completó: gpus_unavailable cuando las GPU liberadas resultaron estar ocupadas.
Un inicio lo devuelve a la misma máquina con el mismo disco. Sin embargo, los datos de conexión se reasignan, así que vuelva a copiar el comando SSH en lugar de reutilizar el anterior. Consulte Conectarse por SSH.
Una instancia en error
Una instancia que no logró levantarse, cuya carga de trabajo falló o se perdió, o cuyo trabajo terminó queda en error. No se puede iniciar ni detener. La única acción disponible es Destruir. Lea Qué salió mal en la página de la instancia, que explica el error_code de la instancia, y los logs para averiguar más, luego destrúyala y despliegue de nuevo. Si la plataforma encuentra la carga de trabajo en ejecución o retenida después de todo, devuelve la instancia a running o stopped por su cuenta.
Desde la API
Estos ejemplos usan $SUPERHEAT_API y $SUPERHEAT_KEY; defínelos como se
indica en la descripción general de la API.
curl -X POST -H "Authorization: Bearer $SUPERHEAT_KEY" \
$SUPERHEAT_API/v1/instances/$INSTANCE_ID/stop
curl -X POST -H "Authorization: Bearer $SUPERHEAT_KEY" \
$SUPERHEAT_API/v1/instances/$INSTANCE_ID/start
curl -X DELETE -H "Authorization: Bearer $SUPERHEAT_KEY" \
$SUPERHEAT_API/v1/instances/$INSTANCE_ID
Cada una devuelve la instancia en su nuevo estado de transición. Consulte GET /v1/instances/{id} periódicamente para ver cuándo termina. Consulte Instancias.
Acciones que la plataforma toma por usted
Dos de estas tres se ejecutan solas cuando una organización se queda sin dinero:
| Saldo | Qué ocurre |
|---|---|
| llega a $0 | las instancias en ejecución se detienen, y las instancias detenidas liberan sus GPU donde la máquina lo permite; los discos se conservan |
| en $0 o por debajo durante 24 horas, y en −$5 o por debajo | las instancias detenidas y en error se destruyen; los discos se eliminan |
Consulte Detención y destrucción automáticas.