BRPI0710003B1 - geração de cópias reservas consistentes com o pedido a nível hospedeiro de máquinas virtuais - Google Patents
geração de cópias reservas consistentes com o pedido a nível hospedeiro de máquinas virtuais Download PDFInfo
- Publication number
- BRPI0710003B1 BRPI0710003B1 BRPI0710003-5A BRPI0710003A BRPI0710003B1 BR PI0710003 B1 BRPI0710003 B1 BR PI0710003B1 BR PI0710003 A BRPI0710003 A BR PI0710003A BR PI0710003 B1 BRPI0710003 B1 BR PI0710003B1
- Authority
- BR
- Brazil
- Prior art keywords
- host
- virtual machine
- level
- copy
- volumes
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/128—Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/16—Protection against loss of memory 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 operation
- G06F11/1402—Saving, restoring, recovering or retrying
- 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 operation
- G06F11/1402—Saving, restoring, recovering or retrying
- 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 operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1466—Management of the backup or restore process to make the backup process non-disruptive
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- 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/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- 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/82—Solving problems relating to consistency
-
- 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)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
- Hardware Redundancy (AREA)
Abstract
geração de backups consistentes com o pedido a nível hospedeiro de máquinas virtuais servidor hospedeiro hospedando uma ou mais máquinas virtuais podendo fazer obackup dos volumes hospedeiros com uma ou mais máquinas virtuais instaladas no mesmo em uma maneira consistente com o pedido. em uma implementação, um solicitador a nível hospedeiro instrui uma unidade de escrita a nível hospedeiro para identificar quais máquinas virtuais se qualificam para backups consistentes com o pedido. o solicitador a nível hospe- deiro instrui, então, a unidade de escrita a nível hospedeiro para dar início aos backups na máquina virtual através de solicitadores a nível vinculado em cada máquina virtual apropriadamente configurada, em que as máquinas virtuais geram backups consistentes com o pedido no interior dos volumes da máquina virtual. o solicitador a nível hospedeiro dá início, então, aos instantâneos dos volumes no servidor no nível hospedeiro. os instantâneos anível de máquina virtual podem ser, então, restaurados a partir do interior dos instantâneos a nível hospedeiro dos volumes no servidor.
Description
(54) Título: GERAÇÃO DE CÓPIAS RESERVAS CONSISTENTES COM O PEDIDO A NÍVEL HOSPEDEIRO DE MÁQUINAS VIRTUAIS (51) IntCI.: G06F 15/16; G06F 12/16.
(30) Prioridade Unionista: 17/04/2006 US 11/405.236.
(73) Titular(es): MICROSOFT TECHNOLOGY LICENSING, LLC.
(72) Inventor(es): MICHAEL L. MICHAEL; WILLIAM L. SCHEIDEL; PAUL B. LUBER; P. ADRIAN OLTEAN; RAN KALACH.
(86) Pedido PCT: PCT US2007004183 de 15/02/2007 (87) Publicação PCT: WO 2007/130192 de 15/11/2007 (85) Data do Início da Fase Nacional: 08/10/2008 (57) Resumo: GERAÇÃO DE BACKUPS CONSISTENTES COM O PEDIDO A NÍVEL HOSPEDEIRO DE MÁQUINAS VIRTUAIS Servidor hospedeiro hospedando uma ou mais máquinas virtuais podendo fazer obackup dos volumes hospedeiros com uma ou mais máquinas virtuais instaladas no mesmo em uma maneira consistente com o pedido. Em uma implementação, um solicitador a nível hospedeiro instrui uma unidade de escrita a nível hospedeiro para identificar quais máquinas virtuais se qualificam para backups consistentes com o pedido. O solicitador a nível hospe- deiro instrui, então, a unidade de escrita a nível hospedeiro para dar início aos backups na máquina virtual através de solicitadores a nível vinculado em cada máquina virtual apropriadamente configurada, em que as máquinas virtuais geram backups consistentes com o pedido no interior dos volumes da máquina virtual. O solicitador a nível hospedeiro dá início, então, aos instantâneos dos volumes no servidor no nível hospedeiro. Os instantâneos anível de máquina virtual podem ser, então, restaurados a partir do interior dos instantâneos a nível hospedeiro dos volumes no servidor.
“GERAÇÃO DE CÓPIAS RESERVAS CONSISTENTES COM O PEDIDO A NÍVEL HOSPEDEIRO DE MÁQUINAS VIRTUAIS”
ANTECEDENTES
1. Antecedentes e Técnica Relevante
Da mesma forma que os sistemas computacionais apresentam uma crescente popularidade, assim cresceram também as necessidades para o armazenamento e obtenção de proteção de cópias dos arquivos eletrônicos e outras formas de comunicações geradas por usuários e as aplicações associadas com os mesmos. Em regra, os sistemas computacionais e os dispositivos correlatos geram arquivos a partir de uma variedade de motivos, tal 10 como no caso genérico de geração de um documento para processamento de palavras em um ambiente de trabalho, bêm comõa geração de um arquivo utilizado para finalidades de base de dados mais sofisticadas. Ainda, a maioria desses documentos pode incluir valiosos produtos de trabaího, ou informação sensível que devam ser protegidos. Portanto, apreciarse-á que ocorre uma variedade de motivos pelos quais uma organização desejaria um có15 pia reserva dos arquivos eletrônicos numa base regular, e, daí, gerando uma restauração confiável de um arquivo originalmente gerado quando preciso.
Uma vez que sistemas computacionais são desenvolvidos continuamente para configurações mais complexas de hardware e software, as complicações associadas com a proteção em cópia dessas configurações vieram a crescer também. Na sua forma mais sim20 pies, a proteção em cópia de um computador envolve simplesmente copiar-se a informação a partir de um disco ou volume do computador, e transferir esta informação junto a uma localização de cópia reserva. Contudo, a simples proteção em cópias de dados de um disco torna-se algo muito mais complexo quando se fazendo a cópia reserva de grandes grupos de dados em vários servidores junto a uma rede de trabalho, particularmente quando os 25 grupos de dados estão sendo continuamente alterados durante o processo de cópia reserva.
Por exemplo, algumas preocupações das grandes empresas, além da simples proteção em cópia dos dados, incluem a necessidade do armazenamento rápido, confiável e relativamente de maneira contínua dos dados de modo que eles também possam ser rapidamente recuperados. Preocupações adicionais incluem em como se ter acesso a vários dados do 30 servidor no primeiro instante, particularmente, porque cada servidor pode apresentar diferentes funções que podem torná-lo mais ou menos acessível junto a um dado programa de cópia reserva do que no caso de outro servidor.
Estes tipos de complicações na geração de cópias de proteção de dados do servidor podem ser particularmente dificultadas no ambiente servidor virtualizado. Em regra, um 35 ambiente de servidor virtual envolve o uso de um servidor hospedeiro, aonde uma ou mais “máquinas virtuais” possam ser instaladas. Essas máquinas virtuais caracterizam circunstâncias peculiares de um sistema operacional sendo instaladas em uma porção alocada dos recursos e espaço no disco do servidor hospedeiro (por exp., memória hospedeira), e assim, configurando um limite distinto da máquina. Então, cada máquina virtual poderá ser representada através de um único identificador de rede de trabalho, e assim apresentar-se separada e distinta na rede de trabalho a partir do próprio servidor hospedeiro. Ainda, cada má5 quina virtual pode apresentar também partições de armazenagens adicionais feitas no espaço hospedeiro alocado para a máquina virtual. Além do mais, adicionalmente a funcionar como uma máquina distinta do servidor hospedeiro, a máquina virtual pode funcionar também como sendo hospedeira de múltiplos drives ou volumes, a despeito da existência no(s) disco(s) físico(s) de um servidor hospedeiro. Conseqüentemente, pode-se notar que as má10 quinas virtuais podem ser utilizadas em uma variedade de maneiras importantes para distribuição mais eficiente dos recursos de hardware em uma empresa.
A despeito dessas vantagens, não é algo simples a obtenção de uma cópia básica dos volumes hospedeiros nos quais as máquinas virtuais estão instaladas e ter a plena utilização daqueles dados (por exp., com consistência e validade) caso necessário. Uma das 15 razões para estas dificuldades surge a partir da própria natureza das máquinas virtuais, pois espera-se que apresentem identidades distintas (por exp., incluindo sistemas operacionais distintos) com respeito às outras máquinas virtuais, e com respeito ao(s) servidor(es) hospedeiro^) correspondente(s). Por exemplo, o servidor hospedeiro não pode simplesmente instruir pedidos no interior da máquina virtual para se gerar uma cópia “consistente com o 20 pedido” de seus dados, uma vez que tais pedidos, via de regra, encontram-se sob o controle da máquina virtual. Assim, quando um hospedeiro gera uma cópia ou uma cópia de cópia reserva do volume (ou volumes) aonde a máquina virtual encontra-se instalada, os processos internos da máquina virtual podem continuar a funcionar, e para tanto, uma cópia da máquina virtual incluiría, igualmente, dados e o estado do arquivo, que permaneceríam váli25 dos para diferentes períodos de tempo. Ou seja, a cópia dos dados da máquina virtual não seria “consistente com o pedido”. Caso se fosse tentar a restauração em tal máquina virtual, ela não viria a funcionar adequadamente, se é que chegaria a funcionar.
Em regra, um cópia reserva “consistente com o pedido” significa que os pedidos inclusos nos processos de preparação da cópia reserva, e a produção dos arquivos de pedi30 dos a serem protegidos com cópia baseiam-se no que contém o disco físico, bem como no que está na sua memória. Para tanto, esses arquivos ou instantâneos a serem cópia reservaeados são consistentes com o estado atual do pedido, e são recuperáveis através do pedido em um ponto posterior. Em contraste, dados com “consistência bloqueada” referem-se a dados que sãa cópia reservaeados genericamente sem o benefício do envolvimento de 35 pedidos utilizados para a geração de dados no primeiro instante. Resulta que a produção primária durante um cópia reserva com consistência bloqueada compreende um grupo de dados idênticos aos dados encontrados no disco físico durante o processo de cópia reserva sem consideração pelo que se encontra na sua memória, e sem consideração pelo estado do pedido. Isto é semelhante à eliminação de dados de arquivos durante uma pane total do sistema, tal como, durante uma queda de potência ou uma re-alimentação, não existindo garantias de haver, por exemplo, consistência do pedido. Em particular, para certos ambientes operacionais complexos, particularmente aonde seja vital se garantir uma transição contínua tanto quanto o possível após um cópia reserva, dá-se preferência a um cópia reserva de consistência em consistência (ou seja, um sistema de arquivo e/ou pedido).
Ocorre uma variedade de maneiras para se gerar um cópia reserva consistente do volume de dados. Infelizmente, os sistemas convencionais que tentam gerar cópias reservas consistentes com o pedido de máquinas virtuais (e o correspondente gerenciamento dos volumesjTèm regra, não podem gerar de modo eficaz um cópia reserva consistente com o pedido sem antes darem pausa ou desligarem a máquina virtual. Isto resulta, tipicamente, em um indesejável volume de tempo inativo, o que, em algumas situações para certos softwares com “missões criticas” poderíam ser geradas dificuldades particulares para um administrador. Uma razão para isso é que o volume de interesse pode ser copiado enquanto não estão sendo processadas escritas adicionais junto ao volume, de modo que os dados gerados através do pedido sejam todos consistentes para o mesmo período de tempo. Naturalmente, em um ambiente aonde é importante o acesso prático, contínuo e eficaz dos dados, não é desejável se pausar ou desligar uma máquina virtual para se proceder a uma cópia de cópia reserva, e isso pode vir a gerar um desgaste dentro dos recursos primários de uma empresa.
Outras formas que uma empresa pode tentar para geração de cópias reservas consistentes com o pedido em uma máquina virtual é através da instalação de um agente de cópia reserva específico circunscrito a cada instante de uma dada máquina virtual. Em regra, um agente de cópia reserva será configurado para interagir com as unidades de escrita do pedido no interior do sistema operacional para geração de um cópia reserva consistente com o pedido, da mesma maneira conforme podería ser feito, normalmente, no nível hospedeiro para o-volume principal de servidores hospedeiros. Infelizmente, não é algo simples se instalar novos agentes de cópia reserva para cada máquina virtual. Por exemplo, tipicamente, uma organização irá necessitar adquirir um novo agente (ou licença)de cópia reserva em separado para cada máquina virtual, e daí, instalar cada agente de cópia reserva no interior da máquina virtual. Vê-se que isto pode representar uma dificuldade significativa em termos de custo e gastos com recursos (por exp., a inclusão de gerenciamento elevado) para grandes empresas que podem ter dezenas, centenas ou mesmos milhares de máquinas virtuais em funcionamento.
Consequentemente, ocorre um número de dificuldades associadas com a cópia reserva de máquinas virtuais que podem ser analisadas.
BREVE SUMÁRIO
Implementações da presente invenção proporcionam sistemas, métodos, e produtos de programas computacionais configurados para gerarem cópias reservas consistentes a nível hospedeiro em uma ou mais máquinas virtuais. Em particular, as implementações da presente invenção fornecem a habilidade de cópia reserva de um servidor hospedeiro correspondendo a uma ou mais máquinas virtuais utilizando solicitadores e unidades de escrita de cópia reserva em uma forma consistente, sem necessariamente incorrer em interrupções significantes junto à operação de uma ou mais máquinas virtuais. Em uma implementação, por exemplo, uma unidade de escrita com servidor hospedeiro(por exp., uma unidade de escrita VSS com servidor virtual) instrui cada máquina virtual a gerar um ou mais instantâneos consistentes com o pedido a partir do volume de dados ao nível da própria máquina virtual. O pedido de cópia reserva no servidor hospedeiro serve também para gerar instantâneos dos volumes a nível hospedeiro aonde uma ou mais máquinas virtuais estão instaladas(por exp., um arquivo seu em Disco Rígido Virtual). O servidor hospedeiro pode então restabelecer os instantâneos a nível de máquina virtual previamente gerados do interior dos instantâneos a nível de hospedeiro, e concluir os processos de cópia reserva. _
Por exemplo, um método a partir da perspectiva de um servidor hospedeiro para geração de um cópia reserva consistente do volume de dados da máquina virtual sem a necessidade de se solicitar a interrupção ou re-alimentação de uma ou mais máquinas virtuais, pode envolver a identificação de, pelo menos, uma máquina virtual apresentando um ou mais componentes para os processos de cópia reserva envolvendo a unidade de escrita. O método pode envolver ainda o envio de uma instrução para cada uma ou mais máquinas virtuais para preparação de uma cópia consistente com o pedido, à nível de máquina virtual. O método pode envolver também identificação de quais operações de instantâneos foram concluídas em, pelo menos, uma máquina virtual. Além do mais, o método pode envolver a geração de um ou mais instantâneos a nível hospedeiro de um ou mais volumes hospedeiros aonde uma ou mais máquinas virtuais estejam instaladas. O método pode ainda envolver- restauração da cópia consistente com o pedido dos volumes da máquina virtual feito por pelo menos uma máquina virtual.
Em contraste a isso, um método, a partir da perspectiva de uma máquina virtual de geração de um cópia reserva consistente para um ou mais volumes em máquina virtual em resposta as instruções a partir de uma unidade de escrita hospedeira do servidor hospedeiro, pode envolver o recebimento de uma solicitação a partir de uma unidade de escrita hospedeira para identificação dos componentes de software disponíveis. O método pode envolver também o recebimento de uma solicitação a partir da unidade de escrita hospedeira para obter uma cópia de um ou mais volumes hospedados pela máquina virtual com, pelo menos, um dos componentes de software disponíveis. O método pode envolver ainda o envio de instruções para uma ou mais unidades de escrita de pedido na máquina virtual para preparo correspondente de um ou mais pedidos na máquina virtual para cópia reserva. Ainda mais, o método pode envolver o envio de um sinal junto à unidade de escrita hospedeira pelas quais preparações de instantâneo tenham sido completadas para cada um ou mais volumes hospedados no interior da máquina virtual.
Este Sumário é fornecido para introduzir uma seleção de conceitos, em uma forma simplificada, sendo descritos mais adiante na seção Descrição Detalhada. Este Sumário não pretende identificar características chaves ou essenciais da matéria em questão, ora reivindicada, nem se pretende utilizá-lo como um auxiliar na determinação do escopo da matéria 10 em-questão reivindicada.
~ Características e vantagens adicionais da invenção serão estabelecidas no relatório que se segue, e em parte serão óbvias a partir do relatório descritivo, ou poderão ser assimiladas através da prática da invenção. As características e vantagens da invenção podem ser levadas a termo e obtidas por meio dos instrumentos e cominações particularmente salien15 tadas nas reivindicações apensas. Essas e outras características da presente invenção tornar-se-ão mais plenamente evidentes a partir da descrição a seguir e das reivindicações apensas, ou poderão ser assimiladas através da prática da invenção conforme estabelecida daqui em diante.
BREVE DESCRIÇÃO DOS DESENHOS
De forma a descrever-se a maneira pela qual as vantagens e características acima citadas e outras vantagens e características da presente invenção podem ser obtidas, destaque será dado a uma descrição mais particular da invenção brevemente resumida acima, com menção as suas modalidades específicas que são ilustradas nos desenhos em anexo. Compreendendo que esses desenhos descrevem somente modalidades típicas da invenção 25 e não devem ser considerados de escopo limitado, a invenção será descrita e explicada com especificidade adicional e detalhada através do uso dos desenhos acompanhantes, aonde:
a Figura 1A ilustra um diagrama esquemático genérico de acordo com uma implementação da presente invenção aonde um pedido de cópia reserva a nível hospedeiro identifica qual de uma ou mais máquinas virtuais poderá ser cópia reservaeada em uma maneira 30 consistente;
a Figura 1B ilustra os componentes da Figura 1A, aonde o servidor hospedeiro inicializa os processos de cópia reserva em conjunto com um solicitador vinculado a nível de máquina virtual em uma máquina virtual, de acordo com uma implementação da presente invenção;
a Figura 1C ilustra os componentes das Figuras de 1A-1B, aonde o solicitador com servidor hospedeiro gera instantâneos dos volumes hospedeiros que são instalados junto a uma ou mais máquinas virtuais, de modo que os instantâneos a nível hospedeiro contenham também ο volume de dados da máquina virtual, que por sua vez contêm os instantâneos a nível de máquina virtual executados anteriormente pelas máquinas virtuais;
a Figura 1D ilustra um diagrama esquemático genérico, de acordo com uma implementação da presente invenção, aonde o pedido de cópia reserva ilustrado nas Figuras de 1A-1C restaura os dados da cópia a nível hospedeiro apresentando dados da cópia a nível de máquina virtual ali contidos; e a Figura 2 ilustra fluxogramas de métodos compreendendo uma série de atos de acordo com a implementação da presente invenção a partir das perspectivas de um servidor hospedeiro e de uma máquina virtual para fornecimento de cópias reservas consistentes com o pedido de máquinas virtuais instaladas em um ou mais volumes no servidor hospedeiro.
DESCRIÇÃO DETALHADA
As implementações da presente invenção estendem-se a sistemas, métodos, e produtos de programas computacionais configurados para gerarem consistentes cópias reservas a nível hospedeiro em uma ou mais máquinas virtuais. Em particular, as implementações da presente invenção fornecem a capacidade de cópia reserva de um servidor hospedeiro correspondendo a uma ou mais máquinas virtuais utilizando os solicitadores e as unidades de escrita de cópia reserva existentes em uma maneira consistente, sem necessariamente se incorrer em interrupções significativas junto a operação de uma ou mais máquinas virtuais. Em uma implementação, por exemplo, uma unidade de escrita com servidor hospedeiro (por exp., uma unidade de escrita VSS com servidor virtual) instrui cada máquina virtual para geração de um ou mais instantâneos consistentes com o pedido de seu próprio volume de dados a nível de máquina. O pedido de cópia reserva no servidor hospedeiro também gera instantâneos dos volumes a nível hospedeiro aonde uma ou mais máquinas virtuais (por exp., um arquivo em Disco Rígido Virtual das mesmas) são instaladas. O servidor hospedeiro pode então restabelecer os instantâneos a nível de máquina virtual gerados previamente a partir do interior dos instantâneos, e concluir os processos de cópia reserva.
Poderá se apreciar após a leitura deste relatório descritivo e das reivindicações que um servidor hospedeiro (por exp., através de uma unidade de escrita com servidor virtual) pode também ser capaz de gerar, não obstante as cópias reservas consistentes de máquinas virtuais, mesmo se elas não puderem ser prontamente identificadas como estando configuradas para processos de cópia reserva de consistência em consistência(por exp. sistema de arquivo e/ou pedido). Por exemplo, as máquinas virtuais podem ser desligadas ou então não estarem em funcionamento, ou as máquinas virtuais podem não estarem instaladas com os componentes de hardware e software apropriados. Não obstante, o servidor hospedeiro pode então utilizar diferentes componentes para copiar os volumes hospedeiros e as máquinas virtuais correspondentes em uma maneira que preserva a condição, pausando ou interrompendo as máquinas virtuais, pelo menos, momentaneamente. A unidade de escrita do servidor hospedeiro pode daí viabilizar que as máquinas virtuais finalizem, após ter-se efetuado o instantâneo dos volumes hospedeiros.
Apreciar-se-á após a leitura deste relatório descritivo e reivindicações, que as implementações da presente invenção podem fornecer cópias reservas consistentes de máquinas virtuais em uma forma que minimiza o tempo de inatividade, e sem necessitar-se da aquisição e instalação de novos agentes de cópia reserva. Para tanto, empresas que implementam soluções por máquina virtual podem proporcionar uma melhor disponibilidade de dados, máquina virtual, e servidor hospedeiro em um sistema de rede de trabalho em uma maneira que minimiza os gastos de recursos primários de uma empresa.
Consequentemente, a Figura 1A ilustra um servidor hospedeiro 100 de exemplo configurado para gerenciar os volumes 110 e 115. Instalados nos volumes 110 e 115 compreendem máquinas virtuais 120 e 130, respectivamente. Como forma de explicação, embora cada máquina virtual 120, 130 possa ser interpretada como um sistema computadorizado compartimentado por nível, cada máquina virtual 120, 130 pode ser pensada também como uma coleção de “arquivos” (por exp., uma Configuração de Máquina Virtual, ou arquivo “VMC”, e um ou mais arquivos em disco rígido virtual - “VHD”) quando vistas a partir do nível hospedeiro 100. De qualquer forma, embora a Figura 1A ilustre uma máquina virtual por volume, isto não se faz necessário, e podem ocorrer de haver várias máquinas virtuais instaladas em qualquer dado volume no servidor hospedeiro 100. Similarmente, cada máquina virtual pode vasculhar múltiplos volumes em um ou mais servidores hospedeiros.
Além do mais, cada máquina virtual pode manejar drives adicionais, que compreendem alocações efetivas de volumes adicionais no interior da(s) alocação(ões) de volume(s) aonde esteja a dada máquina virtual instalada. Por exemplo, a Figura 1A mostra que a máquina virtual 120 também gerencia um ou mais discos físicos virtuais, que, não obstante, compreendem parte do volume hospedeiro 100. Em regra, cada disco físico virtual pode ser representado também por um arquivo, tal como um arquivo em Disco Rígido Virtual (i.é, VHD 123,127, etc.). Em particular, o arquivo VHD é exposto na forma de um disco físico no interior da máquina virtual que pode ainda compreender de um ou mais volumes adicionais (não apresentados) ali contidos, onde cada volume tem o seu próprio Identificador Global Único (“GUID”). Assim, o arquivo VHD 123 (que nesta ilustração contém somente um volume para simplicidade) pode apresentar um volume que aparece como drive “m:\” - ou algum outro identificador único apropriado para um dado sistema operacional - enquanto o VHD 127 (que também neste caso inclui somente um volume) pode apresentar um volume que aparece na rede de trabalho como drive “n:\”, e assim por diante.
Em acréscimo, a Figura 1A mostra que o hospedeiro 100 compreende do pedido de cópia reserva 105, que pode ser referido também como um “solicitador hospedeiro”, ou “so8 licitador a nível hospedeiro”. Em regra, o pedido de cópia reserva 105 compreende uma série de instruções executáveis por computador configuradas para direcionarem os eventos de cópia reserva para um hospedeiro 100. Em uma implementação, tal como no ambiente operacional MICROSOFT, por exemplo, o pedido de cópia reserva 105 compreende um Solicitador de Serviço de Cópias Negativas do Volume(“ VSS”). A Figura 1A mostra também que o pedido de cópia reserva 105, por sua vez, pode ser configurado para direcionar suas instruções de cópia reserva através da unidade de escrita hospedeira 125, que pode ser referida também como uma “unidade de escrita hospedeira”, “unidade de escrita a nível hospedeiro” ou “unidade de escrita VSS com servidor virtual a nível hospedeiro”.
Em regra, a unidade de escrita hospedeira 125 compreende de uma série de instruções executáveis por computador configuradas para implementarem instruções de cópia reserva recebidas a partir do pedido de cópia reserva 105. Em uma implementação, tal como no ambiente MICROSOFT , por exemplo,, a unidade de escrita hospedeira 125 pode incluir uma Unidade de Escrita VSS, tal como a unidade de escrita VSS utilizada com o SERVIDOR VIRTUAL MICROSOFT. Para fins explicativos, a referência feita aqui aos componentes MICROSOFT são no sentido de exemplo somente. Em particular, apreciar-se-á após a leitura deste relatório descritivo e das reivindicações que os componentes, módulos, sistemas, e funções aqui descritos podem ter aplicações junto a uma ampla variedade de componentes, módulos, e funções utilizadas em outros ambientes operacionais.
De modo a se realizar cópias reservas consistentes das máquinas virtuais, o hospedeiro 100 irá, em regra, necessitar determinar qual das máquinas virtuais hospedeiras pode relatar os componentes apropriados possíveis, configurados para executar cópias reservas consistentes em primeiro lugar. Como uma questão preliminar, dá-se continuidade a referência feita aqui para processos instantâneos ou cópias reservas “consistentes com o pedido”. Apreciar-se-á, contudo, que os processos para cópia reserva consistente com o pedido compreendem somente um exemplo das operações de cópias reservas “consistentes”, de acordo com as implementações da presente invenção. Outros exemplos de processos de cópias reservas consistentes incluem o sistema de arquivo e/ou os processos de cópia reserva consistentes com bloqueios.
Em qualquer eventualidade, e com referência aas cópias reservas consistentes com o pedido, por exemplo, algumas máquinas virtuais podem ser instaladas com as unidades de escrita e solicitadores apropriados para a realização de cópias reservas consistentes com o pedido, enquanto que outras máquinas virtuais podem ser instaladas sem as unidades de escrita e solicitadores apropriados. Para aquelas máquinas virtuais funcionando sem tais componentes apropriados, o hospedeiro 100 pode ainda proceder aa cópia reserva daquelas máquinas virtuais, mas podendo não proceder necessariamente da mesma maneira como feito pelas com os componentes apropriados. Em particular, o hospedeiro 100 pode ser configurado para realizar cópias reservas daquelas máquinas virtuais que apresentam os componentes apropriados sem tempo inativo ou interrupção (ou virtualmente nenhum deles), e são configuradas alternativamente para cópias reservas daquelas máquinas virtuais que não apresentam os componentes apropriados (i.é, incompletas ou fora de operação) com pelo menos algum tempo de inatividade ou com interrupção.
Conseqüentemente, a Figura 1A mostra o pedido de cópia reserva 105 (i.é, o “solicitador hospedeiro”) iniciando os serviços de cópia reserva, pelo menos em parte, através de envio de solicitação 103 à unidade de escrita hospedeira 125. Neste caso, a solicitação 103 instrui a unidade de escrita hospedeira 125 para identificar quais máquinas virtuais podem ter cópias reservas realizados sem “tempos de inatividades”. Por exemplo, a solicitação 103 instrui unidade de escrita hospedeira 125 para se assegurar quais das máquinas virtuais 120,130, etc. apresentam as unidades de escrita e/ou solicitadores vinculados apropriados para o desempenho de um cópia reserva interno consistente com o pedido. Em uma implementação no ambiente MICROSOFT, por exemplo, tais componentes podem incluir aqueles que sejam compatíveis com as “Adições VM” empregadas conforme uma infraestrutura interna do SERVIDOR VIRTUAL MICROSOFT.
Esses e outros componentes de máquina virtual configurados de forma semelhante são configurados para interagirem a partir do interior de uma máquina virtual (e responderem as instruções dali derivadas), por exemplo, uma unidade de escrita com servidor virtual a nível hospedeiro. A Figura 1A mostra também que, mediante recebimento de uma solicitação 103, a unidade de escrita hospedeira 125 pode comunicar-se via mensagem 111(que pode ser, por exemplo, uma Interface de Programa de Pedido privado - “API privado) com a máquina virtual 120, e identificar que máquina virtual 120 apresenta componentes referentes à “versão x”. Por exemplo, a Figura 1A mostra que a máquina virtual 120 inclui o “Solicitador Vinculado 140”.
A Figura 1A mostra também que a unidade de escrita hospedeira 125 comunica-se ainda com a máquina virtual 130 (porexp., via a mensagem 111), e que a unidade de escrita hospedeira 125 identifica que a máquina virtual 130 apresenta componentes referidos à “versão y”. Neste caso particular, a “versão y” significa que a máquina virtual 130 não apresenta os componentes apropriados para a consistência dos processos de cópia reserva. Em resposta as suas comunicações com as máquinas virtuais (por exp., 120,130,etc.), a unidade de escrita hospedeira 125 pode enviar uma ou mais mensagens de suas respostas coletadas de volta ao pedido de cópia reserva 105. Por exemplo, a unidade de escrita envia a mensagem 113, que indica que máquina virtual 120 compreende a versão “x”, e inclui os componentes apropriados, e indica ainda que máquina virtual 130 compreende a versão “y”, mas não inclui os componentes apropriados.
Mediante este recebimento, a Figura 1A mostra que pedido de cópia reserva 105 pode pegar a mensagem 113, e efetuar suas próprias determinações em quais máquinas virtuais realizar a cópia reserva, e em quais delas não realizar a cópia reserva. Por exemplo, a Figura 1A mostra que o módulo de determinação 107 passa a informação da mensagem 113, posiciona a máquina virtual 120 na categoria de “VMS com Cópia reserva sem Tempo de Inatividade”, e posiciona a máquina virtual 130 na categoria “VMS com Cópia reserva com Algum Tempo de Inatividade” (ou VMS sem realização de cópia reserva). Em implementações alternativas, a unidade de escrita hospedeira 125 simplesmente procede as suas próprias determinações sobre o que deveria ou não ser cópia reservaeado ( ou cópia reservaeado com algum tempo de inatividade), e daí apresenta tais categorizações de volta ao pedido de cópia reserva 105. Em qualquer evento, as categorizações ilustradas não significam necessariamente que a máquina virtual 130 não pode ser cópia reservaeada, por si só. Na maioria dos casos, isto simplesmente significa que a máquina virtual 120 não pode ser cópia reservaeada em uma maneira apropriadamente consistente, e a máquina virtual 130 pode ser configurada somente para cópia reserva em uma maneira consistente com algum tempo de inatividade. Após a categorização de cada máquina virtual, o pedido de cópia reserva 105 inicia-se implementando-se os processos de cópia reserva.
Conforme mostrado na Figura 1B, por exemplo, o pedido de cópia reserva 105 envia instruções 117a para a unidade de escrita hospedeira 125. As instruções 117a, por sua vez, dirão à unidade de escrita hospedeira 125 para iniciar os processos de cópia reserva consistentes com o pedido, pelo menos, com respeito a máquina virtual 120. A unidade de escrita hospedeira 125 prepara então sua própria comunicação 117b, que informa a uma máquina virtual para dar início aos processos de cópia reserva “envolvendo a unidade de escrita”. A unidade de escrita hospedeira 125 envia, então, uma mensagem 117b para cada máquina virtual (por exp., 120) indicada pelo pedido de cópia reserva 105, e cada máquina virtual indicada por sua vez recebe a mensagem 117b através de seu solicitador vinculado correspondente.
Por exemplo, a Figura 1B mostra que o solicitador vinculado 140 da máquina virtual 120 recebe a mensagem 117b. Em uma implementação, a unidade de escrita hospedeira 125 pode comunicar-se (por exp., mensagem 111, 117b, etc.) com o solicitador vinculado 140 através de um ou mais APIs privados, através de Chamadas de Procedimento Remoto (“RPCs”) ou procedimentos do gênero, embora isto não seja necessário em todas implementações. Em outras implementações, tal como caso a unidade de escrita hospedeira 125 e o solicitador vinculado 140 estejam localizados em localidades de rede de trabalho separadas (ou mesmo em domínios diferentes), a unidade de escrita hospedeira 125 pode comunicar-se com outras interfaces e ou componentes de comunicação apropriados. Em particular, apreciar-se-á que implementações da presente invenção podem também ser praticadas mesmo quando necessitando-se da cópia reserva de uma máquina virtual a partir de uma localidade remota para uma Ampla Área de Rede de trabalho.
De qualquer forma, e uma vez acionado , o solicitador vinculado 140 dá início aos processos de cópia reserva de seus volumes de acordo com as instruções iniciais do pedido de cópia reserva 105. Conforme mostrado na Figura 1B, por exemplo, o solicitador vinculado 140 envia uma mensagem interna à máquina virtual 117c para pedidos instalados em quaisquer volumes gerenciados pela máquina virtual 120. A mensagem 117c pode incluir instruções para cada unidade de escrita de pedido (por exp., uma unidade de escrita VSS, não mostrada) para preparo dos processos de cópia reserva consistentes com o pedido de cada volume gerenciado no interior dos volumes contidos nos seus discos físicos(i.é, representados por arquivos VHD 123,127). Em regra, cada unidade de escrita de pedido pode compreender de instruções executáveis por computador que podem ser inseridas nos serviços e pedidos no interior da máquina virtual, e os quais auxiliam no fornecimento de cópias reservas consistentes com o pedido dos dados do pedido.
Para pedidos que serão executados quando o solicitador 117c os receber, a unidade de escrita do pedido pode responder, por exemplo, através da preparação de seus estoques de dados, garantindo que não ocorra nenhuma escrita no volume (por exp., 123, 127) enquanto que está sendo criado o instantâneo. Para tornar os dados consistentes no disco, a unidade de escrita do pedido pode extrair sua memória intermediária do disco, ou apagar dados na memória do disco. Adicionalmente, a unidade de escrita do pedido pode fornecer informação sobre o nome do pedido, ícones, arquivos para inclusão ou exclusão, e uma estratégia para restabelecimento dos arquivos. Para pedidos que não estão sendo executados, a unidade de escrita de pedido correspondente pode não responder a mensagem 117c, e o solicitador vinculado 140 pode assumir então que todos os dados manipulados pelas unidades de escrita de pedido no volume apresentam-se consistentes, as bases de dados são encerradas, e nenhum esforço a mais é preciso para execução da cópia reserva.
Em regra, uma unidade de escrita de pedido, de acordo com uma ou mais implementações da presente invenção, pode estar associada com um ou mais componentes. Cada componente, por sua vez, pode compreender de um grupo de arquivos (por exp., uma base de dados e um grupo de arquivos de registro) que podem ser copiados no seu todo. Assim, cada unidade de escrita de pedido irá necessitar de fornecer dados de cada componente e de cada arquivo correspondente do componente para um serviço de cópia reserva apropriado (por exp., um solicitador de máquina virtual - por exp., solicitador vinculado 140). Cada unidade de escrita de pedido pode fornecer ainda informação sobre a restauração dos dados em uma base de componente para componente (e, portanto de arquivo-componente para arquivo-componente). Em uma implementação, por exemplo, a unidade de escrita hospedeira 125 pode fornecer uma lista de arquivos utilizados para manter a consistência da informação em torno das máquinas virtuais gerenciadas (por exp., 120,130, etc.). A unidade de escrita hospedeira 125 pode comunicar, por exemplo, para cada máquina virtual, um trajeto de configuração de arquivos, quaisquer trajetos de um arquivo em disco rígido virtual, etc.
Em qualquer eventualidade, e em resposta as instruções 117c, a Figura 1B mostra que as unidades de escrita de pedidos correspondentes no interior dos volumes 123 e 127 produzem um estado consistente de pedido para seu volume de dados nos mesmos. O volume de dados comunicados através de pedidos relevantes para o volume no interior do arquivo em disco físico correspondente (por exp., VHDs 123, 127) são abrangidos nos instantâneos do volume. Por exemplo, a Figura 1B mostra que o volume de dados 145 no VHD 123 são copiados como “cópias limpas de dados” 155, e dados 150 no VHD 127 são copiados como “cópias limpas de dados “160. Em regra, essas cópias “limpas” de dados 155,160 representam cópias consistentes (por exp., cópias negativas do volume) dos dados no interior da cópia do volume vinculado, e , em regra, não constituem cópias separadas do próprio instantâneo. Em particular, as “cópias limpas” 155, 160 compreendem essencialmente cópias consistentes com o pedido do volume de dados no interior dos instantâneos contidos nos arquivos em Disco Rígido Virtual (VHDs) 123 e 127, respectivamente (Figura 1A).
Uma vez que cada máquina virtual apropriadamente configurada (por exp., 120) tenha feito sua própria cópia interna (ou “limpa”) consistente com o pedido a partir de seus volumes no disco físico (por exp., cópia 155 dos dados 145), a unidade de escrita hospedeira 125 pode viabilizar que o pedido de cópia reserva 105 efetue a produção de instantâneos dos volumes hospedeiros (por exp., 110) aonde as máquinas virtuais apropriadamente configuradas (por exp., 120) estejam instaladas. O volume de dados da máquina virtual no interior desses instantâneos a nível hospedeiro, contudo, não se apresentam necessariamente consistentes com o pedido (i.é, “sujos” ou “consistentes com bloqueios”).
Em regra, cópias “sujas” são aquelas que não podem ser garantidas como sendo consistentes com o pedido com respeito ao volume de dados da máquina virtual, pelo menos, em parte, uma vez que estas não implicam nos processos de instantâneos envolvendo unidades de escrita no interior das máquinas virtuais. Por exemplo, a unidade-hospedeira 100 pode ser utilizada pelas unidades de escrita de pedido a nível hospedeiro (por exp., unidade de escrita hospedeira 125) junto ao volume de dados 110 para cópia reserva com os processos envolvendo as unidades de escrita, porém, conforme previamente mencionado, essas unidades de escrita de pedido a nível hospedeiro somente irão copiar a integridade dos arquivos na máquina virtual conforme eles sejam observados pela unidade hospedeira. Resulta que, mesmo caso se utilizando as unidades de escrita de pedido a nível hospedeiro para gerar-se cópias consistentes com o pedido do volume de dados a nível hospedeiro, cada máquina virtual sublimada pode passar por várias mudanças de dados no período de produção da cópia reserva a nível hospedeiro do volume 110.
Por exemplo, a Figura 1C mostra que a unidade de escrita hospedeira 125 envia a mensagem 157 para o pedido de cópia reserva 105, em que a mensagem 157 indica que a cópia reserva das maquinas virtuais (por exp., 120) encontra-se finalizado. Para tanto, o pedido de cópia reserva 105 pode dar continuidade na execução de instantâneos a nível hospedeiro do volume hospedeiro 110 (e também do volume 115, etc, caso seja apropriado). Em resposta, a Figura 1C mostra neste exemplo que o pedido de cópia reserva 105 dá início (por exp., sinal 1350 aos processos de cópia reserva nos volumes 110,115,etc. Em uma implementação, por exemplo, o solicitador hospedeiro 105 dá início aos processos de cópia reserva envolvendo as unidades de escrita e produz uma cópia consistente com o pedido dos dados nos volumes a nível hospedeiro 110, 115 (i.é, consistência com-o pedido à parte dos arquivos na máquina virtual) através de um componente VSS a nível hospedeiro (não mostrado).
Por exemplo, a Figura 1C mostra que a unidade hospedeira 100 gera uma cópia 167, 173 dos volumes hospedeiros 110, 115. Os instantâneos 167, 173 incluem também cópias dos arquivos VHD da máquina virtual ali contidos (i.é, arquivo VHD 123 no interior do volume 110, etc.). Uma vez que, durante o instantâneo a nível hospedeiro, as máquinas virtuais 120, 130 não apresentam suas unidades de escritas correspondentes envolvidas nos processos de instantâneos, os instantâneos a nível hospedeiro, mais recentes, incluem volume de dados VHD (por exp., 156, 161) referente aos volumes a nível de máquina virtual que se apresentam sem consistência com o pedido. Não obstante, uma vez que a máquina virtual em questão já tenha executado uma cópia consistente com o pedido nos seus volumes, os dados VHD 156 no interior da cópia a nível hospedeiro 167 incluem o instantâneo 155 consistente com o pedido previamente gerado (i.é, gerado na máquina virtual). De forma similar, os dados VHD 161 no interior da cópia 167 a nível hospedeiro incluem o instantâneo 160 consistente com o pedido previamente gerado (i.é, gerado pela máquina virtual). Conforme mencionado acima, os dados VHD 156, 161 no interior da cópia a nível hospedeiro 167 (também 173) dos arquivos VHD 123, 127 são, em regra, consistentes com bloqueios no seu todo.
Diante da geração de instantâneos a nível hospedeiro 167, 173 dos volumes a nível hospedeiro, a unidade hospedeira 100 irá recuperar o instantâneo a nível da máquina virtual a partir do interior dos instantâneos do volume 167, 173 a nível hospedeiro. Em uma implementação, isto envolve a reversão dos dados instantâneos VHD a nível hospedeiro 156,161 de volta aos dados instantâneos 155, 160 a nível de máquina virtual correspondentes. Para isto acontecer, a unidade de escrita hospedeira 125 pode inicialmente instalar esses instantâneos a nível de máquina virtual e a nível hospedeiro no interior do sistema de arquivos utilizando qualquer número de componentes apropriados para exposição dos dados sublimados. Por exemplo, o pedido de cópia reserva 105 pode configurar a unidade de escrita
125 para possibilitar que os instantâneos hospedeiros 167, 173, etc. (e os instantâneos de arquivos VHD sublimados) sejam capazes de escrita (ao invés de leitura somente). Além do mais, a unidade de escrita hospedeira 125 pode obter aquelas IDs dos dispositivos para os instantâneos a nível hospedeiro, e os utilizarem para identificar as diferentes “IDs dos Dispositivos”” correspondendo aos arquivos VHD embutidos (por exp., 123,127).
Mediante exposição dos arquivos VHD da máquina virtual a partir do interior dos instantâneos 167, 173 a nível hospedeiro capazes de serem escritos, o servidor hospedeiro 10 pode, então, instalar cada ID de dispositivo correspondendo a um arquivo VHD, de modo que cada arquivo VHD apresenta-se como um disco rígido a nível hospedeiro. Em particular, a unidade de escrita hospedeira 125 pode utilizar as IDs dos dispositivos-para os arquivos VHD 123, 127 no interior da cópia hospedeira em conjunção^om unTcomponente do instalador de imagem para identificar cada volume no interior dos arquivos VHD 123 e 127 . Por exemplo, a Figura 1C mostra que o servidor hospedeiro (por exp., via a unidade de escrita hospedeira 125) envia instruções 175 para instalação das IDs dos dispositivos, incluindo como argumentos a ID do dispositivo para o arquivo VHD 123 e para o arquivo VHD 127 . Em uma implementação com respeito em particular ao ambiente operacional MICROSOFT, por exemplo, a unidade hospedeira 100 pode utilizar um componente “Instalador de Imagem VHD” para recepção e execução das instruções de instalação 175.
A instalação dos arquivos VHD 123, 127 a partir do interior da cópia hospedeira 167, por sua vez, pode expor os sistemas operacionais dentro desses arquivos VHD, o que, por sua vez, possibilita a que os instantâneos a nível de máquina virtual 155, 160 sejam expostos no servidor hospedeiro 100. Em particular, a instalação dos arquivos VHD 123, 127 a partir do interior da cópia hospedeira 167 do volume 110, neste caso, expõe os instantâneos a nível de máquina virtual 155, 160 inseridos nos diferentes dados VHD 156,161 da cópia hospedeira 167. Assim, a Figura 1C mostra também que a unidade hospedeira 100 instala o arquivo VHD 123 inserido no instantâneo hospedeiro 167 como drive “x:\”, expondo os dados VHD 156, e expondo ainda os dados instantâneos 155 a nível de máquina virtual mais recentes ali gerados; e, ainda, instala o arquivo VHD 127-a partir do interior da cópia hospedeira 167 como drive “y:\”, aonde o instantâneo hospedeiro 167 inclui também os dados VHD 161, que apresentam expostos os dados instantâneos 160 a nível de máquina virtual mais recentes ali gerados.
Diante do pedido de cópia reserva 105 ter sido instalado nos arquivos VHD 123, 127 a partir do interior da cópia hospedeira 167, o pedido de cópia reserva 105 pode, agora, reverter os dados VHD 156,161 da cópia 167 a nível hospedeiro de volta aos dados VHD 155,160 dos instantâneos do volume a nível de máquina virtual. Conforme mostrado na Figura 1D, por exemplo, o pedido de cópia reserva 105 utiliza a interface de componente 185 (por exp., uma interface de componente VSS) para reverter os dados instantâneos sujos e limpos no interior dos drives “x” e “y”. Em uma implementação, o pedido de cópia reserva 105 utiliza a interface 185 para, simplesmente, deletar ou re-escrever os dados VHD 156,161, e substituí-los com os dados VHD 155,160 correspondentemente limpos.
Uma vez efetivada esta substituição, o pedido de cópia reserva 105 terá não somente corrigido ou ajustado ( ou seja, revertido, substituído) os dados instantâneos dos arquivos VHD 123,127, mas também alterado todos os instantâneos 167 a nível hospedeiro, de modo que o volume de dados a nível de máquina virtual sublimados apresentam-se, agora, plenamente consistentes. Ou seja, todos os dados da máquina virtual no interior dos instantâneos a nível hospedeiro podem agora ser também considerados como consistentes com o pedido. Além do mais, o controle dos instantâneos à nível de máquina virtual 155,160 foram colocados sob o controle do processo de cópiíTreservar hospedeiro 100. Assim, quando a unidade hospedeira 100 executa seus próprias cópias reservas consistentes com o pedido a partir de seus instantâneos do volume, este cópia reserva a nível hospedeiro pode agora incluir um cópia reserva consistente com o pedido a partir de cada máquina virtual configurada apropriadamente.
Os processos e componentes identificados acima são descritos, primariamente, para o caso aonde as máquinas virtuais identificadas (por exp., 120) proporcionam uma resposta que indica configuração com os componentes de software apropriados para a geração de um cópia reserva consistente. Especificamente, tais máquinas virtuais (por exp., 120) podem ser cópia reservaeadas com pouco ou nenhum tempo de inatividade. Conforme mencionado previamente, contudo, podem ocorrer circunstâncias alternativas pelas quais uma dada máquina virtual não fornece nenhuma resposta, por não se encontrar em funcionamento, ou fornece uma resposta que indica que não foi configurada para realização de cópias reservas consistentes. Por exemplo, a máquina virtual 130 pode estar executando num sistema operacional que não inclua certos componentes de software necessários, tais como as unidades de escrita do pedido apropriadas (por exp., a versão correta de um serviço de cópia negativa), um solicitador vinculado apropriado (por exp., 140) ou algo similar. Em tais circunstâncias alternativas, as implementações da presente invenção podem ainda proporcionar, pelo menos, cópias reservas consistentes com o bloqueio das máquinas virtuais (por exp., 130) que podem ou não necessitar, pelo menos, algum tempo de inatividade subsequente, caso urgências posteriores necessitem de garantias quanto à consistência dos dados.
Por exemplo, a unidade de escrita hospedeira 125 pode convocar uma interface de comunicação (não mostrada) e instruí-la a salvar todo o estado da máquina virtual 130 (e/ou para outras máquinas virtuais similarmente limitadas). Em uma implementação com respeito em particular ao ambiente operacional MICROSOFT, por exemplo, a unidade de escrita hospedeira 125 pode convocar uma interface de Comunicação de Servidor Virtual (ou seja, um “VS COM API”, não mostrado). A interface de comunicação pode então comunicar à unidade de escrita 125 quando terá concluído o salvamento do estado da máquina virtual 130. Em particular, a interface de comunicação pode comunicar este fato junto a unidade de escrita 125, que por sua vez, possibilita a que o pedido de cópia reserva 105 gere uma cópia do volume hospedeiro correspondente aonde se encontra a máquina virtual 130 (ou seja, o volume 115).
Em acréscimo ao salvamento do estado da máquina virtual 130, a interface de comunicação pode também momentaneamente pausar ou interromper as operações da máquina virtual utilizando quaisquer APIs privados e/ou virtuais. Caso a interface de comunicação identifique, por exemplo, quaisquer alterações junto-ao estado da máquina virtual 130, a interface de comunicação pode comunicaFesta informação. Tal comunicação pode, por sua vez, falhar nas operações de cópia reserva, e ocasionar um re-início numa oportunidade mais apropriada. Em particular, o pedido de cópia reserva 105 pode prosseguir repetindo estas etapas até que o pedido de cópia reserva 105 tenha concluído a geração de instantâneos do volume 115 em um estado de consistência desejada.
Uma vez que as operações de cópia reserva tenham sido finalizadas, a unidade hospedeira 100 terá gerado uma cópia do volume 110 consistente com o pedido e suas máquinas virtuais correspondentes (por exp., 120), e terá gerado ainda uma cópia do volume 115 consistente (ou seja, pelo menos, consistente com o bloqueio) e suas máquinas virtuais correspondentes (por exp., 130). Apreciar-se-á que esta cópia do volume 115 pode não só ser consistente com o bloqueio, mas também consistente com o VHD” com respeito a estado do arquivo VHD. Em particular, o salvamento do estado da máquina virtual pode proporcionar um arquivo VHD válido e consistente que pode ser restaurado de forma bem sucedida em uma oportunidade posterior, caso desejado.
Em ainda outra implementação, os componentes, de acordo com a presente invenção podem ainda incluir a utilização de um provedor de hardware para a execução de muitas funções instantâneas consistentes descritas previamente. Quando se utilizando um provedor de hardware, por exemplo, um “Provedor de Hardware VSS” (por exp., um provedor plex/imagem), a armazenagem do volume 110, 115 pode residir numa “disposição em disco” que esteja sendo “espelhada” em uma localidade separada. Quando chega a hora de se gerar o instantâneo a nível hospedeiro (ou seja, sem consistência com o pedido para a máquina virtual), o provedor de hardware pode, simplesmente, “quebrar” a imagem entre o volume e sua imagem correspondente. Isto pode expor o instantâneo a nível hospedeiro na forma de um dispositivo de disco permanecendo em separado. O pedido de cópia reserva 105 pode então convocar qualquer quantidade de Serviços em Discos Virtuais (“VDS”) e/ou APIs com Servidor de Cópias Negativas do Volume (“VSS”) tornando a imagem do volume com capacidade de escrita, manipular a imagem do volume, e então, expô-la e instalar os dados instantâneos 155, 160 limpos sublimados (ou seja, consistentes com o pedido). Este tipo de solução para hardware pode ser utilizada também com volumes em armazenagens conectadas remotamente, tal como em um ambiente da Rede de Trabalho na Área de Armazenagem (“SAN”) para geração de cópias reservas consistentes com o pedido das má5 quinas virtuais distribuídas através de várias mídias de armazenagens.
Ao longo deste relatório, as implementações da presente invenção podem incluir ainda, por exemplo, a utilização de um solicitador vinculado 140 para geração de uma cópia consistente com o pedido, transportável por hardware, inserido em uma máquina virtual particular (por exp., 120). Por exemplo, um componente inserido, por exemplo, na máquina vir10 tual 120 configurado para instantâneos de volumes SAN (por exp, um componente VSS configurado adequadamente) pode gerar umá“cópia envolvendo a unidade de escrita (não mostrada) de um volume remoto anexado à unidade vinculada (por exp., uma máquina virtual 120,130), para a qual não exista nenhum arquivo VHD no servidor hospedeiro 100. O solicitador vinculado 140 pode então importar o instantâneo e a superfície da cópia na forma de 15 um Número de Unidade Lógica (“LUN”) no servidor hospedeiro. A unidade de escrita hospedeira 125 pode então solicitar o pedido de cópia reserva 105 (ou seja, um solicitador hospedeiro) para realizar a cópia reserva do LUN como parte da realização da cópia reserva da máquina virtual 120. O pedido de cópia reserva 105 pode, então, fazer a cópia reserva do LUN integral (ou seja, o instantâneo a nível de máquina virtual ou vinculado), de modo que a 20 reversão com, por exemplo, uma cópia a nível hospedeiro de um volume de máquina virtual não se faça necessária.
Conseqüentemente, as Figuras 1A-1D e o texto correspondente proporcionam uma quantidade de sistemas, componentes, e interfaces para o eficiente fornecimento de cópias reservas a nível hospedeiro de máquinas virtuais em uma maneira consistente. Em acrésci25 mo as implementações anteriores, a presente invenção pode ser descrita também em termos de métodos compreendendo de um ou mais atos para a realização de um resultado particular. Por exemplo, a Figura 2 ilustra os fluxogramas a partir da perspectiva da unidade hospedeira 100 e da máquina virtual 120 para a geração de cópias reservas consistentes com o pedido, a nível hospedeiro de máquinas virtuais. Os métodos e atos correspondendo 30 a Figura 2 são descritos abaixo com referência aos sistemas e componentes das Figuras de 1A a 1D.
Por exemplo, a Figura 2 mostra que um método, a partir da perspectiva da unidade hospedeira 100 de geração de um cópia reserva consistente com o pedido de cada uma ou mais das máquinas virtuais sem necessariamente requerer-se a interrupção ou pausa de 35 uma ou mais dessas máquinas virtuais, consiste de um ato 210 de identificação de uma ou mais máquinas virtuais em uma unidade hospedeira. O ato 210 inclui a identificação de, pelo menos, uma máquina virtual apresentando um ou mais componentes para processos de cópia reserva envolvendo unidades de escrita. Por exemplo, o pedido de cópia reserva 105 (ou seja, “solicitador hospedeiro” 105) questiona (via a mensagem 103) junto a unidade de escrita hospedeira 125 quais máquinas virtuais estão presentes na unidade hospedeira 100, e quais dessas máquinas virtuais podem ser cópia reservaeadas em uma maneira consistente com o pedido (ou seja, com pouco ou nenhum tempo de inatividade).
A unidade de escrita hospedeira 125, por exp., uma unidade de escrita VSS, envia a solicitação 111 de versão correspondente para cada máquina virtual (por exp., 120, 130), e identifica quais componentes de software existem para auxiliarem nos processos de cópia reserva (por exp., o solicitador vinculado 140), tal como, quais componentes podem ser empregados para a geração de cópias reservas consistentes com o pedido. A unidade de escrita hospedeira 125 envialentão.lã resposta 113 correspondente ao pedido de cópia reserva 105. O pedido de cópia reserva 105 determina, então, por exp., via o módulo de determinação 107, quais das máquinas virtuais identificadas podem ser cópia reservaeadas utilizandose os métodos consistentes com o pedido (i.é, “VMs para Cópias reservas”, que incluam os componentes apropriados), e quais podem ser cópia reservaeadas utilizando-se outros métodos (i.é, “VMs para Cópias reservas com algum Tempo de Inatividade”) que não incluam os componentes apropriados, ou estejam desligados.
Consequentemente, Figura 2 mostra ainda que um método a partir da perspectiva da máquina virtual 120 de geração de um cópia reserva consistente de um ou mais volumes em máquinas virtuais compreende um ato 210 de recebimento de uma solicitação para a identificação dos componentes. O ato 210 inclui o recebimento de uma solicitação a partir da unidade de escrita hospedeira para identificar os componentes de software disponíveis. Por exemplo, a máquina virtual 120 (por exp., via o solicitador vinculado 140) recebe uma solicitação 111 de versão, a qual inclui uma solicitação para identificar se a máquina virtual 120 inclui um solicitador vinculado e uma ou mais unidades de escrita de pedido (e/ou suas versões apropriadas), uma vez que estes seriam componentes apropriados para a geração de um cópia reserva consistente com o pedido. A máquina virtual 120, retorna, então, uma resposta correspondente, a qual é formatada pela unidade de escrita hospedeira 125 na forma de mensagem 113 e a envia ao pedido de cópia reserva 105.
Em acréscimo, a Figura 2 mostra que o método a partir da perspectiva da unidade hospedeira 100 compreende de um ato 220 de envio de uma solicitação de cópia reserva junto ao grupo de máquinas virtuais. O ato 220 inclui o envio de uma instrução para cada uma ou para as várias máquinas virtuais para prepararem um ou mais instantâneos a nível de máquina de um ou mais volumes nas máquinas virtuais. Conforme mostrado na Figura 1B, por exemplo, o pedido de cópia reserva 105 envia instruções 117a para a cópia reserva da máquina virtual 120 junto à unidade de escrita hospedeira 125, aonde a máquina virtual 120 compreende parte de um grupo de máquinas virtuais que apresentam os componentes apropriados para a geração de instantâneos consistentes com o pedido com pouco ou nenhum tempo de inatividade. A unidade de escrita hospedeira 125, por sua vez, envia instruções 117b para dar início às preparações de cópia reserva envolvidas na unidade de escrita junto ao solicitador vinculado 140 na máquina virtual 120.
Consequentemente, a Figura 2 mostra que o método a partir da perspectiva da máquina virtual 120 compreende também de um ato 230 de recebimento de uma solicitação instantânea a partir de uma unidade de escrita hospedeira. O ato 230 inclui o recebimento de uma solicitação a partir da unidade de escrita hospedeira para geração de uma cópia de um ou mais volumes hospedados pela máquina virtual com pelo menos um dos componentes de software disponíveisr-Por exemplo, o solicitador vinculado 140 recebe a mensagem 117b a partir dsTunidadê de escrita 117b, aonde a mensagem 117b inclui uma solicitação de dar início aos processos instantâneos envolvendo a unidade de escrita. Para tanto, a máquina virtual irá começar a preparar uma cópia de seus volumes gerenciados por cada arquivo VHD(porexp., 123,127, etc.).
Em acréscimo, a Figura 2 mostra que o método a partir da perspectiva da máquina virtual 120 compreende de um ato 240 de envio de instruções de cópia reserva para uma ou mais unidades de escrita de pedido. O ato 240 inclui o envio de instruções para uma ou mais unidades de escrita de pedido na máquina virtual para preparação das aplicações correspondendo a uma ou mais máquinas virtuais por uma cópia . Por exemplo, a Figura 1B mostra que o solicitador vinculado 140 envia a mensagem 117c junto às unidades de escrita de pedido (não mostradas) nos volumes contidos nos arquivos VHD 123, 127. Em uma implementação, isto pode envolver o envio de solicitação as unidades de escrita correspondendo a pedidos como base de dados, e-mail, ou outros tipos de pedidos semelhantes para o preparo de uma cópia dos volumes de dados relevantes.
Além do mais, a Figura 2 mostra que o método a partir da perspectiva da máquina virtual 120 compreende de um ato 250 de envio de um sinal indicando a finalização dos instantâneos na máquina virtual. O ato 250 inclui envio de um sinal junto a unidade de escrita hospedeira que realiza operações instantâneas para cada um ou mais dos volumes hospedados no interior da máquina virtual que tenham sido concluídos. Por exemplo, mediante o encerramento das atividades instantâneas na máquina virtual, o solicitador vinculado envia um sinal de conclusão (não mostrado) para a unidade de escrita hospedeira 125. Em resposta a este sinal, a unidade de escrita hospedeira 125 pode então enviar a mensagem 157 para o pedido de cópia reserva 105, informando ao pedido de cópia reserva 105 a finalização das operações instantâneas a nível hospedeiro.
Consequentemente, a Figura 2 mostra também que o método a partir da perspectiva da unidade hospedeira 100 compreende de um ato 260 de identificação da finalização dos instantâneos da máquina virtual. O ato 260 inclui a identificação de que as operações instantâneas em, pelo menos, uma das máquinas virtuais tenham sido encerradas. Por exemplo, conforme mencionado anteriormente, a unidade de escrita hospedeira 125 envia a mensagem 157, que indica que os instantâneos a nível de máquina virtual foram completados.
Em acréscimo, a Figura 2 mostra que o método a partir da perspectiva da unidade hospedeira 100 compreende de um ato 270 de geração de um ou mais instantâneos a nível hospedeiro. O ato 270 inclui a geração de um ou mais instantâneos a nível hospedeiro de um ou mais volumes hospedeiros aonde encontra-se instalada, pelo menos, uma máquina virtual. Por exemplo, o pedido de cópia reserva 105 envia instruções (por exp., 135) para continuidade dos processos de cópia reserva junto aos volumes hospedeiros 110, 115. GonformeTnostrádo na Figura 1B, isto pode resultar em uma cópia hospedeira 167 que inclui dados 156, 161, arquivos VHD 123, 127 sem consistência com o pedido. Conforme aqui discutido, os diferentes dados VHD da cópia 167 a nível hospedeiro, embora não necessariamente sendo consistentes com o pedido para os arquivos VHD 123, 127, não obstante, incluem os dados instantâneos VHD 155, 160 consistentes com o pedido gerado previamente. Em particular, o instantâneo 167 a nível hospedeiro do volume 110 pode ser consistente com o pedido em todos os demais aspectos exceto para os arquivos VHD 123, 127, etc.
Em outra implementação, tal como provedores de hardware, instantâneos a nível hospedeiro podem ser feitos no caso de volumes a nível hospedeiro espelhados através do fracionamento da imagem entre o(s) volume(s) hospedeiro(s) em que a máquina virtual encontra-se instalada e o volume de imagem correspondente. O volume de imagem compreende uma cópia do volume hospedeiro. Assim, o instantâneo compreende também os instantâneos a nível de máquina virtual tomados previamente de um ou mais de seus volumes, aonde os instantâneos a nível máquina virtual são consistentes com o pedido. O instantâneo a nível de máquina virtual pode ser restaurado a partir do volume da imagem hospedeira.
Além do mais, a Figura 2 mostra que o método a partir da perspectiva da unidade hospedeira 100 compreende de um ato 280 de restauração dos instantâneos a nível de máquina virtual inseridos no interior dos arquivos VHD da cópia hospedeira. O ato 280 inclui a restauração de um ou mais instantâneos a nível de máquina virtual de um ou mais volumes na máquina virtual a partir de um ou mais instantâneos a nível hospedeiro de um ou mais volumes hospedeiros. Por exemplo, conforme mostrado na Figura 1D, a unidade hospedeira 100 pode repor (por exp., via um componente VSS ) os dados instantâneos VHD 156 a nível hospedeiro no interior do VHD 123 pelos dados instantâneos VHD 155 a nível de máquina virtual. Similarmente, a unidade hospedeira 100 pode repor os dados VHD 161 a nível hospedeiro no interior do VHD 127 pelos dados instantâneos 160 VHD a nível de máquina virtual. Alternativamente, no caso de um provedor de hardware (i.é, fracionamento de uma imagem entre um volume hospedeiro e um volume espelhado), o instantâneo a nível de máqui21 na virtual pode ser exposto e restaurado a partir do volume espelhado instalado, conforme previamente descrito. Em qualquer caso, os dados de cópia reserva a nível hospedeiro (por exp., 195) podem ser baseados, pelo menos em parte, nos dados instantâneos a nível de máquina virtual.
Conseqüentemente, as Figuras de 1A-2, e o texto correspondente, proporcionam uma quantidade de sistemas, e mecanismos que podem ser utilizados para gerarem cópias de cópias reservas consistentes de máquinas virtuais em um ou mais volumes hospedeiros. Conforme descrito neste relatório, os componentes de acordo com a presente invenção podem ser utilizados para gerarem cópias reservas consistentes de máquinas virtuais que não 10 necessitem de tempo de inatividade da máquina virtual, nem necessitem da aquisição de agentes para cópias reservas adicionais que precisem ser separadamente instalados e gerenciados. Além do mais, os componentes, conforme a descrição presente, tem a vantagem de oferecerem serviços de cópias negativas convencionais para geração de uma cópia consistente de uma máquina virtual, e, daí, restaurarem o instantâneo da máquina virtual a 15 partir do interior da cópia a nível hospedeiro.
As modalidades da presente invenção podem compreender um computador para finalidades genéricas ou especiais, incluindo vários hardwares para computadores, conforme discutido em maiores detalhes abaixo. As modalidades inseridas no escopo da presente invenção incluem também mídia de leitura por computador para condução de, ou contendo, 20 instruções executáveis por computador ou estruturas de dados armazenadas no mesmo. Tais mídias de leitura por computador podem apresentar qualquer mídia disponível que possa ser acessada através de um computador para finalidades genéricas ou especiais.
Como forma de exemplo, e não de limitação, tais mídias de leitura por computador podem compreender de RAM, ROM, EEPROM, CD-ROM ou outros dispositivos de armaze25 nagem ótica em disco, armazenagem em disco magnético ou outros dispositivos de armazenagem magnética, ou qualquer outra mídia que possa ser usada para conduzir ou armazenar o mecanismo com o código de programa desejado na forma de instruções executá- veis por computador ou estruturas de dados as quais possam ser acessadas através de um computador para finalidades genéricas ou especiais. Assim, quando a informação é transfe30 rida ou fornecida através de uma rede de trabalho ou outra forma de conexão para comunicação (seja por fio, sem fio, ou uma combinação de fiação ou sem fiação) junto a um computador, o computador analisa devidamente a conexão na forma de uma mídia de leitura por computador. Assim, qualquer conexão é devidamente denominada como uma mídia de leitura por computador. As combinações do exposto devem se inserir também dentro do escopo 35 da mídia de leitura por computador.
As instruções executáveis por computador compreendem, por exemplo, instruções e dados que levam a um computador com finalidades genéricas, computador com finalida22 des especiais, ou dispositivos para processamento de finalidades especiais a desempenharem uma certa função ou grupos de funções. Embora a matéria em questão tenha sido descrita na linguagem específica das características estruturais e/ ou atos metodológicos, devese entender que a matéria em questão definida nas reivindicações apensas não se encontra 5 necessariamente limitadas as características específicas ou atos descritos acima. Ao contrário, as características específicas e atos descritos acima são formas de exemplos da implementação das reivindicações.
A presente invenção pode ser personificada em outras formas específicas sem afastar-se do espírito ou características essenciais. As modalidades descritas são para serem 10 -consideradas em seus aspectos genéricos somente como ilustrativas e não restringentes. O ~ escopo da invenção é, portanto, indicado pelas reivindicações apensas ao invés do relatório descritivo anterior. Todas alterações que venham a se inserir no sentido e abrangência equivalente as reivindicações são partes integrantes de seu escopo.
Claims (19)
1. Método de geração de uma cópia reserva consistente com o pedido de dados na máquina virtual sem necessariamente requerer-se a interrupção ou restabelecimento de uma ou mais máquinas virtuais (120,130) em um servidor hospedeiro em um ambiente computadorizado, o servidor hospedeiro (100) apresentando uma ou mais máquinas virtuais (120,130) instaladas em um ou mais volumes hospedeiros (110,115), as máquinas virtuais (120,130) configuradas para gerenciarem um ou mais volumes da máquina virtual (123,127,133,137) nos um ou mais volumes hospedeiros (110,115) caracterizado pelo fato de que compreende as etapas de:
identificar (200) pelo menos uma máquina virtual apresentando um ou mais componentes para processos de cópia reserva (125) envolvendo a unidade de escrita;
enviar (220) uma instrução para pelo menos uma máquina virtual (120,130) para preparar (117c) uma ou mais das correspondentes cópias em nível de máquina virtual (155,160) de um ou mais volumes na máquina virtual (123,127,133,137);
identificar (260) se as operações instantâneas de pelo menos uma máquina virtual foram concluídas;
gerar (270) uma ou mais cópias em nível hospedeiro de um ou mais volumes hospedeiros onde cada uma das máquinas virtuais é instalada; e restaurar (280) uma ou mais cópias em nível de máquina virtual (155,160) de um ou mais volumes na máquina virtual (123,127,133,137) a partir de uma ou mais cópias em nível hospedeiro de um ou mais volumes hospedeiros.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que as cópias em nível de máquina virtual (155,160) de um ou mais volumes da máquina virtual (123,127,133,137) são consistentes com o pedido.
3 pelo fato de que compreende a eta- pa de salvar o estado para cada uma ou mais das diferentes máquinas virtuais.
3. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que a cópia em nível hospedeiro inclui uma ou mais cópias diferentes de um ou mais volumes da máquina virtual (123,127,133,137), o método ainda compreendendo a etapa de repor dados de uma ou mais cópias diferentes no interior de uma ou mais cópias em nível hospedeiro com dados de uma ou mais cópias em nível de máquina virtual (150,166) de um ou mais volumes na máquina virtual (123,127,133,137).
4. Método, de acordo com a reivindicação 1, caracterizado pelo
Petição 870180072732, de 20/08/2018, pág. 4/11 fato de que ainda compreende a etapa de converter uma ou mais cópias em nível hospedeiro a partir de dados somente para leitura para dados que possam ser escritos.
5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que um solicitador hospedeiro (105) baseia a instrução de cópia reserva através de uma unidade de escrita hospedeira (125) junto a um solicitador vinculado (140) em cada uma de uma ou mais das máquinas virtuais (120,130).
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que um ou mais volumes em nível de máquina virtual são gerenciados no interior de um ou mais arquivos em disco virtual (123,127), de modo que cada cópia diferente compreende de uma cópia de um arquivo de disco virtual (123,127) apresentando uma cópia em nível de máquina virtual (155,160) ali contido.
7. Método, de acordo com a reivindicação 6, caracterizado pelo fato de que ainda compreende a etapa de instalar um identificador de dispositivo correspondendo a cada um das ou mais cópias diferentes, em que cada arquivo em disco rígido virtual (123,127) de pelo menos uma máquina virtual encontra-se exposta na forma de um disco físico na unidade hospedeira.
8. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que ainda compreende a etapa de identificar uma ou mais diferentes máquinas virtuais onde um ou mais componentes para os processos de cópia reserva (125) envolvendo a unidade de escrita não possam ser identificados.
9. Método, de acordo com a reivindicação 8, caracterizado pelo fato de que ainda compreende a etapa de identificar que uma ou mais diferentes máquinas virtuais tenham sido uma das unidades salvas ou desligadas.
10. Método, de acordo com a reivindicação 8, caracterizado pelo fato de que a etapa de identificar uma ou mais diferentes máquinas virtuais para as quais um ou mais componentes não possam ser identificados ainda compreende a etapa de identificar que uma ou mais diferentes máquinas virtuais não incluem pelo menos um solicitador vinculado (140) configurado adequadamente e uma unidade de escrita de pedido em nível de máquina virtual configurada adequadamente.
11. Método, de acordo com a reivindicação 8, caracterizado
Petição 870180072732, de 20/08/2018, pág. 5/11
12. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que ainda compreende a etapa de, pelo menos momentaneamente, pausar as operações de uma ou mais das diferentes máquinas virtuais.
13. Método, de acordo com a reivindicação 12, caracterizado pelo fato de que compreende a etapa de, mediante a identificação de que o estado tenha sido salvo, gerar uma cópia de cada volume hospedeiro onde uma ou mais das diferentes máquinas virtuais estejam instaladas.
14. Método, de acordo com a reivindicação 13, caracterizado pelo fato de que ainda compreende a etapa de instruir cada uma de uma ou mais das diferentes máquinas virtuais para encerrar as operações.
15. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que um ou mais volumes hospedeiros, onde pelo menos uma máquina virtual encontra-se instalada, são implementados em um ou mais discos hospedados por um ou mais componentes de armazenagem externos, um ou mais componentes de armazenagem externos são configurados para gerar uma ou mais cópias de um ou mais discos externos utilizando, pelo menos, um dentre:
(i) um método de geração de cópia com base no hardware;
(ii) um método de geração de cópia exposto por uma ou mais disposições de armazenagem.
16. Método, de acordo com a reivindicação 15, caracterizado pelo fato de que a etapa de gerar uma ou mais cópias em nível hospedeiro de um ou mais volumes hospedeiros possibilita que uma ou mais cópias em nível hospedeiro seja gerenciada de forma independente no servidor hospedeiro, em que uma ou mais cópias em nível hospedeiro possa ser transformada em volumes separados de escrita-leitura, e em que uma ou mais cópias em nível de máquina virtual possa ser restaurada a partir do interior de uma ou mais cópias em nível hospedeiro.
17. Método de geração de uma cópia reserva consistente com o pedido de um ou mais volumes em máquinas virtuais (123,127,133,137) em resposta as instruções a partir de uma unidade de escrita hospedeira (125) do servidor hospedeiro (100) em uma máquina virtual (120,130) em um ambiente computadorizado, em que a máquina virtual (120,130) encontra-se instalada em um volume do servidor hospedeiro (100) caracterizado pelo
Petição 870180072732, de 20/08/2018, pág. 6/11 fato de que compreende as etapas:
receber uma solicitação a partir de urna unidade de escrita hospedeira (125) para identificar os componentes de software disponíveis;
receber uma solicitação a partir da unidade de escrita hospedeira (125) para gerar uma cópia de um ou mais volumes hospedados pela máquina virtual (120,130) com pelo menos um dos componentes de software disponível;
enviar instruções para uma ou mais unidades de escritas do pedido na máquina virtual (120,130) para preparar os um ou mais pedidos correspondentes na máquina virtual para a cópia; e enviar um sinal junto a unidade de escrita hospedeira (125) que as operações de cópia para cada um de um ou mais volumes hospedados pela máquina virtual (120,130) foram concluídas.
18. Método, de acordo com a reivindicação 17, caracterizado pelo fato de que pelo menos um componente de software disponível é um solicitador vinculado (140) instalado com a máquina virtual (120,130), em que o solicitador vinculado (140) recebe a solicitação a partir da unidade de escrita hospedeira (125), e envia as instruções para uma ou mais unidades de escrita do pedido.
19. Método, de acordo com a reivindicação 17, caracterizado pelo fato de que pelo menos um de um ou mais volumes da máquina virtual (123,127,133,137) encontra-se instalado em uma mídia de armazenamento de rede, o método ainda compreendendo as etapas de:
importar uma cópia de pelo menos um volume a partir da mídia de armazenamento de rede junto ao servidor hospedeiro (100) através de uma rede; e recuperar a cópia no servidor hospedeiro (100) na forma de um número de unidade lógica, em que o servidor hospedeiro (100) pode fazer a cópia reserva da cópia correspondendo ao número de unidade lógica na forma de um dado consistente.
Petição 870180072732, de 20/08/2018, pág. 7/11
S •S» u»
Servidor Hospedeiro 100
Servidor Hospedeiro 100
Servidor Hospedeiro 100
Servidor Hospedeiro 100
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/405.236 | 2006-04-17 | ||
| US11/405,236 US8321377B2 (en) | 2006-04-17 | 2006-04-17 | Creating host-level application-consistent backups of virtual machines |
| PCT/US2007/004183 WO2007130192A1 (en) | 2006-04-17 | 2007-02-15 | Creating host-level application-consistent backups of virtual machines |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| BRPI0710003A2 BRPI0710003A2 (pt) | 2011-08-02 |
| BRPI0710003A8 BRPI0710003A8 (pt) | 2017-01-17 |
| BRPI0710003B1 true BRPI0710003B1 (pt) | 2018-11-13 |
Family
ID=38606087
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BRPI0710003-5A BRPI0710003B1 (pt) | 2006-04-17 | 2007-02-15 | geração de cópias reservas consistentes com o pedido a nível hospedeiro de máquinas virtuais |
Country Status (14)
| Country | Link |
|---|---|
| US (3) | US8321377B2 (pt) |
| EP (1) | EP2016501B1 (pt) |
| JP (1) | JP5021721B2 (pt) |
| KR (2) | KR101330495B1 (pt) |
| CN (1) | CN101421715B (pt) |
| AU (1) | AU2007248869B2 (pt) |
| BR (1) | BRPI0710003B1 (pt) |
| CA (1) | CA2645969C (pt) |
| ES (1) | ES2639417T3 (pt) |
| MX (1) | MX2008013132A (pt) |
| MY (1) | MY154949A (pt) |
| RU (1) | RU2433458C2 (pt) |
| TW (1) | TWI438689B (pt) |
| WO (1) | WO2007130192A1 (pt) |
Families Citing this family (164)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8055745B2 (en) * | 2004-06-01 | 2011-11-08 | Inmage Systems, Inc. | Methods and apparatus for accessing data from a primary data storage system for secondary storage |
| US8868858B2 (en) * | 2006-05-19 | 2014-10-21 | Inmage Systems, Inc. | Method and apparatus of continuous data backup and access using virtual machines |
| US7676502B2 (en) * | 2006-05-22 | 2010-03-09 | Inmage Systems, Inc. | Recovery point data view shift through a direction-agnostic roll algorithm |
| US8949395B2 (en) | 2004-06-01 | 2015-02-03 | Inmage Systems, Inc. | Systems and methods of event driven recovery management |
| US8224786B2 (en) * | 2004-06-01 | 2012-07-17 | Inmage Systems, Inc. | Acquisition and write validation of data of a networked host node to perform secondary storage |
| US9209989B2 (en) * | 2004-06-01 | 2015-12-08 | Inmage Systems, Inc. | Causation of a data read operation against a first storage system by a server associated with a second storage system according to a host generated instruction |
| US7698401B2 (en) | 2004-06-01 | 2010-04-13 | Inmage Systems, Inc | Secondary data storage and recovery system |
| US7979656B2 (en) | 2004-06-01 | 2011-07-12 | Inmage Systems, Inc. | Minimizing configuration changes in a fabric-based data protection solution |
| US8601225B2 (en) * | 2005-09-16 | 2013-12-03 | Inmage Systems, Inc. | Time ordered view of backup data on behalf of a host |
| US8683144B2 (en) * | 2005-09-16 | 2014-03-25 | Inmage Systems, Inc. | Causation of a data read against a first storage system to optionally store a data write to preserve the version to allow viewing and recovery |
| US8321377B2 (en) * | 2006-04-17 | 2012-11-27 | Microsoft Corporation | Creating host-level application-consistent backups of virtual machines |
| US8554727B2 (en) * | 2006-05-19 | 2013-10-08 | Inmage Systems, Inc. | Method and system of tiered quiescing |
| US8527721B2 (en) * | 2008-12-26 | 2013-09-03 | Rajeev Atluri | Generating a recovery snapshot and creating a virtual view of the recovery snapshot |
| US8838528B2 (en) * | 2006-05-22 | 2014-09-16 | Inmage Systems, Inc. | Coalescing and capturing data between events prior to and after a temporal window |
| US8527470B2 (en) | 2006-05-22 | 2013-09-03 | Rajeev Atluri | Recovery point data view formation with generation of a recovery view and a coalesce policy |
| JP4681505B2 (ja) * | 2006-05-23 | 2011-05-11 | 株式会社日立製作所 | 計算機システム、管理計算機及びプログラム配布方法 |
| US7634507B2 (en) * | 2006-08-30 | 2009-12-15 | Inmage Systems, Inc. | Ensuring data persistence and consistency in enterprise storage backup systems |
| US7689859B2 (en) | 2006-12-20 | 2010-03-30 | Symantec Operating Corporation | Backup system and method |
| JP4982249B2 (ja) * | 2006-12-22 | 2012-07-25 | 株式会社日立製作所 | 運用整合性維持方法、システム及びプログラム |
| US8554734B1 (en) * | 2007-07-19 | 2013-10-08 | American Megatrends, Inc. | Continuous data protection journaling in data storage systems |
| US8458419B2 (en) * | 2008-02-27 | 2013-06-04 | International Business Machines Corporation | Method for application backup in the VMware consolidated backup framework |
| US8127076B2 (en) | 2008-06-06 | 2012-02-28 | Pivot3 | Method and system for placement of data on a storage device |
| US9356805B2 (en) * | 2008-06-06 | 2016-05-31 | International Business Machines Corporation | Implementing a plurality of interface definitions |
| US8522135B2 (en) * | 2008-06-06 | 2013-08-27 | International Business Machines Corporation | Generating a transformation description document for transforming messages |
| US8219750B2 (en) * | 2008-06-30 | 2012-07-10 | Pivot3 | Method and system for execution of applications in conjunction with distributed RAID |
| US8135930B1 (en) | 2008-07-14 | 2012-03-13 | Vizioncore, Inc. | Replication systems and methods for a virtual computing environment |
| US8060476B1 (en) | 2008-07-14 | 2011-11-15 | Quest Software, Inc. | Backup systems and methods for a virtual computing environment |
| US8046550B2 (en) * | 2008-07-14 | 2011-10-25 | Quest Software, Inc. | Systems and methods for performing backup operations of virtual machine files |
| US8028194B2 (en) * | 2008-07-25 | 2011-09-27 | Inmage Systems, Inc | Sequencing technique to account for a clock error in a backup system |
| US20100031079A1 (en) * | 2008-07-29 | 2010-02-04 | Novell, Inc. | Restoration of a remotely located server |
| US7966290B2 (en) * | 2008-07-29 | 2011-06-21 | Novell, Inc. | Backup without overhead of installed backup agent |
| US20100058106A1 (en) * | 2008-08-27 | 2010-03-04 | Novell, Inc. | Virtual machine file system and incremental snapshot using image deltas |
| US8429649B1 (en) * | 2008-09-25 | 2013-04-23 | Quest Software, Inc. | Systems and methods for data management in a virtual computing environment |
| US8499297B2 (en) | 2008-10-28 | 2013-07-30 | Vmware, Inc. | Low overhead fault tolerance through hybrid checkpointing and replay |
| US8707299B1 (en) * | 2008-11-14 | 2014-04-22 | Symantec Corporation | Method and apparatus for preserving virtual desktops for e-discovery through an agent-less solution |
| US8069227B2 (en) * | 2008-12-26 | 2011-11-29 | Inmage Systems, Inc. | Configuring hosts of a secondary data storage and recovery system |
| US8205050B2 (en) * | 2009-04-14 | 2012-06-19 | Novell, Inc. | Data backup for virtual machines |
| US8996468B1 (en) | 2009-04-17 | 2015-03-31 | Dell Software Inc. | Block status mapping system for reducing virtual machine backup storage |
| JP5227887B2 (ja) * | 2009-05-21 | 2013-07-03 | 株式会社日立製作所 | バックアップ管理方法 |
| US8219990B2 (en) * | 2009-05-28 | 2012-07-10 | Novell, Inc. | Techniques for managing virtual machine (VM) states |
| US9778946B2 (en) | 2009-08-07 | 2017-10-03 | Dell Software Inc. | Optimized copy of virtual machine storage files |
| US8438349B2 (en) * | 2009-08-21 | 2013-05-07 | Symantec Corporation | Proxy backup of virtual disk image files on NAS devices |
| CN102025758B (zh) * | 2009-09-18 | 2014-06-04 | 华为数字技术(成都)有限公司 | 分布式系统中数据副本的恢复方法、装置和系统 |
| US8856080B2 (en) * | 2009-10-30 | 2014-10-07 | Microsoft Corporation | Backup using metadata virtual hard drive and differential virtual hard drive |
| US8726275B2 (en) * | 2009-12-18 | 2014-05-13 | International Business Machines Corporation | Selective partial cloning of virtual machines in a virtual computing environment |
| JP5440273B2 (ja) * | 2010-03-09 | 2014-03-12 | 富士通株式会社 | スナップショット管理方法、スナップショット管理装置、及びプログラム |
| US8255508B2 (en) | 2010-03-24 | 2012-08-28 | International Business Machines Corporation | Administration of virtual machine affinity in a data center |
| US9367362B2 (en) | 2010-04-01 | 2016-06-14 | International Business Machines Corporation | Administration of virtual machine affinity in a cloud computing environment |
| US8572612B2 (en) | 2010-04-14 | 2013-10-29 | International Business Machines Corporation | Autonomic scaling of virtual machines in a cloud computing environment |
| US8326803B1 (en) * | 2010-05-06 | 2012-12-04 | Symantec Corporation | Change tracking of individual virtual disk files |
| TWI486759B (zh) * | 2010-05-14 | 2015-06-01 | Alibaba Group Holding Ltd | Subversion configuration library backup method and device |
| CN102255741B (zh) * | 2010-05-21 | 2015-09-16 | 中兴通讯股份有限公司 | 用户业务信息备份方法和装置 |
| US9569446B1 (en) | 2010-06-08 | 2017-02-14 | Dell Software Inc. | Cataloging system for image-based backup |
| US8434081B2 (en) | 2010-07-02 | 2013-04-30 | International Business Machines Corporation | Storage manager for virtual machines with virtual storage |
| US20120005672A1 (en) * | 2010-07-02 | 2012-01-05 | International Business Machines Corporation | Image management for virtual machine instances and associated virtual storage |
| WO2012020482A1 (ja) | 2010-08-11 | 2012-02-16 | 富士通株式会社 | バックアップ方法、情報処理装置及びプログラム |
| US8898114B1 (en) | 2010-08-27 | 2014-11-25 | Dell Software Inc. | Multitier deduplication systems and methods |
| US8677004B2 (en) * | 2010-09-10 | 2014-03-18 | International Business Machines Corporation | Migration of logical partitions between two devices |
| US9037547B1 (en) * | 2010-09-15 | 2015-05-19 | Symantec Corporation | Backup time deduplication of common virtual disks from virtual machine backup images |
| US20120072685A1 (en) * | 2010-09-16 | 2012-03-22 | Hitachi, Ltd. | Method and apparatus for backup of virtual machine data |
| KR101731422B1 (ko) | 2010-10-04 | 2017-04-28 | 삼성전자주식회사 | 가상화 환경에서의 장애 복구 장치 및 방법 |
| US8417672B2 (en) * | 2010-10-11 | 2013-04-09 | Microsoft Corporation | Item level recovery |
| US9141368B2 (en) | 2011-03-10 | 2015-09-22 | Microsoft Technology Licensing, Llc | Managing boot loaders for virtual hard disks |
| US8892707B2 (en) * | 2011-04-13 | 2014-11-18 | Netapp, Inc. | Identification of virtual applications for backup in a cloud computing system |
| US8725782B2 (en) * | 2011-04-25 | 2014-05-13 | Microsoft Corporation | Virtual disk storage techniques |
| US9519496B2 (en) * | 2011-04-26 | 2016-12-13 | Microsoft Technology Licensing, Llc | Detecting and preventing virtual disk storage linkage faults |
| WO2012151392A1 (en) * | 2011-05-04 | 2012-11-08 | Citrix Systems, Inc. | Systems and methods for sr-iov pass-thru via an intermediary device |
| US8868882B2 (en) | 2011-06-08 | 2014-10-21 | Microsoft Corporation | Storage architecture for backup application |
| US9286182B2 (en) | 2011-06-17 | 2016-03-15 | Microsoft Technology Licensing, Llc | Virtual machine snapshotting and analysis |
| US9785523B2 (en) * | 2011-06-20 | 2017-10-10 | Microsoft Technology Licensing, Llc | Managing replicated virtual storage at recovery sites |
| JP5728087B2 (ja) * | 2011-06-23 | 2015-06-03 | 株式会社日立製作所 | ストレージ管理システム及びストレージ管理方法 |
| US8850130B1 (en) | 2011-08-10 | 2014-09-30 | Nutanix, Inc. | Metadata for managing I/O and storage for a virtualization |
| US8863124B1 (en) | 2011-08-10 | 2014-10-14 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment |
| US8601473B1 (en) | 2011-08-10 | 2013-12-03 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment |
| US9009106B1 (en) | 2011-08-10 | 2015-04-14 | Nutanix, Inc. | Method and system for implementing writable snapshots in a virtualized storage environment |
| US9652265B1 (en) * | 2011-08-10 | 2017-05-16 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment with multiple hypervisor types |
| US9747287B1 (en) | 2011-08-10 | 2017-08-29 | Nutanix, Inc. | Method and system for managing metadata for a virtualization environment |
| US8549518B1 (en) | 2011-08-10 | 2013-10-01 | Nutanix, Inc. | Method and system for implementing a maintenanece service for managing I/O and storage for virtualization environment |
| JP6063941B2 (ja) * | 2011-08-30 | 2017-01-18 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | システム管理要求のための仮想高特権モード |
| JP5134149B1 (ja) * | 2011-09-26 | 2013-01-30 | 株式会社北洋銀行 | ネットワークシステム及びその制御方法 |
| CN102346697A (zh) * | 2011-09-27 | 2012-02-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种安卓安装包的备份与恢复的方法、系统及移动终端 |
| CN103107905B (zh) * | 2011-11-14 | 2017-08-04 | 华为技术有限公司 | 异常处理方法、装置和客户端 |
| CN102521071B (zh) * | 2011-11-24 | 2013-12-11 | 广州杰赛科技股份有限公司 | 一种基于私有云的虚拟机维护方法 |
| US9311375B1 (en) | 2012-02-07 | 2016-04-12 | Dell Software Inc. | Systems and methods for compacting a virtual machine file |
| US9773006B1 (en) * | 2012-02-15 | 2017-09-26 | Veritas Technologies Llc | Techniques for managing non-snappable volumes |
| JP5966466B2 (ja) * | 2012-03-14 | 2016-08-10 | 富士通株式会社 | バックアップ制御方法、および情報処理装置 |
| CN103797461B (zh) * | 2012-03-29 | 2016-03-16 | 株式会社北洋银行 | 网络系统 |
| US8751515B1 (en) | 2012-03-30 | 2014-06-10 | Emc Corporation | System and method for file-based virtual machine incremental backup |
| US8719286B1 (en) | 2012-03-30 | 2014-05-06 | Emc Corporation | System and method for block-based subtree virtual machine backup |
| US9110604B2 (en) | 2012-09-28 | 2015-08-18 | Emc Corporation | System and method for full virtual machine backup using storage system functionality |
| US9104331B2 (en) | 2012-09-28 | 2015-08-11 | Emc Corporation | System and method for incremental virtual machine backup using storage system functionality |
| WO2013157124A1 (ja) * | 2012-04-19 | 2013-10-24 | 株式会社日立製作所 | ライセンス管理システム、管理サーバ及び管理方法 |
| US10353619B1 (en) * | 2012-06-11 | 2019-07-16 | Veritas Technologies Llc | Systems and methods for applying storage lifecycle policies to backups |
| US9772866B1 (en) | 2012-07-17 | 2017-09-26 | Nutanix, Inc. | Architecture for implementing a virtualization environment and appliance |
| CN103593256B (zh) * | 2012-08-15 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种基于多层排重的虚机快照备份方法和系统 |
| US9778860B2 (en) | 2012-09-12 | 2017-10-03 | Microsoft Technology Licensing, Llc | Re-TRIM of free space within VHDX |
| CN104662522B (zh) * | 2012-09-28 | 2018-11-02 | Emc 公司 | 使用存储系统功能性的全虚拟机备份的系统和方法 |
| US9262212B2 (en) | 2012-11-02 | 2016-02-16 | The Boeing Company | Systems and methods for migrating virtual machines |
| US9069708B2 (en) | 2012-12-27 | 2015-06-30 | Nutanix, Inc. | Method and system for implementing consistency groups with virtual machines |
| CN103902351A (zh) * | 2012-12-28 | 2014-07-02 | 鸿富锦精密工业(深圳)有限公司 | 虚拟机运算系统及方法 |
| CN104216793B (zh) | 2013-05-31 | 2017-10-17 | 国际商业机器公司 | 应用程序备份、恢复的方法及设备 |
| JP6115331B2 (ja) | 2013-06-06 | 2017-04-19 | 富士通株式会社 | トランザクション再開プログラム、情報処理装置及びトランザクション再開方法 |
| 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 |
| US9262448B2 (en) * | 2013-08-12 | 2016-02-16 | International Business Machines Corporation | Data backup across physical and virtualized storage volumes |
| US10002052B1 (en) * | 2013-08-23 | 2018-06-19 | Acronis International Gmbh | Systems, methods, and computer products for replication of disk sectors of a target machine |
| US9652178B2 (en) | 2013-09-10 | 2017-05-16 | Veritas Technologies | Systems and methods for protecting virtual machine data |
| CN103501290B (zh) * | 2013-09-18 | 2017-10-24 | 万达信息股份有限公司 | 一种基于动态备份虚拟机的高可靠服务系统构建方法 |
| CN103593226A (zh) * | 2013-11-04 | 2014-02-19 | 国云科技股份有限公司 | 一种提高虚拟机磁盘io性能的方法 |
| CN104809020B (zh) * | 2013-11-20 | 2018-05-11 | 华为技术有限公司 | 一种生成快照的方法、系统和装置 |
| EP2955637B1 (en) * | 2013-11-20 | 2017-08-16 | Huawei Technologies Co., Ltd. | Method, system and apparatus for generating snapshot |
| CN104793982A (zh) * | 2014-01-20 | 2015-07-22 | 联想(北京)有限公司 | 一种创建虚拟机的方法和设备 |
| TWI506418B (zh) * | 2014-03-03 | 2015-11-01 | Synology Inc | 備份裝置及運作方法 |
| US11243707B2 (en) | 2014-03-12 | 2022-02-08 | Nutanix, Inc. | Method and system for implementing virtual machine images |
| US9092376B1 (en) | 2014-08-29 | 2015-07-28 | Nimble Storage, Inc. | Methods and systems for ordering virtual machine snapshots |
| US9778990B2 (en) | 2014-10-08 | 2017-10-03 | Hewlett Packard Enterprise Development Lp | Methods and systems for concurrently taking snapshots of a plurality of virtual machines |
| US9558078B2 (en) | 2014-10-28 | 2017-01-31 | Microsoft Technology Licensing, Llc | Point in time database restore from storage snapshots |
| US9727252B2 (en) | 2014-11-13 | 2017-08-08 | Hewlett Packard Enterprise Development Lp | Methods and systems for optimal snapshot distribution within a protection schedule |
| US9817686B2 (en) | 2014-12-09 | 2017-11-14 | The Boeing Company | Systems and methods for securing virtual machines |
| US10289495B1 (en) * | 2014-12-19 | 2019-05-14 | EMC IP Holding Company LLC | Method and system for performing an item level restore from a backup |
| US10606704B1 (en) * | 2014-12-31 | 2020-03-31 | Acronis International Gmbh | Creation of consistent copies of application data |
| JP6069395B2 (ja) * | 2015-04-02 | 2017-02-01 | 株式会社日立製作所 | 管理計算機 |
| US10846195B2 (en) * | 2015-10-05 | 2020-11-24 | Unisys Corporation | Configuring logging in non-emulated environment using commands and configuration in emulated environment |
| US10180886B2 (en) | 2015-11-16 | 2019-01-15 | Red Hat, Inc. | Recreating a computing environment using tags and snapshots |
| TWI584131B (zh) | 2015-12-14 | 2017-05-21 | 財團法人工業技術研究院 | 伺服器備份方法及其備份系統 |
| US10114702B2 (en) * | 2016-01-06 | 2018-10-30 | International Business Machines Corporation | Method and system to discover and manage distributed applications in virtualization environments |
| US10467103B1 (en) | 2016-03-25 | 2019-11-05 | Nutanix, Inc. | Efficient change block training |
| WO2017190758A1 (en) * | 2016-05-02 | 2017-11-09 | Nokia Solutions And Networks Oy | Snapshot creation in virtual network environment |
| US10613947B2 (en) | 2016-06-09 | 2020-04-07 | Nutanix, Inc. | Saving and restoring storage devices using application-consistent snapshots |
| US10146471B1 (en) * | 2016-06-27 | 2018-12-04 | Emc Corporation | Offloaded data protection based on virtual machine snapshots |
| US10241713B2 (en) | 2016-09-01 | 2019-03-26 | Red Hat Israel, Ltd. | Snapshot management with an external storage service |
| US10379750B2 (en) * | 2017-05-22 | 2019-08-13 | Sap Se | Processing large requests in data storage systems with limited/constant buffer sizes |
| US10417096B2 (en) * | 2017-07-20 | 2019-09-17 | Vmware, Inc. | Multi-virtual machine time consistent snapshots |
| US10824522B2 (en) | 2017-11-27 | 2020-11-03 | Nutanix, Inc. | Method, apparatus, and computer program product for generating consistent snapshots without quiescing applications |
| CN107995319B (zh) * | 2018-01-08 | 2021-05-18 | 迈普通信技术股份有限公司 | 虚拟设备配置方法及网络设备 |
| CN110058962B (zh) * | 2018-01-18 | 2023-05-23 | 伊姆西Ip控股有限责任公司 | 确定虚拟机快照的一致性级别的方法、设备和计算机程序产品 |
| US11232001B2 (en) | 2018-01-29 | 2022-01-25 | Rubrik, Inc. | Creation of virtual machine packages using incremental state updates |
| US10838823B2 (en) * | 2018-02-01 | 2020-11-17 | EMC IP Holding Company LLC | Systems and method to make application consistent virtual machine backup work in private network |
| US11455215B2 (en) | 2018-04-30 | 2022-09-27 | Nutanix Inc. | Context-based disaster recovery |
| US11093333B1 (en) * | 2019-04-05 | 2021-08-17 | EMC IP Holding Company LLC | Efficient recovery of multiple virtual machines |
| US11099941B2 (en) * | 2019-04-23 | 2021-08-24 | EMC IP Holding Company LLC | System and method for accelerating application service restoration |
| US11321185B2 (en) * | 2019-04-30 | 2022-05-03 | EMC IP Holding Company LLC | Method to detect and exclude orphaned virtual machines from backup |
| US11461121B2 (en) | 2019-07-26 | 2022-10-04 | Red Hat, Inc. | Guest-driven virtual machine snapshots |
| US10969989B2 (en) * | 2019-07-30 | 2021-04-06 | EMC IP Holding Company LLC | Techniques for capturing virtual machine snapshots using data storage system snapshots |
| WO2021050906A1 (en) * | 2019-09-12 | 2021-03-18 | restorVault | Virtual recovery and replication of unstructured data |
| US11630737B2 (en) | 2019-09-12 | 2023-04-18 | Restorvault, Llc | Virtual replication of unstructured data |
| US11977453B2 (en) | 2019-09-12 | 2024-05-07 | Restorvault, Llc | Virtual replication of unstructured data |
| CN111104367B (zh) * | 2019-12-13 | 2023-08-18 | 浪潮云信息技术股份公司 | 一种基于openstack卷启动虚拟机创建私有镜像的方法 |
| CN112130959B (zh) * | 2020-09-29 | 2021-12-07 | 上海英方软件股份有限公司 | 一种虚拟机的保护系统及方法 |
| US11663086B2 (en) * | 2020-10-15 | 2023-05-30 | EMC IP Holding Company LLC | File system slicing in network attached storage for data protection |
| US11467738B2 (en) * | 2021-01-28 | 2022-10-11 | EMC IP Holding Company LLC | Failsafe mechanism to import snapshots |
| US11816129B2 (en) | 2021-06-22 | 2023-11-14 | Pure Storage, Inc. | Generating datasets using approximate baselines |
| US20230229641A1 (en) * | 2022-01-16 | 2023-07-20 | Bytebase (HongKong) Limited | Novel database schema change, recording and version control method and platform |
| US12050520B2 (en) | 2022-06-16 | 2024-07-30 | Dell Products L.P. | Disaster recovery (DR) asset sizing for front end terabyte (FETB) consumption |
| US12105602B2 (en) | 2022-06-16 | 2024-10-01 | Dell Products L.P. | Dynamic promotion of user data components to system writer components |
| US11994953B2 (en) * | 2022-06-16 | 2024-05-28 | Dell Products L.P. | Memory simulation of agent service for secured restore |
| US12045138B2 (en) | 2022-06-16 | 2024-07-23 | Dell Products L.P. | Dynamic backup and discovery of new writers of a copy service |
| US12079088B2 (en) | 2022-06-16 | 2024-09-03 | Dell Products L.P. | Hybrid technique to protect a registry |
| US12061522B2 (en) | 2022-07-25 | 2024-08-13 | Dell Product L.P. | Method and system for grouping data slices based on data change rate for data slice backup generation |
| US12141034B2 (en) | 2022-07-25 | 2024-11-12 | Dell Products, L.P. | Method and system for grouping data slices based on average data file size for data slice backup generation |
| US12007845B2 (en) | 2022-07-25 | 2024-06-11 | Dell Products L.P. | Method and system for managing data slice backups based on grouping prioritization |
| US12093135B2 (en) | 2022-07-25 | 2024-09-17 | Dell Products L.P. | Method and system for grouping data slices based on data file types for data slice backup generation |
| US11836350B1 (en) | 2022-07-25 | 2023-12-05 | Dell Products L.P. | Method and system for grouping data slices based on data file quantities for data slice backup generation |
| US12386711B2 (en) * | 2024-01-11 | 2025-08-12 | International Business Machines Corporation | Preserving changes when reverting back to a snapshot |
Family Cites Families (72)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0827754B2 (ja) * | 1992-05-21 | 1996-03-21 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータシステムにおけるファイル管理方法及びファイル管理システム |
| US5475834A (en) * | 1992-10-26 | 1995-12-12 | International Business Machines Corporation | Integration of migration level two and backup tape processing using multiple inventory entries |
| US5771354A (en) * | 1993-11-04 | 1998-06-23 | Crawford; Christopher M. | Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services |
| US6269431B1 (en) * | 1998-08-13 | 2001-07-31 | Emc Corporation | Virtual storage and block level direct access of secondary storage for recovery of backup data |
| US6247141B1 (en) * | 1998-09-24 | 2001-06-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Protocol for providing replicated servers in a client-server system |
| AU5486800A (en) * | 1999-06-10 | 2001-01-02 | Alcatel Internetworking, Inc. | Policy based network architecture |
| US6714980B1 (en) * | 2000-02-11 | 2004-03-30 | Terraspring, Inc. | Backup and restore of data associated with a host in a dynamically changing virtual server farm without involvement of a server that uses an associated storage device |
| US6711699B1 (en) * | 2000-05-04 | 2004-03-23 | International Business Machines Corporation | Real time backup system for information based on a user's actions and gestures for computer users |
| US6993761B1 (en) * | 2000-09-28 | 2006-01-31 | Sun Microsystems, Inc. | Method and apparatus to verify type safety of an application snapshot |
| US7035963B2 (en) * | 2000-12-27 | 2006-04-25 | Intel Corporation | Method for resolving address space conflicts between a virtual machine monitor and a guest operating system |
| US6735601B1 (en) * | 2000-12-29 | 2004-05-11 | Vmware, Inc. | System and method for remote file access by computer |
| US6728736B2 (en) * | 2001-03-14 | 2004-04-27 | Storage Technology Corporation | System and method for synchronizing a data copy using an accumulation remote copy trio |
| GB0112781D0 (en) | 2001-05-25 | 2001-07-18 | Global Continuity Plc | Method for rapid recovery from a network file server failure |
| US6948038B2 (en) * | 2001-07-24 | 2005-09-20 | Microsoft Corporation | System and method for backing up and restoring data |
| US7251625B2 (en) * | 2001-10-02 | 2007-07-31 | Best Buy Enterprise Services, Inc. | Customer identification system and method |
| US6751715B2 (en) | 2001-12-13 | 2004-06-15 | Lsi Logic Corporation | System and method for disabling and recreating a snapshot volume |
| US20070094466A1 (en) * | 2001-12-26 | 2007-04-26 | Cisco Technology, Inc., A Corporation Of California | Techniques for improving mirroring operations implemented in storage area networks and network based virtualization |
| JP2003202964A (ja) | 2002-01-09 | 2003-07-18 | Hitachi Ltd | 計算機システムの制御方法、計算機システム、記憶装置の制御方法及び記憶装置 |
| US7093086B1 (en) * | 2002-03-28 | 2006-08-15 | Veritas Operating Corporation | Disaster recovery and backup using virtual machines |
| JP2003309564A (ja) | 2002-04-17 | 2003-10-31 | Mitsubishi Electric Corp | マイクロコンピュータシステムおよびそれに使用されるトランシーバ |
| JP2003316522A (ja) | 2002-04-26 | 2003-11-07 | Hitachi Ltd | 計算機システムおよび計算機システムの制御方法 |
| US7313793B2 (en) | 2002-07-11 | 2007-12-25 | Microsoft Corporation | Method for forking or migrating a virtual machine |
| FI119407B (fi) | 2002-08-28 | 2008-10-31 | Sap Ag | Korkean palvelutason ohjelmistopohjainen yhteyspalvelin |
| US7089377B1 (en) * | 2002-09-06 | 2006-08-08 | Vmware, Inc. | Virtualization system for computers with a region-based memory architecture |
| KR100439675B1 (ko) * | 2002-10-24 | 2004-07-14 | 한국전자통신연구원 | 대용량 공유 저장장치를 위한 효율적인 스냅샷 수행방법 |
| US8209680B1 (en) * | 2003-04-11 | 2012-06-26 | Vmware, Inc. | System and method for disk imaging on diverse computers |
| CN1331063C (zh) * | 2003-06-10 | 2007-08-08 | 联想(北京)有限公司 | 基于数据卷快照的在线数据备份方法 |
| US7047380B2 (en) * | 2003-07-22 | 2006-05-16 | Acronis Inc. | System and method for using file system snapshots for online data backup |
| JP4466001B2 (ja) | 2003-08-06 | 2010-05-26 | 株式会社日立製作所 | スナップショット高速化方法 |
| US7953819B2 (en) * | 2003-08-22 | 2011-05-31 | Emc Corporation | Multi-protocol sharable virtual storage objects |
| TWI223756B (en) | 2003-10-09 | 2004-11-11 | Univ Nat Sun Yat Sen | Automatic register backup/restore system and method |
| US7373451B2 (en) * | 2003-12-08 | 2008-05-13 | The Board Of Trustees Of The Leland Stanford Junior University | Cache-based system management architecture with virtual appliances, network repositories, and virtual appliance transceivers |
| US7139887B2 (en) * | 2003-12-31 | 2006-11-21 | Veritas Operating Corporation | Coordinated storage management operations in replication environment |
| US7490103B2 (en) * | 2004-02-04 | 2009-02-10 | Netapp, Inc. | Method and system for backing up data |
| US8359491B1 (en) * | 2004-03-30 | 2013-01-22 | Symantec Operating Corporation | Disaster recovery rehearsal using copy on write |
| US7096392B2 (en) * | 2004-05-07 | 2006-08-22 | Asempra Technologies, Inc. | Method and system for automated, no downtime, real-time, continuous data protection |
| US20050267920A1 (en) * | 2004-05-13 | 2005-12-01 | Fabrice Helliker | System and method for archiving data in a clustered environment |
| JP4050249B2 (ja) | 2004-05-20 | 2008-02-20 | 株式会社エヌ・ティ・ティ・データ | 仮想マシン管理システム |
| US7299326B2 (en) | 2004-06-09 | 2007-11-20 | Taiwan Semiconductor Manufacturing Company, Ltd. | System and method for providing backup service continuity using a virtual backup service path |
| US7580826B2 (en) | 2004-06-30 | 2009-08-25 | Microsoft Corporation | Systems and methods for development of emulated devices in a virtual machine environment |
| US20060047926A1 (en) * | 2004-08-25 | 2006-03-02 | Zheng Calvin G | Managing multiple snapshot copies of data |
| US20060080521A1 (en) | 2004-09-23 | 2006-04-13 | Eric Barr | System and method for offline archiving of data |
| JP4550541B2 (ja) * | 2004-10-06 | 2010-09-22 | 株式会社日立製作所 | ストレージシステム |
| US7840963B2 (en) * | 2004-10-15 | 2010-11-23 | Microsoft Corporation | Marking and utilizing portions of memory state information during a switch between virtual machines to minimize software service interruption |
| US20060085784A1 (en) * | 2004-10-15 | 2006-04-20 | Microsoft Corporation | Systems and methods for authoring and accessing computer-based materials using virtual machines |
| GB2419701A (en) * | 2004-10-29 | 2006-05-03 | Hewlett Packard Development Co | Virtual overlay infrastructure with dynamic control of mapping |
| US20060123210A1 (en) * | 2004-12-06 | 2006-06-08 | St. Bernard Software, Inc. | Method for logically consistent backup of open computer files |
| US7409719B2 (en) * | 2004-12-21 | 2008-08-05 | Microsoft Corporation | Computer security management, such as in a virtual machine or hardened operating system |
| US7899788B2 (en) * | 2005-04-01 | 2011-03-01 | Microsoft Corporation | Using a data protection server to backup and restore data on virtual servers |
| US7669020B1 (en) * | 2005-05-02 | 2010-02-23 | Symantec Operating Corporation | Host-based backup for virtual machines |
| DE602006019875D1 (de) * | 2005-06-24 | 2011-03-10 | Syncsort Inc | System und verfahren zum virtualisieren von backup-bildern |
| US8024292B2 (en) * | 2005-06-29 | 2011-09-20 | Emc Corporation | Creation of a single snapshot using a server job request |
| US20070094659A1 (en) * | 2005-07-18 | 2007-04-26 | Dell Products L.P. | System and method for recovering from a failure of a virtual machine |
| US7404056B1 (en) * | 2005-12-07 | 2008-07-22 | Nvidia Corporation | Virtual copying scheme for creating multiple versions of state information |
| US7694101B2 (en) * | 2005-12-30 | 2010-04-06 | Vmware, Inc. | Implementing virtual disk reservations on a storage media for multiple distributed applications |
| US8001342B2 (en) * | 2006-03-29 | 2011-08-16 | International Business Machines Corporation | Method for storing and restoring persistent memory content and virtual machine state information |
| US7606868B1 (en) * | 2006-03-30 | 2009-10-20 | Wmware, Inc. | Universal file access architecture for a heterogeneous computing environment |
| US7774391B1 (en) * | 2006-03-30 | 2010-08-10 | Vmware, Inc. | Method of universal file access for a heterogeneous computing environment |
| US8056076B1 (en) * | 2006-03-31 | 2011-11-08 | Vmware, Inc. | Method and system for acquiring a quiesceing set of information associated with a virtual machine |
| US8151263B1 (en) * | 2006-03-31 | 2012-04-03 | Vmware, Inc. | Real time cloning of a virtual machine |
| US8296759B1 (en) * | 2006-03-31 | 2012-10-23 | Vmware, Inc. | Offloading operations to a replicate virtual machine |
| US8321377B2 (en) * | 2006-04-17 | 2012-11-27 | Microsoft Corporation | Creating host-level application-consistent backups of virtual machines |
| US7653794B2 (en) * | 2006-05-08 | 2010-01-26 | Microsoft Corporation | Converting physical machines to virtual machines |
| US7707185B1 (en) * | 2006-10-19 | 2010-04-27 | Vmware, Inc. | Accessing virtual data storage units to offload operations from a computer system hosting a virtual machine to an offload server |
| US8032351B2 (en) * | 2006-11-30 | 2011-10-04 | Symantec Corporation | Running a virtual machine directly from a physical machine using snapshots |
| US7689859B2 (en) * | 2006-12-20 | 2010-03-30 | Symantec Operating Corporation | Backup system and method |
| US8677352B2 (en) * | 2007-10-31 | 2014-03-18 | Vmware, Inc. | Interchangeable guest and host execution environments |
| US8046550B2 (en) * | 2008-07-14 | 2011-10-25 | Quest Software, Inc. | Systems and methods for performing backup operations of virtual machine files |
| US8135930B1 (en) * | 2008-07-14 | 2012-03-13 | Vizioncore, Inc. | Replication systems and methods for a virtual computing environment |
| US8060476B1 (en) * | 2008-07-14 | 2011-11-15 | Quest Software, Inc. | Backup systems and methods for a virtual computing environment |
| US8117410B2 (en) * | 2008-08-25 | 2012-02-14 | Vmware, Inc. | Tracking block-level changes using snapshots |
| US8234469B2 (en) * | 2009-07-09 | 2012-07-31 | Microsoft Corporation | Backup of virtual machines using cloned virtual machines |
-
2006
- 2006-04-17 US US11/405,236 patent/US8321377B2/en active Active
-
2007
- 2007-02-15 RU RU2008141158/08A patent/RU2433458C2/ru active
- 2007-02-15 JP JP2009506485A patent/JP5021721B2/ja active Active
- 2007-02-15 BR BRPI0710003-5A patent/BRPI0710003B1/pt not_active IP Right Cessation
- 2007-02-15 CN CN200780013689XA patent/CN101421715B/zh not_active Expired - Fee Related
- 2007-02-15 KR KR1020087025498A patent/KR101330495B1/ko active Active
- 2007-02-15 KR KR1020137025294A patent/KR101432463B1/ko active Active
- 2007-02-15 WO PCT/US2007/004183 patent/WO2007130192A1/en not_active Ceased
- 2007-02-15 MX MX2008013132A patent/MX2008013132A/es not_active Application Discontinuation
- 2007-02-15 CA CA2645969A patent/CA2645969C/en active Active
- 2007-02-15 ES ES07750979.2T patent/ES2639417T3/es active Active
- 2007-02-15 AU AU2007248869A patent/AU2007248869B2/en not_active Ceased
- 2007-02-15 EP EP07750979.2A patent/EP2016501B1/en not_active Not-in-force
- 2007-03-01 TW TW096107046A patent/TWI438689B/zh not_active IP Right Cessation
-
2008
- 2008-09-17 MY MYPI20083627A patent/MY154949A/en unknown
-
2012
- 2012-11-26 US US13/685,566 patent/US9529807B2/en active Active
-
2016
- 2016-11-23 US US15/360,586 patent/US20170075912A1/en not_active Abandoned
Also Published As
| Publication number | Publication date |
|---|---|
| MY154949A (en) | 2015-08-28 |
| BRPI0710003A2 (pt) | 2011-08-02 |
| RU2008141158A (ru) | 2010-04-27 |
| KR101330495B1 (ko) | 2013-11-15 |
| JP2009533777A (ja) | 2009-09-17 |
| BRPI0710003A8 (pt) | 2017-01-17 |
| TW200809626A (en) | 2008-02-16 |
| MX2008013132A (es) | 2008-10-21 |
| EP2016501A4 (en) | 2009-11-11 |
| KR101432463B1 (ko) | 2014-08-21 |
| KR20090005330A (ko) | 2009-01-13 |
| AU2007248869B2 (en) | 2011-09-08 |
| CN101421715B (zh) | 2012-01-04 |
| US20070244938A1 (en) | 2007-10-18 |
| CN101421715A (zh) | 2009-04-29 |
| TWI438689B (zh) | 2014-05-21 |
| US20130085994A1 (en) | 2013-04-04 |
| KR20130115391A (ko) | 2013-10-21 |
| AU2007248869A1 (en) | 2007-11-15 |
| US20170075912A1 (en) | 2017-03-16 |
| US9529807B2 (en) | 2016-12-27 |
| WO2007130192A1 (en) | 2007-11-15 |
| CA2645969A1 (en) | 2007-11-15 |
| EP2016501A1 (en) | 2009-01-21 |
| RU2433458C2 (ru) | 2011-11-10 |
| EP2016501B1 (en) | 2017-06-07 |
| ES2639417T3 (es) | 2017-10-26 |
| US8321377B2 (en) | 2012-11-27 |
| CA2645969C (en) | 2015-02-03 |
| JP5021721B2 (ja) | 2012-09-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| BRPI0710003B1 (pt) | geração de cópias reservas consistentes com o pedido a nível hospedeiro de máquinas virtuais | |
| US7370164B1 (en) | Backup of virtual machines from the base machine | |
| US10067835B2 (en) | System reset | |
| US9262290B2 (en) | Flash copy for disaster recovery (DR) testing | |
| CN107111533A (zh) | 虚拟机集群备份 | |
| Kashyap et al. | Instant {OS} Updates via Userspace {Checkpoint-and-Restart} | |
| US9075809B1 (en) | Methods and systems for application cluster virtual nodes | |
| CN117093332B (zh) | 一种虚拟机克隆的实现方法和装置 | |
| US9152817B1 (en) | Methods and systems for performing data protection operations | |
| Randall et al. | Deploying the Tivoli Storage Manager Client in a Windows 2000 Environment | |
| HK1128781B (en) | Creating host-level application-consistent backups of virtual machines | |
| HK1128781A (en) | Creating host-level application-consistent backups of virtual machines |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| B25A | Requested transfer of rights approved |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US) |
|
| B06A | Patent application procedure suspended [chapter 6.1 patent gazette] | ||
| B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
| B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 13/11/2018, OBSERVADAS AS CONDICOES LEGAIS. |
|
| B21F | Lapse acc. art. 78, item iv - on non-payment of the annual fees in time |
Free format text: REFERENTE A 19A ANUIDADE. |