ES2653698T3 - Copia de seguridad de máquina virtual a partir de una instantánea de almacenamiento - Google Patents
Copia de seguridad de máquina virtual a partir de una instantánea de almacenamiento Download PDFInfo
- Publication number
- ES2653698T3 ES2653698T3 ES14771616.1T ES14771616T ES2653698T3 ES 2653698 T3 ES2653698 T3 ES 2653698T3 ES 14771616 T ES14771616 T ES 14771616T ES 2653698 T3 ES2653698 T3 ES 2653698T3
- Authority
- ES
- Spain
- Prior art keywords
- snapshot
- backup
- hardware
- processor
- software
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1438—Restarting or rejuvenating
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking using middleware or operating system [OS] functionalities
- G06F11/1484—Generic software techniques for error detection or fault masking using middleware or operating system [OS] functionalities involving virtual machines
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0664—Virtualisation aspects at device level, e.g. emulation of a storage device or system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
Abstract
Un procedimiento que comprende: recibir (210), por al menos un procesador, datos que definen parámetros de copia de seguridad que incluyen una máquina virtual (VM) para realizar una copia de seguridad; crear (215, 220), por parte de al menos un procesador, una instantánea de software asociada con la máquina virtual de la que se realizará la copia de seguridad; en respuesta a la creación de la instantánea de software, recibir (225) por el al menos un procesador, una tabla de desplazamientos que indica dónde se encuentran los bloques de datos (160) asociados con un disco virtual de la VM en un almacenamiento físico (140), en el que la tabla de desplazamientos proporcio na información de la ubicación del archivo de disco virtual que se obtiene después de que se crea la instantánea de software en el almacenamiento físico (140); crear (230, 235), por el al menos un procesador, una instantánea de hardware (150) en el almacenamiento físico (140), estando asociada la instantánea de hardware (150) a la máquina virtual de la que se debe realizar la copia de seguridad; en respuesta a la creación de la instantánea de hardware, suprimir (245), por el al menos un procesador, la instantánea de software; promover (250), por el al menos un procesador, la instantánea de hardware (150) a un número de unidad lógica (LUN); montar (255) la instantánea de hardware promovida (150) a un servidor de copia de seguridad (120); realizar la copia de seguridad (260), por el al menos un procesador, de los bloques de datos (160) asociados con el disco virtual de la VM al servidor de copia de seguridad (120) usando la tabla de desplazamientos y la instantánea de hardware montada (150) para leer los bloques de datos (160) asociados con el disco virtual de la VM directamente desde el almacenamiento físico (140); y desmontar (265) del servidor de copia de seguridad (120) y suprimir (270, 275) del almacenamiento físico (140), por el al menos un procesador, la instantánea de hardware (150).
Description
5
10
15
20
25
30
35
40
45
50
DESCRIPCION
Copia de seguridad de máquina virtual a partir de una instantánea de almacenamiento Antecedentes
La virtualización de servidores ha crecido en popularidad e importancia, ya que proporciona una forma flexible de configurar los recursos del servidor y permite maximizar el uso de los recursos del servidor de una manera rentable. Una empresa muy grande o una pequeña empresa, así como cualquier intermedia (incluidos los usuarios individuales), pueden utilizar la virtualización del servidor con el fin de asignar una cantidad apropiada de recursos del servidor a fin de garantizar el uso eficiente de los recursos del servidor. Los recursos del servidor virtual se pueden administrar usando una máquina virtual (VM). Aunque la virtualización de los recursos del servidor proporciona beneficios, el uso de una VM también presenta complejidades y desafíos.
El documento US8060476 explica las operaciones de copia de seguridad y almacenamiento para entornos informáticos virtuales utilizando un servidor proxy de copia de seguridad para realizar operaciones de almacenamiento en uno o más discos de la máquina virtual. El servidor proxy puede incluir un módulo que intercepta las llamadas de la interfaz de programación de aplicaciones (API), para escribir datos de copia de seguridad en una primera ubicación, antes de que los datos lleguen al disco proxy. Durante el proceso de interceptación, los datos pueden ser comprimidos en las páginas de memoria del servidor proxy y redirigirse a una ubicación del disco de copia de seguridad alternativo. El servidor proxy también puede incluir un motor diferencial que identifica los cambios en el disco de la máquina virtual en el nivel de bloque desde la última copia de seguridad completa. El motor diferencial puede aprovechar ventajosamente páginas de memoria del servidor proxy para comparar las diferencias entre firmas de bloques de la última copia de seguridad completa con firmas de nuevos bloques. Posteriormente, solo los bloques con firmas no coincidentes se procesan para la copia de seguridad.
El documento US2011/0307657 explica un procedimiento para reducir el tamaño de las copias de seguridad a nivel de imagen. El procedimiento recibe parámetros de copia de seguridad que identifican una máquina física o virtual (VM) para realizar una copia de seguridad y al menos un objeto del sistema de archivos para incluir en la copia de seguridad. El procedimiento se conecta al almacenamiento de producción correspondiente a la máquina física o virtual seleccionada y obtiene acceso a los datos almacenados en el disco correspondiente a los objetos del sistema de archivos seleccionados. El procedimiento busca los bloques de la tabla de asignación de archivos (FAT) del disco y analiza el contenido de los bloques FAT para determinar si los bloques del disco corresponden al objeto u objetos del sistema de archivos seleccionados. El procedimiento crea una imagen de disco de archivo de seguridad FAT que comprende bloques correspondientes al objeto u objetos del sistema de archivos seleccionados. El procedimiento crea bloques fAt de imagen de disco reconstruido correspondientes a la copia de seguridad FAT y bloques de datos de imagen de disco que pertenecen al objeto u objetos del sistema de archivos seleccionados y todos los demás bloques de datos de imagen de disco se guardan como bloques cero. Una imagen de disco reconstruido se comprime y se almacena en un archivo de copia de seguridad en el almacenamiento de copias de seguridad, o se replica (se copia) intacto a otro almacenamiento.
Sumario de la invención
De acuerdo con un aspecto, la presente invención proporciona un procedimiento tal como se establece en la reivindicación independiente adjunta! De acuerdo con otro aspecto, la presente invención proporciona un sistema tal como se establece en la reivindicación independiente adjunta 9. En un aspecto adicional, se proporciona un dispositivo legible por ordenador que tiene instrucciones almacenadas en el mismo que hacen que un dispositivo informático realice el procedimiento anterior, tal como se establece en la reivindicación independiente adjunta 15.
Breve descripción de los dibujos
Los dibujos que se acompañan se incorporan a la presente memoria descriptiva y forman parte de la memoria descriptiva.
La figura 1A es un diagrama de bloques de una arquitectura de sistema de VM configurada para realizar una copia de seguridad de VM usando una instantánea de almacenamiento, de acuerdo con una realización ejemplar.
La figura 1B es el diagrama de bloques que se muestra en la figura 1A que detalla adicionalmente el flujo de conexiones entre componentes en la arquitectura del sistema de VM, de acuerdo con una realización ejemplar.
La figura 2 es un diagrama de flujo que ilustra un proceso para realizar la copia de seguridad de VM a partir de una instantánea de almacenamiento, de acuerdo con una realización ejemplar.
La figura 3 es un ejemplo de sistema informático útil para implementar diversas realizaciones.
5
10
15
20
25
30
35
40
45
50
55
En los dibujos, los números de referencia similares indican generalmente elementos idénticos o similares. Además, generalmente, el dígito o los dígitos más a la izquierda de un número de referencia identifica (n) el dibujo en el que aparece el número de referencia por primera vez.
Descripción detallada
Se proporcionan en la presente memoria descriptiva el sistema, el procedimiento y / o las realizaciones del producto del programa informático, y / o combinaciones y subcombinaciones de los mismos, para realizar la copia de seguridad de VM a partir de una instantánea de almacenamiento.
En realizaciones, la copia de seguridad de una VM implica el uso de una instantánea a nivel de hipervisor, por ejemplo, una instantánea de software. Las instantáneas de software son informáticamente caras y pueden requerir que la instantánea de software se produzca "fuera de horas", como en un momento en que la carga en la máquina virtual es baja. Sin embargo, en muchas aplicaciones no hay "fuera de horas" para una VM correspondiente (tales aplicaciones incluyen pero no se limitan a servidores de correo electrónico, servidores web, servidores de aplicaciones, etc.). Por lo tanto, realizar una copia de seguridad de una VM puede ser problemático para una VM que no tenga un momento en el que la carga en la VM es baja. El uso de una instantánea de software para realizar una copia de seguridad de una VM con una carga alta puede hacer que la VM no responda como se describe adicionalmente más adelante.
Instantánea de software
Como se ha indicado más arriba, puede ser complejo realizar una copia de seguridad de una VM que se utiliza para administrar recursos de servidores virtuales. De acuerdo con algunos enfoques, una copia de seguridad a nivel de imagen se puede utilizar para realizar una copia de seguridad de una máquina virtual. Esto se puede lograr utilizando una instantánea de hipervisor de la máquina virtual. La instantánea de hipervisor se puede usar para crear una copia completa de la imagen de VM con el propósito de realizar copias de seguridad. Sin embargo, una instantánea de hipervisor, es decir, una instantánea de software, reduce el rendimiento de una VM y los recursos informáticos de los ordenadores principales asociados.
De acuerdo con algunos enfoques, cuando una instantánea de VM está en proceso de creación, los datos no se escriben en los discos virtuales asociados a la VM. Por el contrario, los datos se escriben en un archivo de instantánea. Por lo tanto, es posible realizar una copia de seguridad de una versión estática de los discos virtuales asociados a la máquina virtual y permanecerán como de solo lectura durante el proceso de copia de seguridad. Cuando se complete la copia de seguridad, se eliminará el archivo de instantánea. En una implementación, la eliminación de este archivo de instantánea incluye la consolidación de los datos en el archivo de instantánea en el disco virtual. Mientras este archivo de instantánea se está acometiendo en el disco virtual, se crea un archivo de instantánea adicional para almacenar datos que se escriben en el disco virtual durante la comisión. Al final de la comisión, la VM debe estar "congelada" durante un período de tiempo para poder obtener los datos del archivo de instantánea adicional en el disco virtual sin crear un archivo de instantánea adicional. Esto se denomina ciclo de inmovilizar / desinmovilizar.
Una VM (tal como, pero no limitado a una que tenga una velocidad de cambio alta) puede crear un archivo de instantáneas muy grande mientras se está ejecutando un proceso de copia de seguridad. Por lo tanto, la comisión del archivo de instantáneas grande puede requerir una cantidad de tiempo significativa y también implica una gran cantidad de operaciones de entrada / salida relacionadas. El proceso de comisión de un archivo de instantáneas grande puede tener un efecto negativo en el rendimiento de una máquina virtual. Como ejemplo, el usuario de la máquina virtual puede no ser capaz de iniciar una sesión en los servidores que están siendo administrados por la máquina virtual durante la confirmación de la comisión. Además, la VM puede tener dificultades para mantener las conexiones de red durante la eliminación de las instantáneas. Esta es la razón por la cual, en algunos enfoques, las instantáneas del hipervisor se crean "fuera de horas", como a la mitad de la noche.
Si la carga de trabajo del hipervisor satura las operaciones de entrada / salida por segundo (IOPS) de manera que estén cerca del máximo, puede ser casi imposible suprimir una instantánea sin hacer que un sistema sufra efectos adversos. En algunas implementaciones, el rendimiento de lectura de los discos asociados con la VM puede disminuir a aproximadamente el 5,5% del rendimiento de lectura alcanzable cuando la instantánea está habilitada. Además, acometer una instantánea puede tener un impacto aún más grave sobre el rendimiento. Como ejemplo, un almacenamiento de destino puede tener un promedio de aproximadamente 30 - 40% de carga de IOPS para un servidor ocupado de Exchange / SQL (Lenguaje de Consultas Estructurado) . Si se ejecuta la eliminación de la instantánea, la IOPS puede aproximarse al 80% o incluso puede ser mucho más alto. El almacenamiento puede sufrir una gran penalización de latencia cuando la IOPS es mayor que el 80%, lo que será perjudicial en gran medida para el rendimiento.
5
10
15
20
25
30
35
40
45
50
Instantánea de hardware
En algunos enfoques, las instantáneas de software sufren una variedad de problemas de rendimiento como se ha indicado más arriba. En realizaciones, las instantáneas de hardware o basadas en almacenamiento abordan un cierto número de estos problemas de rendimiento. Como ejemplo, un dispositivo de almacenamiento puede realizar instantáneas de sus propios volúmenes de almacenamiento. Cuando la instantánea se maneja a nivel de hardware en lugar de a nivel de software, el volumen de almacenamiento puede maximizar la eficiencia. Como resultado, las tecnologías de instantáneas de hardware no sufren los mismos problemas de rendimiento que tienden a plagar las instantáneas de software. Sin embargo, en algunos enfoques, las instantáneas de hardware están limitadas por los siguientes problemas que han limitado su uso como una solución completa de copia de seguridad / recuperación.
1. Las instantáneas de hardware pueden no cumplir con los requisitos de retención regulatorios. Las organizaciones pueden utilizar copias de seguridad para retener datos para satisfacer los requisitos regulatorios. Ciertas leyes tales como la HIPAA (Ley de responsabilidad y portabilidad de seguros de salud de 1996) requieren que las organizaciones retengan datos hasta durante seis años. Este requisito de seis años puede ser más largo de lo que una organización puede retener una instantánea de hardware o puede ser incluso más largo que lo que una organización conserva el dispositivo de almacenamiento.
2. Las instantáneas de hardware pueden depender de los datos de producción. Se presume que las instantáneas son recuperables incluso si se produce la pérdida de datos en un sistema de archivos de producción. Sin embargo, si el sistema de archivos de producción se daña, las instantáneas que hacen referencia al sistema de archivos pueden volverse inútiles, ya que solo pueden realizar referencia a los bloques modificados en lugar de a todos los bloques.
3. Las instantáneas pueden estar vinculadas al almacenamiento. Las instantáneas de hardware pueden residir en los mismos discos que los datos de producción y pueden realizar referencia a los mismos datos. Si el sistema de almacenamiento de producción se desconecta por alguna razón, por ejemplo, fallos catastróficos de hardware, cortes de energía, etc., las instantáneas de hardware pueden perderse además del almacenamiento.
4. Dependencia de almacenamiento. Las instantáneas de hardware pueden estar vinculadas a un almacenamiento particular. Por lo tanto, solo es posible restaurar una instantánea de hardware en un mismo almacenamiento en el que se encuentra, o en un almacenamiento duplicado. Sin embargo, convencionalmente no es posible tomar una instantánea de hardware del almacenamiento de un proveedor y restaurar la instantánea de hardware al almacenamiento de otro proveedor.
5. Las instantáneas de hardware solo son adecuadas para períodos de retención cortos. Las técnicas de instantáneas de hardware, por ejemplo, asignar - en - escritura, copiar - en - escritura, espejo dividido, etc., consumen cantidades variables de la capacidad de almacenamiento de disco de producción. Si bien algunas técnicas de instantáneas de hardware consumen mucho menos almacenamiento que otras, en general, no facilitan fácilmente su conservación a largo plazo debido a la cantidad creciente de espacio en disco que requieren las instantáneas que se consumen a lo largo del tiempo. Además, las unidades de estado sólido (SSD) agravan aún más el costo de retener instantáneas de hardware en el almacenamiento de producción ya que actualmente cuestan de dos a diez veces más que las unidades de disco duro.
6. Granularidad. En algunos enfoques, las instantáneas de hardware no se pueden realizar con una granulari- dad inferior a un volumen de almacenamiento, a menudo denominado número de unidades lógicas (LUN).
7. Las instantáneas de hardware incluyen datos de estado "coherentes". Normalmente, el almacenamiento no incluye información relacionada con el carácter de los datos almacenados en él, como un sistema operativo, tipos de discos, tipos de aplicaciones, etc., con el fin de crear una instantánea debidamente desactivada.
Con el fin de abordar estas limitaciones, varios enfoques han resultado en escenarios complejos tales como el siguiente ejemplo:
1. La aplicación inicia una tarea de copia de seguridad.
2. La aplicación se comunica con un hipervisor para llamar una interfaz de programación de aplicaciones (API) específica del hipervisor para crear una instantánea de software.
3. La aplicación invoca una API de almacenamiento para crear una instantánea de hardware.
4. La instantánea de software se elimina.
5. La instantánea de hardware se promociona a un nuevo LUN.
5
10
15
20
25
30
35
40
45
50
El LUN se monta en un ordenador principal hipervisor y se registra como un almacén de datos en la configuración del hipervisor.
6. Las VM de la instantánea de hardware están registradas en un ordenador principal. La aplicación comienza a realizar copias de seguridad de los datos de las máquinas virtuales utilizando cualquier técnica conocida de realización de copias de seguridad de imágenes de VM utilizando la instantánea de software.
7. Después de que se complete la copia de seguridad, la aplicación anula el registro del almacén de datos del hipervisor y desmonta el LUN de instantánea de hardware.
8. La instantánea de hardware se borra.
Sin embargo, el escenario de instantáneas de hardware anterior tiene varios inconvenientes: (1) el LUN de instantáneas se representa en el ordenador principal hipervisor como un almacén de datos. Como resultado, es posible que se requiera un ordenador principal hipervisor adicional. Sin embargo, en algunas situaciones, puede no ser factible tener un ordenador principal hipervisor adicional debido a consideraciones de costo / recursos. (2) Montar la instantánea de hardware en el ordenador principal hipervisor y registrarlo como un almacén de datos puede llevar una cantidad significativa de tiempo. Por lo tanto, se dedicará un tiempo considerable a la preparación del entorno, por lo que no será posible alcanzar objetivos de puntos de recuperación bajos (RPO). (3) Esta técnica de instantánea de hardware evita el uso de algunas implementaciones de información de seguimiento de bloques modificados (CBT) basada en hipervisor, por ejemplo, VMware v Sphere CBT, porque al registrar la VM con un ordenador principal hipervisor, los datos de CBT se restablecen. Por lo tanto, las copias de seguridad incrementales pueden no realizarse de manera eficiente y, en su lugar, es posible que se deba leer toda la imagen de la VM durante cada copia de seguridad en lugar de simplemente leer los bloques que han cambiado desde la última ejecución del proceso de copia de seguridad.
Las siguientes realizaciones ejemplares proporcionan un procedimiento y un sistema eficientes para crear una copia de seguridad de VM usando una instantánea de hardware (almacenamiento), de acuerdo con las realizaciones. Las siguientes realizaciones ejemplares no están limitadas a la copia de seguridad y también se pueden usar para otras técnicas de protección de datos tales como la replicación, copia, etc.
De acuerdo con las realizaciones ejemplares, no se necesita un ordenador principal hipervisor para montar instantáneas de hardware / almacenamiento para el procesamiento. Por el contrario, la instantánea de hardware se monta directamente en un servidor de copias de seguridad. Como resultado, esto puede reducir el costo de la copia de seguridad y aumentar el rendimiento de la copia de seguridad al suprimir los pasos que se requerían en otros enfoques. Además, de acuerdo con las realizaciones ejemplar, la información de CBT basada en hipervisor, por ejemplo VMware CBT, se puede utilizar para aumentar significativamente la velocidad y la eficiencia de las copias de seguridad incrementales a nivel de bloque.
De acuerdo con una realización ejemplar, la figura 1A muestra un diagrama de bloques de una arquitectura de sistema de VM 100 configurada para realizar copias de seguridad de máquina virtual usando una instantánea de almacenamiento, por ejemplo, una instantánea de hardware. La figura 1B ilustra las llamada a la API, así como el flujo de datos de disco de VM entre los módulos que comprenden la arquitectura del sistema de VM 100.
De acuerdo con una realización ejemplar, la figura 1A ilustra una consola de operador de copia de seguridad 110, que puede incluir una interfaz de usuario que se utilizará para seleccionar las VM para realizar una copia de seguridad. La selección de las VM para realizar la copia de seguridad puede ser recibida por el servidor de copia de seguridad 120. El servidor de copia de seguridad 120 se puede conectar al hipervisor 130 usando una llamada a la API específica del hipervisor para crear una instantánea de VM. El servidor de copia de seguridad 120 puede establecer una conexión con el hipervisor 130 y consultar una tabla de desplazamientos en el almacenamiento 140 que proporciona información de ubicación del archivo de disco virtual. Esta tabla de desplazamientos indica dónde se encuentran los bloques de datos de los archivos de disco virtual 160 en el almacenamiento 140. La tabla de desplazamientos puede incluir una pluralidad de entradas que proporcionan un desplazamiento y una longitud de cada bloque de archivo.
Como ejemplo no limitativo, para una copia de seguridad de VM Hyper - V basada en Microsoft, una aplicación puede consultar la tabla de archivos maestros (MFT) del sistema de archivos de nueva tecnología (NTFS) para obtener una tabla de desplazamientos que indique dónde se encuentran los discos virtuales. en el almacenamiento físico Con esta información, la aplicación puede leer datos de archivos de discos virtuales directamente desde el almacenamiento físico.
Como otro ejemplo no limitativo, algunos hipervisores, por ejemplo, VMware vSphere, implementan mecanismos de CBT nativos. Para estos hipervisores, la información de CBT se puede recuperar del hipervisor 130. La información
5
10
15
20
25
30
35
40
45
50
55
de CBT se puede utilizar para evitar leer datos de disco virtual que se sabe que no han cambiado desde un ciclo de copia de seguridad anterior.
Como otro ejemplo no limitativo, una copia de seguridad basada en VMware vSphere puede proporcionar información de CBT invocando una consulta a la API QueryChangedDiskAreas. Se puede llamar a QueryChangedDiskA- reas y devuelve una lista de áreas de un disco virtual que pertenecen a una VM asociada que puede haber sido modificada desde un punto predefinido en el tiempo. El comienzo de un intervalo de cambio se puede identificar mediante "changeID" y un final del intervalo de cambio se puede indicar mediante una ID de instantánea actual. "changeID" puede ser un identificador para un estado de un disco virtual en un punto específico en el tiempo.
Una vez que se establece la conexión entre el servidor de copia de seguridad 120 y el almacenamiento 140, el servidor de copia de seguridad 120 puede iniciar entonces la creación de la instantánea de hardware en el almacenamiento 140. El servidor de copia de seguridad 120 se puede comunicar con el hipervisor 130 para suprimir la instantánea de VM. De acuerdo con una realización ejemplar, la instantánea de VM se puede suprimir tan pronto como se cree la instantánea de hardware. En una realización ejemplar, el tiempo entre la creación y la eliminación de la instantánea de VM puede ser de unos pocos segundos. El servidor de copia de seguridad 120 puede promover entonces la instantánea de hardware a un LUN, montar el LUN a sí mismo y usando la tabla de desplazamientos obtenida del hipervisor, leer los bloques de datos de archivos de disco virtual necesarios de los archivos de disco virtual 160, procesar y escribir datos para realizar el archivo de copia de seguridad de almacenamiento 150.
La figura 1B ilustra las llamada a la API así como el flujo de datos de disco virtual dentro de la arquitectura de sistema de VM 100 de acuerdo con una realización ejemplar. Las flechas más delgadas representan llamada a la API y las flechas más gruesas (ver 105 y 106 en la figura 1B, y las flechas correspondientes en la figura 1A) representan el flujo de datos del disco virtual. La figura 1B ilustra la comunicación dentro de la arquitectura del sistema, y en qué orden se produce la comunicación. Cada una de las flechas en la figura 1B también representa un paso del proceso de copia de seguridad de VM de acuerdo con una realización ejemplar.
Como se muestra en la figura 1B, la flecha que representa el paso 102 apunta unidireccionalmente desde la consola de operador de copia de seguridad 110 al servidor de copia de seguridad 120. En este paso 102, el servidor de copia de seguridad 120 recibe los parámetros de copia de seguridad selectivos desde la consola de operador de copia de seguridad 110. Estos parámetros de copia de seguridad selectiva pueden incluir una o más máquinas virtuales para realizar copias de seguridad, etc.
A continuación, la flecha que representa el paso 103 apunta bidireccionalmente entre el servidor de copia de seguridad 120 y el hipervisor 130. En este paso 103, el servidor de copia de seguridad 120 se comunica con el hipervisor 130 para llamar a la funcionalidad de la API específica del hipervisor para crear / suprimir instantáneas de software, y también para obtener una tabla de desplazamientos además de datos de CBT si están disponibles.
La flecha que representa el paso 104 apunta unidireccionalmente desde el servidor de copia de seguridad 102 al almacenamiento 140. En este paso 104, el servidor de copia de seguridad 120 realiza llamadas al almacenamiento 140 utilizando una API de almacenamiento para crear / suprimir una instantánea de almacenamiento. El servidor de copia de seguridad 120 puede promover adicionalmente la instantánea de almacenamiento a un nuevo LUN emitiendo una llamada a la API correspondiente contra el almacenamiento 140.
A continuación, la flecha que representa el paso 105 apunta unidireccionalmente desde el almacenamiento 140 al servidor de copia de seguridad 120. En este paso 105, el servidor de copia de seguridad 120 monta a sí mismo la instantánea de almacenamiento promocionada, el servidor de copia de seguridad 120.
La flecha que representa el paso 106 apunta unidireccionalmente desde el servidor 120 de copia de seguridad al almacenamiento 150 del archivo de copia de seguridad. En este paso 106, los datos en los archivos 160 de disco virtual asociados con la instantánea de almacenamiento montada se guardan en el almacenamiento 150 de archivo de copia de seguridad.
De acuerdo con realizaciones ejemplares, la figura 2 ilustra un proceso 200 para la copia de seguridad de VM a partir de una instantánea de almacenamiento, de acuerdo con una realización ejemplar. Únicamente con fines ilustrativos, la figura 2 se describe con referencia al sistema que se muestra en la figura 1B. Sin embargo, la figura 2 no está limitado al ejemplo de la figura 1B.
Como se muestra en la figura 2, el proceso comienza en el paso 205. Cuando el proceso comienza en el paso 205, se inicia una aplicación de copia de seguridad. Después de que se inicie la aplicación de copia de seguridad, el proceso continúa al paso 210.
En el paso 210, el servidor 120 de copia de seguridad recibe parámetros de copia de seguridad selectivos. Los parámetros de copia de seguridad selectivos pueden incluir al menos una máquina virtual para realizar una copia de seguridad, etc. Después de que se reciban los parámetros de copia de seguridad selectivos, el proceso continúa al paso 215.
5
10
15
20
25
30
35
40
45
En el paso 215, el servidor de copia de seguridad 120 se conecta al hipervisor 130 y emite una llamada a la API de creación de instantáneas de VM al hipervisor 130.
Después del paso 215, en el paso 220, el hipervisor 130 crea una instantánea de máquina virtual.
Después del paso 220, en el paso 225, el servidor de copia de seguridad 120 obtiene una tabla de desplazamientos
y, si están disponibles, datos de CBT del hipervisor 130.
Después del paso 225, en el paso 230, el servidor de copia de seguridad 120 se conecta al almacenamiento 140 y emite una llamada a la API de creación de instantáneas de almacenamiento.
Después del paso 230, en el paso 235, el almacenamiento 140 crea una instantánea de almacenamiento.
Después del paso 235, en el paso 240, el servidor de copia de seguridad 120 se conecta al hipervisor 130.
Después de conectarse al hipervisor 130 en el paso 240, en el paso 245 el hipervisor 130 inicia la eliminación de instantáneas de VM.
A continuación, en el paso 250, el servidor 120 de copia de seguridad promueve la instantánea de almacenamiento a un nuevo LUN emitiendo una llamada a la API correspondiente contra el almacenamiento 140.
A continuación, en el paso 255, el servidor de copia de seguridad 120 puede montar entonces la instantánea de almacenamiento promocionada creada en el paso 230, a sí mismo.
A continuación, en el paso 260, el servidor de copia de seguridad 120 usa la información recibida en el paso 225 para iniciar un proceso de copia de seguridad de archivos de disco virtual leyendo y guardando bloques de datos relevantes en el almacenamiento de copia de seguridad 150 de acuerdo con la tabla de desplazamientos y los datos de CBT obtenidos con anterioridad en el proceso.
Después de que se complete este proceso de copia de seguridad del paso 260, el proceso pasa al paso 265. En el paso 265, el servidor de copia de seguridad 120 desmonta la instantánea de almacenamiento que se montó a sí mismo en el paso 255.
A continuación, en el paso 270, el servidor de copia de seguridad 120 se conecta al almacenamiento 140. Después de conectarse al almacenamiento 140, en el paso 275, el servidor de copia de seguridad 120 emite una llamada a la API de eliminación de instantáneas de almacenamiento y el almacenamiento 140 inicia la eliminación de instantáneas de almacenamiento.
En el paso 280, la aplicación de copia de seguridad se detiene y el proceso finaliza.
Ejemplo de sistema informático
Se pueden implementar diversas realizaciones, por ejemplo, usando uno o más sistemas informáticos bien conocidos, tales como el sistema informático 300 que se muestra en la figura 3. El sistema informático 300 puede ser cualquier ordenador bien conocido capaz de realizar las funciones que se describen en la presente memoria descriptiva, tales como ordenadores disponibles en International Business Machines, Apple, Sun, HP, Dell, Sony, Toshiba, etc.
El sistema informático 300 incluye uno o más procesadores (también denominados unidades de procesamiento centrales, o CPU), tales como un procesador 304. El procesador 304 está conectado a una infraestructura de comunicación o bus 306.
Cada uno de uno o más procesadores 304 puede ser una unidad de procesamiento de gráficos (GPU). En una realización, una GPU es un procesador que es un circuito electrónico especializado diseñado para procesar rápidamente aplicaciones matemáticamente intensivas en dispositivos electrónicos. La GPU puede tener una estructura altamente paralela que sea eficiente para el procesamiento paralelo de grandes bloques de datos, como los datos matemáticamente intensivos comunes a las aplicaciones de gráficos por ordenador, imágenes y videos.
El sistema informático 300 también incluye un dispositivo o dispositivos 303 de entrada / salida de usuario, tales como monitores, teclados, dispositivos apuntadores, etc., que se comunican con la infraestructura de comunicación 306 a través de la interfaz o interfaces 302 de entrada / salida de usuario.
El sistema informático 300 también incluye una memoria principal o primaria 308, tal como una memoria de acceso aleatorio (RAM). La memoria principal 308 puede incluir uno o más niveles de caché. La memoria principal 308 tiene almacenada en ella lógica de control (es decir, software informático) y / o datos.
El sistema informático 300 también puede incluir uno o más dispositivos de almacenamiento secundarios o memorias 310. La memoria secundaria 310 puede incluir, por ejemplo, una unidad de disco duro 312 y / o un dispositivo de
5
10
15
20
25
30
35
40
45
50
55
almacenamiento o unidad de almacenamiento extraíble 314. La unidad de almacenamiento extraíble 314 puede ser una unidad de disquete, una unidad de cinta magnética, una unidad de disco compacto, un dispositivo de almacenamiento óptico, un dispositivo de copia de seguridad en cinta y / o cualquier otro dispositivo / unidad de almacenamiento.
El dispositivo de almacenamiento extraíble 314 puede interactuar con una unidad de almacenamiento extraíble 318. La unidad de almacenamiento extraíble 318 incluye un dispositivo de almacenamiento utilizable o legible por ordenador que tiene almacenado en el mismo un software informático (lógica de control) y / o datos. La unidad de almacenamiento extraíble 318 puede ser un disquete, una cinta magnética, un disco compacto, un DVD, un disco de almacenamiento óptico y / o cualquier otro dispositivo de almacenamiento de datos informáticos. El dispositivo de almacenamiento extraíble 314 lee y / o escribe en la unidad de almacenamiento extraíble 318 de una manera bien conocida.
De acuerdo con una realización ejemplar, la memoria secundaria 310 puede incluir otros medios, instrumentos u otros enfoques para permitir que el sistema informático 300 acceda a programas informáticos y / u otras instrucciones y / o datos. Los citados medios, instrumentos u otros enfoques pueden incluir, por ejemplo, una unidad de almacenamiento extraíble 322 y una interfaz 320. Los ejemplos de la unidad de almacenamiento extraíble 322 y la interfaz 320 pueden incluir un cartucho de programa y una interfaz de cartucho (como la que se encuentra en los dispositivos de videojuegos), un chip de memoria extraíble (como una EPROM o PROM) y un zócalo asociado, una tarjeta de memoria y puerto USB, una tarjeta de memoria y ranura de tarjeta de memoria asociada y / o cualquier otra unidad de almacenamiento extraíble e interfaz asociada.
El sistema informático 300 puede incluir además una interfaz de comunicación o de red 324. La interfaz de comunicación 324 permite al sistema informático 300 comunicarse e interactuar con cualquier combinación de dispositivos remotos, redes remotas, entidades remotas, etc. (referenciados individual y colectivamente con el número de referencia 328). Por ejemplo, la interfaz de comunicación 324 puede permitir que el sistema informático 300 se comunique con dispositivos remotos 328 a través del trayecto de comunicaciones 326, que puede estar cableado y / o ser inalámbrico, y que puede incluir cualquier combinación de LAN, WAN, Internet, etc. La lógica de control y / o los datos se pueden transmitir hacia y desde el sistema informático 300 a través del trayecto de comunicaciones 326.
En una realización, un aparato tangible o artículo de fabricación que comprende un medio tangible utilizable o legible por ordenador que tiene lógica de control (software) almacenada en el mismo también se denomina en la presente memoria descriptiva como producto de programa informático o dispositivo de almacenamiento de programa. Esto incluye, pero no se limita a, sistema informático 300, memoria principal 308, memoria secundaria 310 y unidades de almacenamiento extraíbles 318 y 322, así como artículos de fabricación tangibles que incorporan cualquier combinación de los anteriores. Una lógica de control de este tipo, cuando es ejecutada por uno o más dispositivos de procesamiento de datos (tales como el sistema informático 300), hace que los citados dispositivos de procesamiento de datos funcionen tal como se describe en la presente memoria descriptiva.
En base a las enseñanzas contenidas en esta revelación, será evidente para las personas expertas en la (s) técnica (s) relevante (s) cómo realizar y usar la invención usando dispositivos de procesamiento de datos, sistemas informáticos y / o arquitecturas informáticas distintas a las que se muestra en la figura 3. En particular, las realizaciones pueden operar con implementaciones de software, hardware y / o sistemas operativos distintos de los que se describen en la presente memoria descriptiva.
Conclusión
Se debe tener en cuenta que la sección Descripción detallada, y no las secciones Sumario y Resumen (si las hay), está destinada a ser utilizada para interpretar las reivindicaciones. Las secciones de Sumario y Resumen (si las hay) pueden exponer una o más, pero no todas, las realizaciones ejemplares de la invención contempladas por el inventor o inventores y, por lo tanto, no pretenden limitar en modo alguno la invención o las reivindicaciones adjuntas.
Aunque la invención se ha descrito en la presente memoria descriptiva con referencia a realizaciones ejemplares para campos y aplicaciones ejemplares, se debe entender que la invención no está limitada a la misma. Son posibles otras realizaciones y modificaciones de la misma. Por ejemplo, y sin limitar la generalidad de este párrafo, las realizaciones no están limitadas al software, hardware, firmware y / o entidades que se ilustran en las figuras y / o que se describen en la presente memoria descriptiva.
Además, las realizaciones (ya se hayan descrito explícitamente, o no, en la presente memoria descriptiva) tienen una utilidad significativa para campos y aplicaciones más allá de los ejemplos que se describen en la presente memoria descriptiva.
Las realizaciones se han descrito en la presente memoria descriptiva con la ayuda de bloques de construcción funcionales que ilustran la implementación de funciones especificadas y sus relaciones. Los límites de estos bloques de construcción funcionales se han definido arbitrariamente en la presente memoria descriptiva por conveniencia de la
descripción. Los límites alternativos se pueden definir siempre que las funciones y relaciones especificadas (o equivalentes de las mismas) se realicen de manera apropiada. Además, las realizaciones alternativas pueden realizar bloques funcionales, pasos, operaciones, procedimientos, etc. usando ordenaciones diferentes a las que se describen en la presente memoria descriptiva.
5 Las referencias en la presente memoria descriptiva a "una realización", "la realización", "una realización ejemplar" o frases similares, indican que la realización que se describe puede incluir un aspecto, estructura o característica particular, pero cada realización puede no incluir necesariamente el aspecto , estructura o característica particular. Además, tales frases no se refieren necesariamente a la misma realización. Además, cuando se describe un aspecto, estructura o característica particular en relación con una realización, estaría dentro del conocimiento de las per- 10 sonas expertas en la (s) técnica (s) relevante (s) incorporar dicho aspecto, estructura o característica en otras realizaciones, ya se haya mencionado o descrito explícitamente, o no, en la presente memoria descriptiva.
La amplitud y el alcance de la invención no deberían estar limitados por ninguna de las realizaciones ejemplares que se han descrito en lo que antecede.
Claims (15)
- 510152025303540REIVINDICACIONES1. Un procedimiento que comprende:recibir (210), por al menos un procesador, datos que definen parámetros de copia de seguridad que incluyen una máquina virtual (VM) para realizar una copia de seguridad;crear (215, 220), por parte de al menos un procesador, una instantánea de software asociada con la máquina virtual de la que se realizará la copia de seguridad;en respuesta a la creación de la instantánea de software, recibir (225) por el al menos un procesador, una tabla de desplazamientos que indica dónde se encuentran los bloques de datos (160) asociados con un disco virtual de la VM en un almacenamiento físico (140), en el que la tabla de desplazamientos proporciona información de la ubicación del archivo de disco virtual que se obtiene después de que se crea la instantánea de software en el almacenamiento físico (140);crear (230, 235), por el al menos un procesador, una instantánea de hardware (150) en el almacenamiento físico (140), estando asociada la instantánea de hardware (150) a la máquina virtual de la que se debe realizar la copia de seguridad;en respuesta a la creación de la instantánea de hardware, suprimir (245), por el al menos un procesador, la instantánea de software;promover (250), por el al menos un procesador, la instantánea de hardware (150) a un número de unidad lógica (LUN);montar (255) la instantánea de hardware promovida (150) a un servidor de copia de seguridad (120);realizar la copia de seguridad (260), por el al menos un procesador, de los bloques de datos (160) asociados con el disco virtual de la VM al servidor de copia de seguridad (120) usando la tabla de desplazamientos y la instantánea de hardware montada (150) para leer los bloques de datos (160) asociados con el disco virtual de la VM directamente desde el almacenamiento físico (140); ydesmontar (265) del servidor de copia de seguridad (120) y suprimir (270, 275) del almacenamiento físico (140), por el al menos un procesador, la instantánea de hardware (150).
- 2. El procedimiento de la reivindicación 1, que comprende además:determinar una lista de áreas del disco virtual que se han modificado después de un tiempo predeterminado.
- 3. El procedimiento de la reivindicación 2, que comprende además:emitir una consulta de interfaz de programación de aplicaciones (API) para determinar la lista de áreas del disco virtual que se han modificado después del tiempo predeterminado.
- 4. El procedimiento de la reivindicación 2, que comprende, además:usar la lista de áreas para realizar copias de seguridad solo de los bloques de datos del disco virtual que se han modificado después del tiempo predeterminado para el almacenamiento de la copia de seguridad.
- 5. El procedimiento de cualquier reivindicación precedente, que comprende, además:emitir una llamada a la API de instantánea de software para crear la instantánea de software.
- 6. El procedimiento de cualquier reivindicación precedente, que comprende además:emitir una llamada a la API de instantánea de hardware para generar la instantánea de hardware.
- 7. El procedimiento de cualquier reivindicación precedente, en el que la instantánea de software se elimina después de que se crea la instantánea de hardware.
- 8. El procedimiento de cualquier reivindicación precedente, en el que la eliminación de la instantánea de software incluye consolidar los datos en la instantánea de software en el disco virtual.
- 9. Un sistema que comprende:una memoria; y510152025303540al menos un procesador acoplado a la memoria y configurado para:recibir parámetros de copia de seguridad selectivos que incluyen una máquina virtual (VM) de la que se realizará una copia de seguridad;crear una instantánea de software asociada con la VM;en respuesta a la creación de la instantánea de software, recibir una tabla de desplazamientos con información que indique dónde se encuentran los bloques de datos (160) asociados a un disco virtual de la VM en un almacenamiento físico (140), en el que la tabla de desplazamientos proporciona información de ubicación del archivo de disco virtual que se obtiene después de que se crea la instantánea de software en el almacenamiento físico (140);crear una instantánea de hardware (150) del almacenamiento físico (140), estando asociada la instantánea de hardware (150) a la máquina virtual de la que se realizará la copia de seguridad;en respuesta a la creación de la instantánea de hardware, suprimir la instantánea de software;promover la instantánea de hardware (150) a un número de unidad lógica (LUN);montar la instantánea de hardware promovida (150) en un servidor de copia de seguridad (120);realizar una copia de seguridad de los bloques de datos (160) asociados con el disco virtual de la VM al servidor de copia de seguridad (120) usando la tabla de desplazamientos y la instantánea de hardware montada (150) para leer los bloques de datos (160) asociados con el disco virtual de la VM directamente desde el almacenamiento físico (140); ydesmontar del servidor de copia de seguridad (120) y suprimir (270,275) del almacenamiento físico (140), por el al menos un procesador, la instantánea de hardware (150).
- 10. El sistema de la reivindicación 9, estando configurado además el al menos un procesador para:determinar una lista de áreas del disco virtual que se han modificado después de un tiempo predeterminado.
- 11. El sistema de la reivindicación 10, estando configurado adicionalmente el al menos un procesador para:emitir una consulta a la interfaz de programación de aplicaciones (API) para determinar la lista de áreas del disco virtual que se han modificado después del tiempo predeterminado.
- 12. El sistema de cualquiera de las reivindicaciones 9 a 11, estando configurado además el al menos un procesador para:utilizar la lista de áreas para realizar una copia de seguridad solo de los bloques de datos del disco virtual que se han modificado desde el tiempo predeterminado para el almacenamiento de la copia de seguridad.
- 13. El sistema de una cualquiera de las reivindicaciones 9 a 12, estando configurado además el al menos un procesador para:emitir una llamada a la API de instantánea de software para crear la instantánea de software, y / o emitir una llamada a la API de instantánea de hardware para generar la instantánea de hardware.
- 14. El sistema de cualquiera de las reivindicaciones 9 a 13, en el que al menos un procesador está configurado para suprimir la instantánea de software después de crear la instantánea de hardware, y en el que la eliminación de la instantánea de software incluye la consolidación de datos en la instantánea de software en el disco virtual.
- 15. Un dispositivo tangible legible por ordenador que tiene instrucciones almacenadas en el mismo que, cuando son ejecutadas por al menos un dispositivo informático, hacen que el al menos un dispositivo informático realice todos los pasos de cualquiera de las reivindicaciones 1 a 8 cuando el citado programa se ejecuta en un ordenador.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201313914086 | 2013-06-10 | ||
| US13/914,086 US9116846B2 (en) | 2013-06-10 | 2013-06-10 | Virtual machine backup from storage snapshot |
| PCT/IB2014/001645 WO2014199230A2 (en) | 2013-06-10 | 2014-06-10 | Virtual machine backup from storage snapshot |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2653698T3 true ES2653698T3 (es) | 2018-02-08 |
Family
ID=51585133
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES14771616.1T Active ES2653698T3 (es) | 2013-06-10 | 2014-06-10 | Copia de seguridad de máquina virtual a partir de una instantánea de almacenamiento |
Country Status (7)
| Country | Link |
|---|---|
| US (3) | US9116846B2 (es) |
| EP (1) | EP3008600B1 (es) |
| CN (1) | CN105745624B (es) |
| DK (1) | DK3008600T3 (es) |
| ES (1) | ES2653698T3 (es) |
| NO (1) | NO3014968T3 (es) |
| WO (1) | WO2014199230A2 (es) |
Families Citing this family (55)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2002019966A2 (en) | 2000-09-06 | 2002-03-14 | Johns Hopkins University | Cardiac arrhythmia treatment methods |
| WO2002087419A2 (en) | 2001-04-27 | 2002-11-07 | Johns Hopkins University | Biological pacemaker |
| US8601473B1 (en) | 2011-08-10 | 2013-12-03 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment |
| US9116846B2 (en) | 2013-06-10 | 2015-08-25 | Veeam Software Ag | Virtual machine backup from storage snapshot |
| US9665386B2 (en) * | 2013-06-14 | 2017-05-30 | Nutanix, Inc. | Method for leveraging hypervisor functionality for maintaining application consistent snapshots in a virtualization environment |
| US9740514B1 (en) | 2013-06-26 | 2017-08-22 | Nutanix, Inc. | Method and system to share data with snapshots in a virtualization environment |
| US9424056B1 (en) * | 2013-06-28 | 2016-08-23 | Emc Corporation | Cross site recovery of a VM |
| US9524215B1 (en) * | 2013-07-30 | 2016-12-20 | Veritas Technologies Llc | Systems and methods for managing virtual machine backups |
| US11042309B1 (en) * | 2013-08-23 | 2021-06-22 | Acronis International Gmbh | Recovery of virtual machine files using disk attachment |
| US9405765B1 (en) * | 2013-12-17 | 2016-08-02 | Emc Corporation | Replication of virtual machines |
| US9959177B2 (en) * | 2014-02-27 | 2018-05-01 | Red Hat Israel, Ltd. | Backing up virtual machines |
| US11243707B2 (en) | 2014-03-12 | 2022-02-08 | Nutanix, Inc. | Method and system for implementing virtual machine images |
| US9189342B1 (en) * | 2014-05-29 | 2015-11-17 | Emc Corporation | Generic process for determining child to parent inheritance for fast provisioned or linked clone virtual machines |
| US9292327B1 (en) * | 2014-05-29 | 2016-03-22 | Emc Corporation | Optimization for incremental backup of VMS |
| US8943105B1 (en) | 2014-06-02 | 2015-01-27 | Storagecraft Technology Corporation | Exposing a proprietary disk file to a hypervisor as a native hypervisor disk file |
| US20160019117A1 (en) * | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Creating customized bootable image for client computing device from backup copy |
| JP5904514B1 (ja) | 2014-10-28 | 2016-04-13 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 仮想マシンのスナップショットに対して更新を自動的に適用する方法、並びに、そのコンピュータ・システム及びコンピュータ・システム用プログラム |
| US20160125059A1 (en) | 2014-11-04 | 2016-05-05 | Rubrik, Inc. | Hybrid cloud data management system |
| US9075649B1 (en) | 2015-01-26 | 2015-07-07 | Storagecraft Technology Corporation | Exposing a proprietary image backup to a hypervisor as a disk file that is bootable by the hypervisor |
| US9256498B1 (en) | 2015-06-02 | 2016-02-09 | Zerto Ltd. | System and method for generating backups of a protected system from a recovery system |
| US10365976B2 (en) * | 2015-07-28 | 2019-07-30 | Vmware, Inc. | Scheduling and managing series of snapshots |
| US10114706B1 (en) * | 2015-09-22 | 2018-10-30 | EMC IP Holding Company LLC | Backup and recovery of raw disks [RDM] in virtual environment using snapshot technology |
| US10200470B1 (en) * | 2015-09-30 | 2019-02-05 | EMC IP Holding Company LLC | Data driven backup policy for data-centers and applications |
| CN105279011A (zh) * | 2015-11-17 | 2016-01-27 | 国云科技股份有限公司 | 一种虚拟机可根据镜像进行系统还原的方法 |
| US10489518B1 (en) * | 2016-03-03 | 2019-11-26 | Nutanix, Inc. | Virtual machine object version control |
| US10613947B2 (en) | 2016-06-09 | 2020-04-07 | Nutanix, Inc. | Saving and restoring storage devices using application-consistent snapshots |
| US10509701B2 (en) | 2016-09-23 | 2019-12-17 | Apple Inc. | Performing data backups using snapshots |
| EP3832466B1 (en) * | 2017-02-14 | 2023-10-04 | Huawei Technologies Co., Ltd. | System and method for backup scheduling |
| CN107025149A (zh) * | 2017-03-04 | 2017-08-08 | 郑州云海信息技术有限公司 | 虚拟机备份恢复系统及方法 |
| US11288089B2 (en) * | 2017-05-23 | 2022-03-29 | Citrix Systems, Inc. | Metrics-based virtual machine snapshots |
| CN107122267B (zh) * | 2017-05-31 | 2021-03-30 | 广州鼎甲计算机科技有限公司 | 一种Windows操作系统挂载恢复方法 |
| US10417096B2 (en) * | 2017-07-20 | 2019-09-17 | Vmware, Inc. | Multi-virtual machine time consistent snapshots |
| US10620843B2 (en) * | 2017-07-26 | 2020-04-14 | Netapp, Inc. | Methods for managing distributed snapshot for low latency storage and devices thereof |
| US11221920B2 (en) | 2017-10-10 | 2022-01-11 | Rubrik, Inc. | Incremental file system backup with adaptive fingerprinting |
| US10824522B2 (en) | 2017-11-27 | 2020-11-03 | Nutanix, Inc. | Method, apparatus, and computer program product for generating consistent snapshots without quiescing applications |
| US11188424B2 (en) * | 2017-11-28 | 2021-11-30 | Micro Focus Llc | Application-aware virtual machine backup |
| US11372729B2 (en) | 2017-11-29 | 2022-06-28 | Rubrik, Inc. | In-place cloud instance restore |
| CN110058959B (zh) * | 2018-01-18 | 2023-06-16 | 伊姆西Ip控股有限责任公司 | 数据备份方法、设备和计算机程序产品 |
| US10860434B2 (en) * | 2018-04-30 | 2020-12-08 | EMC IP Holding Company LLC | Method and system for enabling data backups for virtual machines reliant on raw device mapping disks |
| CN108833419B (zh) * | 2018-06-22 | 2021-12-14 | 武汉彤科电力科技有限公司 | 一种终端与主站之间的远程参数更新报文安全交互方法 |
| US11216343B1 (en) * | 2018-08-01 | 2022-01-04 | Virtuozzo International Gmbh | System and method for accelerating processing in event-driven server-less computing |
| US11074134B2 (en) | 2018-08-23 | 2021-07-27 | International Business Machines Corporation | Space management for snapshots of execution images |
| US11093350B2 (en) * | 2018-10-22 | 2021-08-17 | EMC IP Holding Company LLC | Method and system for an optimized backup data transfer mechanism |
| US10936231B2 (en) | 2019-04-22 | 2021-03-02 | EMC IP Holding Company LLC | Allocating snapshot group identifiers |
| US10877931B1 (en) | 2019-09-12 | 2020-12-29 | Hewlett Packard Enterprise Development Lp | Backups of file system instances having subtrees |
| EP4035012A1 (en) * | 2019-09-27 | 2022-08-03 | Amazon Technologies Inc. | Network-accessible block-level snapshots |
| CN110928728A (zh) * | 2019-11-27 | 2020-03-27 | 上海英方软件股份有限公司 | 一种基于快照的虚拟机复制、切换方法及系统 |
| CN111104367B (zh) * | 2019-12-13 | 2023-08-18 | 浪潮云信息技术股份公司 | 一种基于openstack卷启动虚拟机创建私有镜像的方法 |
| US20210311835A1 (en) * | 2020-04-03 | 2021-10-07 | Commvault Systems, Inc. | File-level granular data replication by restoring data objects selected from file system snapshots and/or from primary file system storage |
| US11372976B2 (en) | 2020-07-08 | 2022-06-28 | Hitachi, Ltd. | Accelerating method of snapshot investigation for rollback from ransomware |
| CN111813501B (zh) * | 2020-07-09 | 2025-07-08 | 腾讯科技(深圳)有限公司 | 一种数据删除方法、装置、设备及存储介质 |
| CN114546581A (zh) * | 2020-11-26 | 2022-05-27 | 华为技术有限公司 | 一种无服务容器启动方法及相关设备 |
| US11321196B1 (en) | 2021-02-05 | 2022-05-03 | Hitachi, Ltd. | Disaster recovery collaborated with storage system and backup appliance in hybrid cloud environment |
| CN112965783A (zh) * | 2021-02-24 | 2021-06-15 | 上海英方软件股份有限公司 | 一种使用存储快照备份虚拟机的系统及方法 |
| US12086614B2 (en) | 2021-10-25 | 2024-09-10 | Hitachi, Ltd. | System replication method in hybrid cloud environment |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8060476B1 (en) | 2008-07-14 | 2011-11-15 | Quest Software, Inc. | Backup systems and methods for a virtual computing environment |
| US8234469B2 (en) * | 2009-07-09 | 2012-07-31 | Microsoft Corporation | Backup of virtual machines using cloned virtual machines |
| US8438349B2 (en) * | 2009-08-21 | 2013-05-07 | Symantec Corporation | Proxy backup of virtual disk image files on NAS devices |
| US20110252208A1 (en) * | 2010-04-12 | 2011-10-13 | Microsoft Corporation | Express-full backup of a cluster shared virtual machine |
| US9507670B2 (en) | 2010-06-14 | 2016-11-29 | Veeam Software Ag | Selective processing of file system objects for image level backups |
| US8566542B1 (en) * | 2011-01-06 | 2013-10-22 | Hewlett-Packard Development Company, L.P. | Backup using storage array LUN level snapshot |
| US8832029B2 (en) * | 2011-02-16 | 2014-09-09 | Microsoft Corporation | Incremental virtual machine backup supporting migration |
| US9104331B2 (en) * | 2012-09-28 | 2015-08-11 | Emc Corporation | System and method for incremental virtual machine backup using storage system functionality |
| US9116846B2 (en) | 2013-06-10 | 2015-08-25 | Veeam Software Ag | Virtual machine backup from storage snapshot |
| US9377964B2 (en) * | 2013-12-30 | 2016-06-28 | Veritas Technologies Llc | Systems and methods for improving snapshot performance |
-
2013
- 2013-06-10 US US13/914,086 patent/US9116846B2/en active Active
-
2014
- 2014-06-10 CN CN201480045140.9A patent/CN105745624B/zh active Active
- 2014-06-10 ES ES14771616.1T patent/ES2653698T3/es active Active
- 2014-06-10 EP EP14771616.1A patent/EP3008600B1/en active Active
- 2014-06-10 DK DK14771616.1T patent/DK3008600T3/en active
- 2014-06-10 WO PCT/IB2014/001645 patent/WO2014199230A2/en not_active Ceased
-
2015
- 2015-07-20 US US14/804,138 patent/US9552168B2/en active Active
- 2015-10-08 NO NO15188928A patent/NO3014968T3/no unknown
-
2016
- 2016-12-15 US US15/380,608 patent/US9823877B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| US20170097776A1 (en) | 2017-04-06 |
| WO2014199230A3 (en) | 2015-04-16 |
| CN105745624B (zh) | 2018-12-07 |
| US20140365740A1 (en) | 2014-12-11 |
| US20150324144A1 (en) | 2015-11-12 |
| US9552168B2 (en) | 2017-01-24 |
| US9116846B2 (en) | 2015-08-25 |
| EP3008600A2 (en) | 2016-04-20 |
| US9823877B2 (en) | 2017-11-21 |
| NO3014968T3 (es) | 2018-02-17 |
| EP3008600B1 (en) | 2017-09-27 |
| WO2014199230A2 (en) | 2014-12-18 |
| DK3008600T3 (en) | 2018-01-08 |
| CN105745624A (zh) | 2016-07-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2653698T3 (es) | Copia de seguridad de máquina virtual a partir de una instantánea de almacenamiento | |
| US10152381B1 (en) | Using storage defragmentation function to facilitate system checkpoint | |
| US9928003B2 (en) | Management of writable snapshots in a network storage device | |
| US9430332B1 (en) | Systems and methods for enabling efficient access to incremental backups | |
| US20130311429A1 (en) | Method for controlling backup and restoration, and storage system using the same | |
| US10853185B1 (en) | Virtual machine image backup to exclude system page file | |
| US10678431B1 (en) | System and method for intelligent data movements between non-deduplicated and deduplicated tiers in a primary storage array | |
| US9274907B1 (en) | Decommissioning of virtual backup appliances | |
| US10042719B1 (en) | Optimizing application data backup in SMB | |
| US10496492B2 (en) | Virtual machine backup with efficient checkpoint handling based on a consistent state of the virtual machine of history data and a backup type of a current consistent state of the virtual machine | |
| US8560775B1 (en) | Methods for managing cache configuration | |
| US11068353B1 (en) | Systems and methods for selectively restoring files from virtual machine backup images | |
| WO2015054897A1 (zh) | 数据存储方法、数据存储装置和存储设备 | |
| US11157198B2 (en) | Generating merge-friendly sequential IO patterns in shared logger page descriptor tiers | |
| US10705733B1 (en) | System and method of improving deduplicated storage tier management for primary storage arrays by including workload aggregation statistics | |
| CN108551764A (zh) | 用于备份大型分布式横向扩展数据系统的系统和方法 | |
| CN105453039A (zh) | 用于在高输入/输出负载环境中即时恢复虚拟机的系统和方法 | |
| WO2014139463A1 (en) | Data compression using compression blocks and partitions | |
| US11620190B2 (en) | Techniques for performing backups using hints | |
| JP2017531892A (ja) | ブロックレベル記憶デバイスのスナップショットを実行するための改善された装置および方法 | |
| US9817585B1 (en) | Data retrieval system and method | |
| US11586354B2 (en) | Techniques for role assignment of components of a distributed application | |
| US11513902B1 (en) | System and method of dynamic system resource allocation for primary storage systems with virtualized embedded data protection | |
| WO2022061859A1 (en) | Application restore based on volatile memory storage across system resets | |
| WO2016194162A1 (ja) | 計算機システム |