En este documento, se explica cómo detener o reiniciar de forma manual una instancia de Compute Engine. Como alternativa, para automatizar el momento en que se detiene o reinicia una instancia de procesamiento, consulta lo siguiente:
Programa una instancia de procesamiento para que se inicie y se detenga
Limita el entorno de ejecución de una instancia de procesamiento
Es posible detener una instancia de procesamiento de forma manual. Después de que se completa una operación de detención y el estado de la instancia de procesamiento cambia a TERMINATED, puedes reiniciar la instancia de procesamiento para reanudar tu carga de trabajo o borrarla de forma permanente si ya no la necesitas. Detener una instancia de procesamiento de forma manual es útil cuando deseas hacer lo siguiente:
Ahorra costos mientras mantienes tus parámetros de configuración: ya no quieres ejecutar cargas de trabajo en la instancia de procesamiento. Sin embargo, quieres conservar la instancia de procesamiento y sus discos conectados, los parámetros de configuración, las direcciones IP, las direcciones MAC y los metadatos. Si también necesitas retener los datos en la memoria y el estado de la aplicación, suspende la instancia de procesamiento.
Actualizar propiedades: Deseas modificar una o más propiedades que requieren que detengas y reinicies la instancia de procesamiento antes de que los cambios puedan surtir efecto; por ejemplo, deseas cambiar el tipo de máquina o desconectar un disco. Para obtener más información, consulta Propiedades que puedes actualizar.
Limitaciones
Cuando detienes una instancia de procesamiento, se aplican las siguientes limitaciones:
Solo puedes detener o reiniciar una instancia de procesamiento si el estado de la instancia de procesamiento lo permite.
Solo puedes reiniciar una instancia de procesamiento si hay recursos suficientes en la zona en la que existe.
No puedes reiniciar las instancias de procesamiento de TPU. Después de detener las instancias de procesamiento de TPU, solo puedes borrarlas.
Antes de comenzar
-
Si aún no lo hiciste, configura la autenticación.
La autenticación verifica tu identidad para acceder a los servicios y las APIs de Cloud de Confiance by S3NS . Para ejecutar
código o muestras desde un entorno de desarrollo local, puedes autenticarte en
Compute Engine seleccionando una de las siguientes opciones:
Selecciona la pestaña según cómo planeas usar las muestras de esta página:
Console
Cuando usas la consola de Cloud de Confiance para acceder a los servicios y las APIs de Cloud de Confiance by S3NS , no necesitas configurar la autenticación.
gcloud
-
Instala Google Cloud CLI y, luego, accede a gcloud CLI con tu identidad federada. Después de acceder, inicializa Google Cloud CLI con el siguiente comando:
gcloud init
-
- Configura una región y una zona predeterminadas.
-
Instala Google Cloud CLI.
-
Configura gcloud CLI para usar tu identidad federada.
Para obtener más información, consulta Accede a gcloud CLI con tu identidad federada.
-
Crea credenciales de autenticación locales para tu cuenta de usuario:
gcloud auth application-default login
Si se devuelve un error de autenticación, confirma que accediste a gcloud CLI con tu identidad federada.
-
Instala Google Cloud CLI.
-
Configura gcloud CLI para usar tu identidad federada.
Para obtener más información, consulta Accede a gcloud CLI con tu identidad federada.
-
Crea credenciales de autenticación locales para tu cuenta de usuario:
gcloud auth application-default login
Si se devuelve un error de autenticación, confirma que accediste a gcloud CLI con tu identidad federada.
-
Instala Google Cloud CLI.
-
Configura gcloud CLI para usar tu identidad federada.
Para obtener más información, consulta Accede a gcloud CLI con tu identidad federada.
-
Crea credenciales de autenticación locales para tu cuenta de usuario:
gcloud auth application-default login
Si se devuelve un error de autenticación, confirma que accediste a gcloud CLI con tu identidad federada.
-
Instala Google Cloud CLI.
-
Configura gcloud CLI para usar tu identidad federada.
Para obtener más información, consulta Accede a gcloud CLI con tu identidad federada.
-
Crea credenciales de autenticación locales para tu cuenta de usuario:
gcloud auth application-default login
Si se devuelve un error de autenticación, confirma que accediste a gcloud CLI con tu identidad federada.
-
Instala Google Cloud CLI.
-
Configura gcloud CLI para usar tu identidad federada.
Para obtener más información, consulta Accede a gcloud CLI con tu identidad federada.
-
Crea credenciales de autenticación locales para tu cuenta de usuario:
gcloud auth application-default login
Si se devuelve un error de autenticación, confirma que accediste a gcloud CLI con tu identidad federada.
Go
Para usar las muestras de Go de esta página en un entorno de desarrollo local, instala e inicializa gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para usar las muestras de Java de esta página en un entorno de desarrollo local, instala e inicializa gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para usar las muestras de Node.js de esta página en un entorno de desarrollo local, instala e inicializa gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para usar las muestras de PHP de esta página en un entorno de desarrollo local, instala e inicializa gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para usar las muestras de Python de esta página en un entorno de desarrollo local, instala e inicializa gcloud CLI y, luego, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Instala Google Cloud CLI y, luego, accede a gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de Cloud de Confiance .
Roles obligatorios
Para obtener los permisos que
necesitas para detener o reiniciar una instancia de procesamiento,
pídele a tu administrador que te otorgue el rol de IAM
Administrador de instancias de Compute (v1) (roles/compute.instanceAdmin.v1) en el proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para detener o reiniciar una instancia de procesamiento. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para detener o reiniciar una instancia de procesamiento:
-
Para detener una instancia de procesamiento, usa
compute.instances.stopen la instancia de procesamiento. -
Para detener una instancia de procesamiento desde el SO invitado:
compute.instances.setMetadataen la instancia de procesamiento si usa claves SSH públicas a nivel de instancia. -
Para reiniciar una instancia de procesamiento, usa
compute.instances.starten la instancia de procesamiento. -
Para reiniciar una instancia de procesamiento que usa claves de encriptación:
compute.instances.startWithEncryptionKeyen la instancia de procesamiento
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Detén una instancia de procesamiento
Para detener tu instancia de procesamiento, usa uno de los siguientes métodos. El mejor enfoque para tu caso de uso depende de si tienes discos SSD locales conectados a tu instancia de procesamiento y de cómo deseas controlar las secuencias de comandos de cierre:
Detén una instancia de procesamiento desde Cloud de Confiance. Puedes detener una o más instancias de procesamiento de forma simultánea desde Cloud de Confiance. Si las instancias de procesamiento tienen discos SSD locales conectados, puedes elegir si deseas descartar o conservar (versión preliminar) los datos de las SSD locales. Cualquier secuencia de comandos de cierre en la instancia de procesamiento debe terminar de ejecutarse antes de que se detenga la instancia de procesamiento. Para obtener instrucciones, consulta uno de los siguientes vínculos:
Detén una instancia de procesamiento desde el SO invitado. Este enfoque garantiza que las secuencias de comandos de apagado terminen de ejecutarse antes de que se detenga la instancia de procesamiento. Si habilitaste el cierre ordenado, puedes omitirlo o finalizarlo. Sin embargo, si detienes una instancia de procesamiento desde el SO invitado, se descartan los datos de los discos SSD locales conectados, a menos que primero crees una copia de seguridad de los datos en un almacenamiento persistente. Para obtener instrucciones, consulta Detén una instancia de procesamiento desde el SO invitado.
Detén una instancia de procesamiento sin discos SSD locales
Para detener una instancia de procesamiento que no tiene discos SSD locales conectados, revisa las siguientes opciones:
Si habilitaste el cierre ordenado en la instancia de procesamiento, puedes omitir o finalizar un cierre ordenado en curso para ahorrar costos. Para ello, usa la consola de Cloud de Confiance , gcloud CLI o la API de REST.
Para detener varias instancias de procesamiento de forma simultánea, usa la consola deCloud de Confiance o, para las instancias de procesamiento que existen en la misma zona, gcloud CLI.
Para detener una o más instancias de procesamiento, selecciona una de las siguientes opciones:
Console
En la consola de Cloud de Confiance , ve a la página Instancias de VM.
Selecciona las instancias de procesamiento en ejecución que deseas detener.
Haz clic en Detener. Si no hay una opción Detener, haz clic en Más acciones y, luego, selecciona Detener.
En el cuadro de diálogo que aparece, haz lo siguiente:
Opcional: Para detener las instancias de procesamiento sin cerrarlas de forma ordenada o para finalizar un cierre ordenado en curso, selecciona la casilla de verificación Omitir el cierre ordenado (si corresponde).
Para confirmar la acción, haz clic en Detener.
gcloud
Para detener una o más instancias de procesamiento que existen en la misma zona, usa el
comando gcloud compute instances stop:
gcloud compute instances stop INSTANCE_NAMES \
--zone=ZONE
Reemplaza lo siguiente:
INSTANCE_NAMES: Es una lista de nombres de instancias de procesamiento que deseas detener, separados por espacios. Por ejemplo, especificainstance-01 instance-02 instance-03.ZONE: Es la zona en la que existen las instancias de procesamiento.
Si quieres omitir o finalizar un cierre ordenado en curso, usa el mismo
comando con la marca --no-graceful-shutdown:
gcloud compute instances stop INSTANCE_NAMES \
--no-graceful-shutdown \
--zone=ZONE
Go
Java
Node.js
PHP
Python
REST
Para detener una instancia de procesamiento, realiza una solicitud POST al
método instances.stop:
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop
Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento.PROJECT_ID: Es el ID del proyecto en el que existe la instancia de procesamiento.ZONE: Es la zona en la que existe la instancia de procesamiento.
Si deseas omitir o finalizar un cierre ordenado en curso, incluye el parámetro de consulta noGracefulShutdown=true en la URL de la solicitud:
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop?noGracefulShutdown=true
Detén una instancia de procesamiento con discos SSD locales
El mejor método para detener una instancia de procesamiento que tiene discos SSD locales conectados depende de tu caso de uso. Usa una de las siguientes opciones:
Si habilitaste el cierre ordenado en una instancia de procesamiento, puedes omitir o finalizar un cierre ordenado en curso para ahorrar costos. Para ello, usa la consola de Cloud de Confiance , gcloud CLI o la API de REST.
Para conservar los datos de SSD locales (excepto los tipos de máquinas que usan Titanium SSD), usa gcloud CLI o la API de REST.
Para detener varias instancias de procesamiento de forma simultánea, usa la consola deCloud de Confiance o, para las instancias de procesamiento que existen en la misma zona, gcloud CLI.
Para detener una o más instancias de procesamiento que tienen discos SSD locales conectados, selecciona una de las siguientes opciones:
Console
En la consola de Cloud de Confiance , ve a la página Instancias de VM.
Selecciona las instancias de procesamiento en ejecución que deseas detener.
Haz clic en Detener. Si no hay una opción Detener, haz clic en Más acciones y, luego, selecciona Detener.
En el cuadro de diálogo que aparece, haz lo siguiente:
Opcional: Para detener las instancias de procesamiento sin cerrarlas de forma ordenada o finalizar un cierre ordenado en curso, selecciona la casilla de verificación Omitir el cierre ordenado (si corresponde).
Para confirmar la acción, haz clic en Detener.
gcloud
Cuando detengas una o más instancias de procesamiento en la misma zona que tengan discos SSD locales conectados, especifica si deseas descartar o conservar los datos de SSD locales de la siguiente manera:
Para descartar los datos de SSD local, usa el comando
gcloud compute instances stopcon la marca--discard-local-ssd=true:gcloud compute instances stop INSTANCE_NAMES \ --discard-local-ssd=true \ --zone=ZONEPara conservar los datos de SSD local, usa el comando
gcloud beta compute instances stopcon la marca--discard-local-ssd=false:gcloud beta compute instances stop INSTANCE_NAMES \ --discard-local-ssd=false \ --zone=ZONE
Reemplaza lo siguiente:
INSTANCE_NAMES: Es una lista de nombres de instancias de procesamiento que deseas detener, separados por espacios. Por ejemplo, especificainstance-01 instance-02 instance-03.ZONE: Es la zona en la que existen las instancias de procesamiento.
Si deseas omitir o finalizar un cierre ordenado en curso, incluye la
marca --no-graceful-shutdown en el comando:
gcloud compute instances stop INSTANCE_NAMES \
--discard-local-ssd=DISCARD_LOCAL_SSD \
--no-graceful-shutdown \
--zone=ZONE
Reemplaza DISCARD_LOCAL_SSD por true para descartar los datos
en los discos SSD locales o false para conservarlos. Si especificas
false, debes usar el
comando gcloud beta compute instances stop.
REST
Cuando detengas una o más instancias de procesamiento en la misma zona que tengan discos SSD locales conectados, especifica si deseas descartar o conservar los datos de SSD locales de la siguiente manera:
Para descartar los datos de SSD local, realiza una solicitud
POSTal métodoinstances.stop. En la URL de la solicitud, incluye el parámetro de consultadiscardLocalSsdconfigurado comotrue:POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop?discardLocalSsd=truePara conservar los datos de SSD locales, realiza una solicitud
POSTal métodobeta.instances.stop. En la URL de la solicitud, incluye el parámetro de consultadiscardLocalSsdconfigurado comofalse:POST https://compute.s3nsapis.fr/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop?discardLocalSsd=false
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto en el que existe la instancia de procesamiento.ZONE: Es la zona en la que existe la instancia de procesamiento.INSTANCE_NAME: Es el nombre de la instancia de procesamiento.
Si deseas omitir o finalizar un cierre ordenado en curso, incluye el parámetro de consulta noGracefulShutdown=true en la URL de la solicitud:
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop?discardLocalSsd=DISCARD_LOCAL_SSD&noGracefulShutdown=true
Reemplaza DISCARD_LOCAL_SSD por true para descartar los datos
en los discos SSD locales o false para conservarlos. Si especificas
false, debes realizar una solicitud POST al
método beta.instances.stop.
Detén una instancia de procesamiento desde el SO invitado
Si una instancia de procesamiento tiene discos SSD locales conectados, el cierre del SO invitado descarta automáticamente los datos de la SSD local. Para conservar estos datos, cópialos manualmente en una opción de almacenamiento persistente antes de detener la instancia de procesamiento.
Para detener una instancia de procesamiento desde el SO invitado, selecciona una de las siguientes opciones:
Linux
Si aún no lo hiciste, conéctate a la instancia de procesamiento.
Para detener la instancia de procesamiento desde su SO invitado, selecciona uno de los siguientes métodos:
Para cerrar de forma ordenada el SO invitado solo después de que se hayan ejecutado todas las secuencias de comandos de cierre, ejecuta el siguiente comando:
sudo shutdown -h nowPara forzar el apagado del SO invitado, ejecuta el siguiente comando:
sudo poweroff
Windows
Si aún no lo hiciste, conéctate a la instancia de procesamiento con uno de los siguientes métodos:
Para detener la instancia de procesamiento desde su SO invitado, selecciona uno de los siguientes métodos:
Para cerrar de forma ordenada el SO invitado solo después de que se hayan ejecutado todas las secuencias de comandos de cierre, ejecuta el siguiente comando:
shutdown /sPara forzar el apagado del SO invitado, ejecuta el siguiente comando:
shutdown /f
Reinicia una instancia de procesamiento
Puedes reiniciar una instancia de procesamiento que se detuvo por completo, es decir, cuando
el estado de la instancia de procesamiento es TERMINATED. Si elegiste conservar los datos de las SSD locales
cuando detuviste la instancia de procesamiento, es posible que debas volver a activar los
discos SSD locales después de reiniciar la instancia de procesamiento. Para obtener más información,
consulta
Da formato a un dispositivo SSD local y actívalo.
Para reiniciar una instancia de procesamiento, usa uno de los siguientes métodos. El mejor método para tu caso de uso depende de si la instancia de procesamiento tiene discos que se encriptaron con claves de encriptación proporcionadas por el cliente (CSEK):
Reinicia una instancia de procesamiento que no tenga discos encriptados con CSEK
Reinicia una instancia de procesamiento con discos encriptados con CSEK
Reinicia una instancia de procesamiento que no tenga discos encriptados con CSEK
Para reiniciar varias instancias de procesamiento de forma simultánea en diferentes zonas, usa la consola de Cloud de Confiance . Para las instancias de procesamiento que existen en la misma zona, puedes usar gcloud CLI. De lo contrario, para otras situaciones de reinicio, selecciona una de las siguientes opciones:
Console
En la consola de Cloud de Confiance , ve a la página Instancias de VM.
Selecciona las instancias de procesamiento que quieres reiniciar.
Haz clic en Iniciar/Reanudar.
gcloud
Para reiniciar una o más instancias de procesamiento que existen en la misma zona, usa
el
comando gcloud compute instances start:
gcloud compute instances start INSTANCE_NAMES \
--zone=ZONE
Reemplaza lo siguiente:
INSTANCE_NAMES: Es una lista de nombres de instancias de procesamiento que deseas reiniciar, separados por espacios. Por ejemplo, especificainstance-01 instance-02 instance-03.ZONE: Es la zona en la que existen las instancias de procesamiento.
Go
Java
Node.js
PHP
Python
REST
Para reiniciar una instancia de procesamiento, realiza una solicitud POST al
método instances.start:
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/start
Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento.PROJECT_ID: Es el ID del proyecto en el que existe la instancia de procesamiento.ZONE: Es la zona en la que existe la instancia de procesamiento.
Reinicia una instancia de procesamiento con discos encriptados con CSEK
Cuando reinicias una instancia de procesamiento detenida que tiene discos conectados que se encriptaron con claves de encriptación proporcionadas por el cliente, debes proporcionar la información de la clave de encriptación.
Para reiniciar varias instancias de procesamiento de forma simultánea en diferentes zonas, usa la consola de Cloud de Confiance . Para las instancias de procesamiento que existen en la misma zona, puedes usar gcloud CLI. De lo contrario, para otras situaciones de reinicio, selecciona una de las siguientes opciones:
Console
En la consola de Cloud de Confiance , ve a la página Instancias de VM.
Selecciona las instancias de procesamiento que quieres reiniciar.
Haz clic en Iniciar/Reanudar.
En el cuadro de diálogo que aparece, haz lo siguiente:
Especifica las claves de encriptación para cada uno de los discos encriptados que están conectados a las instancias de procesamiento.
Haz clic en Iniciar.
gcloud
Para reiniciar una o más instancias de procesamiento que usan discos encriptados que existen
en la misma zona, usa el
comando gcloud compute instances start
con la marca --csek-key-file. Si usas una clave unida con RSA, usa el
comando gcloud beta compute instances start
con la marca --csek-key-file en su lugar:
gcloud compute instances start INSTANCE_NAMES \
--csek-key-file=ENCRYPTION_KEY_FILE \
--zone=ZONE
Reemplaza lo siguiente:
INSTANCE_NAMES: Es una lista de nombres de instancias de procesamiento que deseas reiniciar, separados por espacios. Por ejemplo, especificainstance-01 instance-02 instance-03.ENCRYPTION_KEY_FILE: Es la ruta de acceso relativa al archivo JSON que contiene la clave de encriptación proporcionada por el cliente. Solo puedes reiniciar varias instancias de procesamiento de forma simultánea si estas usan la misma clave de encriptación proporcionada por el cliente. El formato del archivo se describe en Formato del archivo de claves.ZONE: Es la zona en la que existen las instancias de procesamiento.
Go
Java
Node.js
PHP
Python
REST
Para reiniciar una instancia de procesamiento que usa discos encriptados, realiza una solicitud POST
al
método instances.startWithEncryptionKey:
POST https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/startWithEncryptionKey
{
"disks": [
{
"source": "DISK_URL",
"diskEncryptionKey": {
"ENCRYPTION_TYPE": "ENCRYPTION_KEY"
}
}
]
}
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto en el que existe la instancia de procesamiento.ZONE: Es la zona en la que existe la instancia de procesamiento.INSTANCE_NAME: Es el nombre de la instancia de procesamiento.DISK_URL: Es la URL del recurso que corresponde al nombre del recurso completo del disco adjunto que se encripta con una clave de encriptación proporcionada por el cliente.ENCRYPTION_TYPE: el tipo de encriptación del disco que usas, que puede ser una de las siguientes opciones:rawKey,kmsKeyNameorsaEncryptedKey. Si usas el tiporsaEncryptedKey, realiza una solicitudPOSTal métodobeta.instances.startWithEncryptionKey.ENCRYPTION_KEY: Es la clave de encriptación que se usa para encriptar los discos persistentes conectados a la instancia de procesamiento. Las clavesrawKeyorsaEncryptedKeydeben estar codificadas en base64. Además, para preparar una claversaEncryptedKey, consulta Unión de clave RSA.