Puedes usar Google Cloud Hyperdisk y Persistent Disk volúmenes como discos de arranque y discos de datos para instancias de Compute Engine.
En este documento, se explica cómo completar las siguientes tareas:
Convierte un disco a un tipo diferente de Persistent Disk o Hyperdisk mediante la creación de un disco nuevo que contenga los datos del disco original. Según el tipo de disco nuevo que elijas, puedes obtener los siguientes beneficios:
- Alcanzar niveles de rendimiento más altos si eliges un tipo de disco más rápido
- Reducir los costos si eliges un tipo de disco más rentable
Configura si Compute Engine borra los discos de arranque o de datos de una instancia de procesamiento cuando borras la instancia. Generas costos por un disco hasta que lo borras, incluso si el disco no está conectado a ninguna instancia. Puedes reducir los costos si habilitas el borrado automático de los discos que no necesitarás después de que se borre la instancia conectada.
Actualiza el modo de acceso de un volumen de Hyperdisk para habilitar o inhabilitar el acceso al volumen desde varias instancias de Compute Engine.
Para cambiar el tamaño de un volumen de Hyperdisk o Persistent Disk, consulta Modifica el tamaño o el rendimiento aprovisionado de un volumen de Hyperdisk y Modifica el tamaño de un Persistent Disk, respectivamente.
Cambia el tipo de un volumen de Persistent Disk
A veces, debes cambiar el tipo de un volumen de Persistent Disk en particular para satisfacer tus requisitos de rendimiento o precios. Por ejemplo, es posible que desees cambiar el disco de datos de una carga de trabajo de un disco persistente estándar a un Persistent Disk balanceado.
No puedes cambiar directamente el tipo de un volumen de Persistent Disk existente. Debes crear una instantánea del disco existente y, luego, usar esa instantánea para crear un disco del tipo nuevo.
Para cambiar un volumen de Persistent Disk (el disco de origen) a otro tipo de Persistent Disk (el disco nuevo), sigue este proceso:
Si el disco de origen está conectado a una instancia de procesamiento, detén la instancia.
Crea una instantánea del disco de origen.
Crea el disco nuevo a partir de la instantánea del disco de origen.
Para comenzar a usar el disco nuevo, desconecta el disco de origen de la instancia y conecta el disco nuevo que acabas de crear.
Si el disco de origen es un disco de arranque, haz lo siguiente:
Si el disco de origen no es un disco de arranque, haz lo siguiente:
Verifica que el disco nuevo funcione según lo previsto.
Después de probar el disco nuevo, puedes borrar la instantánea y borrar el disco de origen. Seguirás generando cargos por el disco de origen y la instantánea hasta que los borres.
Modifica la configuración de eliminación automática de un disco
Para evitar la pérdida accidental de datos, puedes controlar si Compute Engine borra automáticamente alguno de los volúmenes de Google Cloud Hyperdisk o Persistent Disk que están conectados a una instancia cuando borras la instancia. Los discos SSD locales siempre se borran con la instancia.
La propiedad autoDelete de cada volumen de Google Cloud Hyperdisk o Persistent Disk que está conectado a la instancia controla este comportamiento.
Para conservar un volumen específico cuando borras la instancia, establece la propiedad autoDelete del volumen en false. Por el contrario, para borrar un volumen cuando borras la instancia, establece la propiedad autoDelete en true.
No puedes borrar automáticamente un disco si está conectado a la instancia en modo de solo lectura.
Console
En la Google Cloud consola de, ve a la página Instancias de VM.
Selecciona la instancia que tiene los discos asociados.
Haga clic en el nombre de la instancia. Aparecerá la página Detalles de instancia de VM.
Haz clic en Editar.
Para actualizar la configuración de eliminación automática de tus discos, en la sección Almacenamiento, sigue estos pasos:
- Para el disco de arranque, en el encabezado Disco de arranque, selecciona la Regla de eliminación del disco de arranque.
- Para cada disco adicional conectado a la instancia, busca el disco en la sección Discos adicionales y, luego, sigue estos pasos:
- Haz clic en Editar disco. Se abrirá el panel Disco existente.
- En Modo de conexión , establece la Regla de eliminación del disco. Para guardar la configuración del disco y cerrar el panel, haz clic en Guardar.
Para guardar los cambios, haz clic en Guardar.
gcloud
Establece el estado de eliminación automática de un disco con el
gcloud compute instances set-disk-auto-delete comando.
Para conservar el disco cuando borras la instancia, especifica la marca --no-auto-delete. Para borrar el disco, especifica la marca --auto-delete.
Si la instancia tiene varios discos conectados, debes ejecutar el comando para cada disco conectado a la instancia.
gcloud compute instances set-disk-auto-delete INSTANCE_NAME \ AUTO_DELETE_SETTING \ --disk DISK_NAME
Reemplaza lo siguiente:
INSTANCE_NAME: El nombre de la instancia.AUTO_DELETE_SETTING: Indica si se debe borrar automáticamente el disco. Especifica--no-auto-deletepara conservar el disco después de borrar la instancia de procesamiento y--auto-deletepara borrar el disco al mismo tiempo que la instancia.DISK_NAME: el nombre del disco.
Ir
Antes de probar esta muestra, sigue las instrucciones de configuración de Go en la Guía de inicio rápido de Compute Engine: Usa las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Go de Compute Engine.
Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Antes de probar esta muestra, sigue las instrucciones de configuración de Java en la Guía de inicio rápido de Compute Engine: Usa las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Java de Compute Engine.
Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Antes de probar esta muestra, sigue las instrucciones de configuración de Node.js en la Guía de inicio rápido de Compute Engine: Usa las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Node.js de Compute Engine.
Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Antes de probar esta muestra, sigue las instrucciones de configuración de Python en la Guía de inicio rápido de Compute Engine: Usa las bibliotecas cliente. Si quieres obtener más información, consulta la documentación de referencia de la API de Python de Compute Engine.
Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
REST
Para establecer el estado de eliminación automática con la API, realiza una solicitud POST al método instances.setDiskAutoDelete. Usa el parámetro autoDelete para indicar si se debe borrar el disco.
Si la instancia tiene varios discos conectados, debes realizar una solicitud para cada disco conectado a la instancia.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/setDiskAutoDelete?deviceName=DISK_NAME,autoDelete=AUTO_DELETE_OPTION
Reemplaza lo siguiente:
PROJECT_ID: el ID de tu proyecto.ZONE: la zona en la que se encuentran la instancia y el disco.INSTANCE_NAME: el nombre de tu instanciaDISK_NAME: Es el nombre del disco conectado a la instancia.AUTO_DELETE_OPTION: Indica si se debe borrar automáticamente el disco cuando borras la instancia. Para borrar el disco, configúralo comotrue. Establecefalsepara conservar el disco después de borrar la instancia.
Modo de acceso para volúmenes de Hyperdisk
Para compartir un volumen de Hyperdisk entre varias instancias y otorgar a cada instancia acceso de lectura y escritura o de solo lectura simultáneo al volumen, debes establecer el modo de acceso del volumen en modo de solo lectura o de varios escritores, respectivamente.
Por otro lado, para realizar ciertas acciones, como crear una imagen, en un volumen de Hyperdisk que está en modo de solo lectura o de varios escritores, debes establecer su modo de acceso en un solo escritor.
En esta sección, se describe cómo establecer el modo de acceso de un disco.
Para obtener más información sobre el uso compartido de discos, consulta Comparte discos entre instancias.
Limitaciones para los cambios en el modo de acceso
No puedes establecer el modo de acceso de un disco a menos que lo desconectes de todas las instancias.
Los volúmenes de Hyperdisk Throughput solo admiten el modo de un solo escritor y no puedes establecer el modo de acceso para un volumen de Hyperdisk Throughput.
En el caso de los volúmenes de Hyperdisk balanceado, Hyperdisk extremo y Hyperdisk balanceado de alta disponibilidad, solo puedes habilitar o inhabilitar el modo de varios escritores. No puedes establecer el modo de acceso en solo lectura.
En el caso de los volúmenes de Hyperdisk ML, solo puedes establecer el modo de acceso en solo lectura. Los volúmenes de Hyperdisk ML no admiten el modo de varios escritores.
No puedes modificar el modo de acceso de un volumen de Hyperdisk ML después de establecerlo en solo lectura.
Roles y permisos requeridos
Para obtener el permiso que necesitas para establecer el modo de acceso de un disco, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto:
- Administrador de instancias de Compute (v1) (
roles/compute.instanceAdmin.v1) -
Para conectarte a una VM que puede ejecutarse como una cuenta de servicio:
Usuario de cuenta de servicio (v1) (
roles/iam.serviceAccountUser)
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene el
compute.disks.update
permiso,
que es necesario para
establecer el modo de acceso de un disco.
También puedes obtener este permiso con roles personalizados o otros roles predefinidos.
Establece el modo de acceso de un volumen de Hyperdisk
Antes de establecer el modo de acceso de un disco, debes desconectarlo de todas las instancias.
Puedes establecer el modo de acceso con la Google Cloud consola de , Google Cloud CLI o REST.
Console
En la Google Cloud consola de, ve a la página Discos.
En la lista de discos de tu proyecto, haz clic en el nombre del volumen de Hyperdisk que deseas modificar.
En la página de detalles del disco, haz clic en Editar.
En el campo Modo de acceso, selecciona el modo de acceso que desees:
- Para habilitar el modo de solo lectura, selecciona Varias VMs de solo lectura.
- Para habilitar el modo de varios escritores, selecciona Varias VMs de lectura y escritura.
- (Predeterminado) Para habilitar el modo de un solo escritor, selecciona Lectura y escritura en una sola VM.
Para aplicar los cambios, haz clic en Guardar.
gcloud
Ejecuta el comando disks update
y especifica el modo de acceso con la marca --access-mode.
gcloud compute disks update DISK_NAME \ --access-mode=DISK_ACCESS_MODE
Reemplaza lo siguiente:
- DISK_NAME: el nombre del volumen de Hyperdisk que se modifica.
- DISK_ACCESS_MODE: cómo las instancias pueden acceder a los datos del disco.
Los valores admitidos son los siguientes:
READ_ONLY_MANY, para el acceso de solo lectura desde varias instancias.READ_WRITE_MANY, para el acceso de lectura y escritura desde varias instancias.- (Predeterminado)
READ_WRITE_SINGLE, para el acceso de lectura y escritura desde una instancia.
REST
Realiza una solicitud PATCH al
compute.disks.update método.
En el cuerpo de la solicitud, establece el modo de acceso incluyendo el parámetro accessMode.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/update
{
"accessMode": "DISK_ACCESS_MODE"
}
Reemplaza lo siguiente:
PROJECT_ID: el ID de tu proyecto.ZONE: la zona en la que se encuentra el volumen de hiperdisco.DISK_NAME: el nombre del volumen de Hyperdisk que se modificará.DISK_ACCESS_MODE: cómo las instancias pueden acceder a los datos del disco. Los valores admitidos son los siguientes:READ_ONLY_MANY, para el acceso de solo lectura desde varias instancias.READ_WRITE_MANY, para el acceso de lectura y escritura desde varias instancias.READ_WRITE_SINGLE, para el modo de un solo escritor, es decir, el acceso de lectura y escritura desde una instancia.
Soluciona problemas
A fin de encontrar métodos para diagnosticar y resolver problemas relacionados con los discos completos y el cambio de tamaño de los discos, consulta Soluciona problemas de discos completos y cambio de tamaño de disco.
¿Qué sigue?
- Obtén información para crear una copia de seguridad de tus discos mediante instantáneas de forma periódica a fin de evitar la pérdida involuntaria de datos.
- Usa discos persistentes regionales para la replicación síncrona entre dos zonas.
- Adjunta un disco RAM a tu instancia.