Las instantáneas de discos persistentes se pueden crear en cualquier momento, pero las crearás con mayor rapidez y confiabilidad si usas las siguientes prácticas recomendadas.
Antes de comenzar
- Si deseas usar los ejemplos de línea de comandos en esta guía, haz lo siguiente:
- Instala la herramienta de línea de comandos de gcloud o actualízala a la última versión.
- Configura una región y una zona predeterminadas.
- Si deseas usar los ejemplos de API de esta guía, configura el acceso a la API.
- Obtén información sobre los discos persistentes.
Prepara el disco persistente para obtener una mayor coherencia en las instantáneas
En la mayoría de las situaciones, puedes crear una instantánea desde los discos persistentes. Además, incluso si tus apps escriben datos en esos discos, puedes esperar que la instantánea tenga una buena coherencia. La calidad de la instantánea depende de la capacidad de tus apps para recuperarse de las instantáneas que creas durante las cargas de trabajo de escritura con mucho contenido.
Si tus aplicaciones necesitan una coherencia estricta, puede seguir los pasos siguientes para asegurarte de que una instantánea sea coherente con el estado deseado del disco persistente.
Vacía los búferes del disco antes de una instantánea
Puedes crear una instantánea de un disco persistente incluso cuando tus apps escriben datos en el disco. Sin embargo, puedes mejorar la coherencia de la instantánea si vacías los búferes del disco y sincronizas tu sistema de archivos antes de crear una instantánea.
Pausa las apps o los procesos del sistema operativo que escriben datos en ese disco persistente. Luego, vacía los búferes del disco antes de crear la instantánea.
Si quieres preparar tu disco persistente antes de tomar una instantánea, haz lo siguiente:
- Conéctate a tu instancia con SSH.
- Realiza una limpieza de la app en el disco. Por ejemplo, MySQL tiene una declaración
FLUSH
. Usa cualquier herramienta que esté disponible para tu aplicación. - Evita que tus apps escriban en el disco persistente.
- Ejecuta
sudo sync
.
Si omites este paso, solo se incluirán en la instantánea los datos que la app haya vaciado del disco de forma correcta. Para la aplicación, esa situación se asemeja a una pérdida de energía.
Inmoviliza o desactiva tu sistema de archivos
Una alternativa es inmovilizar o desactivar el sistema de archivos antes de tomar una instantánea. Esta es la manera más confiable de garantizar que se borren los búferes del disco, pero tarda más tiempo y no es tan conveniente como solo vaciarlos.
Desactiva el disco persistente por completo para asegurarte de que no se escriban datos mientras creas la instantánea. Por lo general, esto no es necesario, pero mejora la coherencia de la instantánea.
- Conéctate a tu instancia con SSH.
- Detén cualquier app que lea o escriba datos en el disco persistente.
Inmoviliza o desactiva el sistema de archivos.
- Para inmovilizarlo, ejecuta este comando:
sudo fsfreeze -f [example-disk_location]
- Para desactivarlo, ejecuta este comando:
sudo umount [example-disk_location]
Puedes desbloquear o activar el sistema de archivos después de completar tu instantánea:
- Para desbloquearlo, ejecuta este comando:
sudo fsfreeze -u [example-disk_location]
- Para activarlo, ejecuta este comando:
sudo mount [example-disk_location mount_location]
- Para inmovilizarlo, ejecuta este comando:
Usuarios de Linux
Si tu disco está conectado a una instancia de Linux, desconecta el disco de la instancia, conéctate a tu instancia y usa la herramienta umount
:
sudo umount /dev/disk/by-id/google-[DISK_NAME]
En el ejemplo anterior, [DISK_NAME]
es el nombre del disco persistente.
Usuarios de Windows
Si tu disco está conectado a una instancia de Windows, puedes desactivar el disco de la instancia si te conectas a tu instancia y usas la herramienta Administración de discos.
Vuelve a activar el disco persistente
Una vez tomada la instantánea, debes volver a activar el disco persistente. Consulta Formatea y activa un disco persistente para obtener más información.
Si tus apps necesitan coherencia entre varios discos persistentes, debes inmovilizar o desactivar todos los sistemas de archivos en cada disco y completar todas las instantáneas de esos discos antes de reanudar tus apps. Compute Engine no garantiza la coherencia entre las instantáneas simultáneas que se ejecutan en varios discos persistentes.
Usa los sistemas de archivos de registro diario, como ext4
, para reducir el riesgo de que los datos se almacenen en caché sin escribirse en el disco persistente.
Discos persistentes con instancias de Windows Server
Para los discos persistentes que están conectados a instancias de Windows Server, usa las instantáneas de VSS para preservar la integridad de los datos.
Crea instantáneas frecuentes de manera eficaz
Usa instantáneas para administrar tus datos de manera eficaz.
Crea una instantánea de tus datos de forma periódica para minimizar la pérdida de datos debido a una falla inesperada.
Mejora el rendimiento mediante la eliminación de las descargas de instantáneas excesivas, además de la creación y el uso repetido de una imagen.
Configura la programación de instantáneas en las horas de menor demanda para reducir el tiempo de la instantánea.
Límites de frecuencia de las instantáneas
Crea instantáneas a partir de discos persistentes
Puedes generar instantáneas de tus discos una vez cada 10 minutos, como máximo. Si deseas generar una ráfaga de solicitudes para crear una instantánea del disco, puedes emitir como máximo 6 solicitudes en 60 minutos.
Si se excede el límite, la operación falla y se muestra el siguiente error:
"code": "RESOURCE_OPERATION_RATE_EXCEEDED",
"message": "Operation rate exceeded for resource 'projects/project-id/zones/zone-id/disks/disk-name'. Too frequent operations from the source resource."
Este límite se aplica a las siguientes operaciones:
Este límite no se aplica a las siguientes operaciones:
- Creación de instantáneas programadas. Las instantáneas programadas tienen consideraciones de frecuencia diferentes y no contribuyen al límite de frecuencia de instantáneas
- Importación de imágenes de disco de arranque de forma manual
Como práctica recomendada, toma una instantánea del disco una vez por hora. Evita tomar instantáneas con mayor frecuencia. La forma más fácil de lograrlo es configurar una programación de instantáneas.
Crea discos persistentes zonales nuevos a partir de instantáneas
Puedes crear un disco persistente zonal nuevo a partir de una instantánea determinada una vez cada diez minutos. La zona de destino hace referencia a la ubicación de almacenamiento del disco persistente nuevo creado a partir de la instantánea. Google no garantiza que puedas crear discos a partir de una instantánea a una velocidad mayor, aunque es posible que puedas crear discos con mayor frecuencia si no creaste discos a partir de la instantánea en la última hora.
Ten en cuenta que varias instantáneas de los mismos discos persistentes se consideran instantáneas distintas con respecto a este límite de frecuencia.
Si se excede este límite, la operación falla y se muestra el siguiente error:
"code": "RESOURCE_OPERATION_RATE_EXCEEDED",
"message": "Operation rate exceeded for resource 'projects/project-id/zones/zone-id/disks/disk-name'. Too frequent operations from the source resource."
Este límite se aplica a las siguientes operaciones:
Este límite no se aplica a las siguientes operaciones:
- Creación de discos persistentes regionales nuevos a partir de una instantánea
- Creación de discos persistentes zonales o regionales nuevos mediante una imagen como fuente
En lugar de restablecer varias veces una instantánea en la misma zona para crear muchos discos persistentes, ahorra tiempo y costos de red mediante la creación de una imagen a partir de la instantánea y úsala para crear tus discos:
- Crea una imagen a partir de la instantánea.
- Crea discos persistentes a partir de la imagen.
En Google Cloud Console, selecciona Imagen como el Tipo de fuente del disco. Con la herramienta de
gcloud
, usa la marcaimage
. En la API, usa el parámetrosourceImage
.
Usa las instantáneas existentes como modelo de referencia para las instantáneas posteriores
Si tienes instantáneas existentes de un disco persistente, el sistema las usará de forma automática como modelo de referencia para cualquier instantánea posterior que crees desde ese mismo disco.
Crea una instantánea nueva desde un disco persistente antes de borrar la instantánea anterior del mismo disco persistente. El sistema puede crear la instantánea más rápido si puede usar la instantánea anterior y leer únicamente los datos nuevos o modificados del disco persistente.
Espera a que finalicen las instantáneas nuevas antes de tomar más instantáneas del mismo disco persistente. Si ejecutas dos instantáneas en simultáneo en el mismo disco persistente, ambas comenzarán desde el mismo modelo de referencia y duplicarán el esfuerzo. Si esperas hasta que la instantánea nueva finalice, las instantáneas posteriores se ejecutarán más rápido, ya que solo necesitan obtener los datos que cambiaron desde que finalizó la última instantánea.
Programa instantáneas durante las horas de menor demanda
Si programas instantáneas habituales para tus discos persistentes, puedes reducir el tiempo que se toma en completar cada instantánea, si las creas durante las horas de menor demanda siempre que sea posible.
- Programa instantáneas automáticas durante el día hábil en la zona en la que se encuentra tu disco persistente. Por lo general, la creación de instantáneas alcanza su punto máximo de demanda al final del día hábil.
- Programa instantáneas automáticas a primera hora de la mañana en la zona en la que se encuentra tu disco persistente, en lugar de hacerlo de inmediato a la medianoche. Por lo general, la creación de instantáneas alcanza su punto máximo de demanda a la medianoche.
Organiza tus datos en discos persistentes distintos
Si creas una instantánea de un disco persistente, los datos que almacenes en el disco se incluirán en la instantánea. Las cantidades grandes de datos crean instantáneas más grandes, que cuestan más y toman más tiempo en crearse. Si quieres asegurarte de crear una instantánea con solo los datos que necesitas, organiza tus datos en discos persistentes distintos.
- Almacena los datos críticos en un disco persistente secundario en lugar de en tu disco de arranque. Esto te permite crear una instantánea de tus discos de arranque solo cuando sea necesario o con menos frecuencia.
- Si creas instantáneas de tus discos de arranque, almacena las particiones de intercambio, los archivos de paginación, los archivos de caché y los registros no críticos en un disco persistente distinto. Estos archivos y particiones cambian con frecuencia y es probable que el proceso de instantánea los identifique como datos modificados que deben incluirse en una instantánea incremental.
- Puedes reducir la cantidad de instantáneas que necesitas crear si mantienes juntos datos similares en un disco persistente. Mantén el sistema operativo y los datos volátiles separados de los datos a partir de los cuales quieres realizar una instantánea, pero no necesitas distribuir tus datos críticos en varios discos persistentes como lo harías en una máquina física. Un disco persistente grande puede lograr el mismo rendimiento que varios discos persistentes más pequeños del mismo tamaño total.
Habilita la opción discard
o ejecuta fstrim
en tu disco persistente
En instancias de Linux, si no formateaste ni activaste tu disco persistente con la opción discard
, ejecuta el comando fstrim
en la instancia antes de crear una instantánea. El comando quita los bloques que el sistema de archivos ya no necesita, de modo que el sistema puede crear la instantánea con más rapidez y con un tamaño más pequeño. Consulta formatea y activa un disco persistente para aprender a configurar la opción discard
en tus discos persistentes.
¿Qué sigue?
- Obtén más información sobre cómo trabajar con instantáneas.