BRPI0710003A2 - geração de backups consistentes com o pedido a nìvel hospedeiro de máquinas virtuais - Google Patents

geração de backups consistentes com o pedido a nìvel hospedeiro de máquinas virtuais Download PDF

Info

Publication number
BRPI0710003A2
BRPI0710003A2 BRPI0710003-5A BRPI0710003A BRPI0710003A2 BR PI0710003 A2 BRPI0710003 A2 BR PI0710003A2 BR PI0710003 A BRPI0710003 A BR PI0710003A BR PI0710003 A2 BRPI0710003 A2 BR PI0710003A2
Authority
BR
Brazil
Prior art keywords
host
virtual machine
level
volumes
virtual
Prior art date
Application number
BRPI0710003-5A
Other languages
English (en)
Inventor
L. Michael Michael
L. Scheidel William
B. Luber Paul
Adrian Oltean P.
Kalach Ran
Original Assignee
Microsoft Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corporation filed Critical Microsoft Corporation
Publication of BRPI0710003A2 publication Critical patent/BRPI0710003A2/pt
Publication of BRPI0710003A8 publication Critical patent/BRPI0710003A8/pt
Publication of BRPI0710003B1 publication Critical patent/BRPI0710003B1/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/128Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1466Management of the backup or restore process to make the backup process non-disruptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

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

"GERAÇÃO DE BACKUPS CONSISTENTES COM O PEDIDO A NÍVELHOSPEDEIRO DE MÁQUINAS VIRTUAIS"
ANTECEDENTES
1. Antecedentes e Técnica Relevante
Da mesma forma que os sistemas computacionais apresentam uma crescente po-pularidade, assim cresceram também as necessidades para o armazenamento e obtençãode proteção de cópias dos arquivos eletrônicos e outras formas de comunicações geradaspor usuários e as aplicações associadas com os mesmos. Em regra, os sistemas computa-cionais e os dispositivos correlatos geram arquivos a partir de uma variedade de motivos, talcomo no caso genérico de geração de um documento para processamento de palavras emum ambiente de trabalho, bem como a geração de um arquivo utilizado para finalidades debase de dados mais sofisticadas. Ainda, a maioria desses documentos pode incluir valiososprodutos de trabalho, ou informação sensível que devam ser protegidos. Portanto, apreciar-se-á que ocorre uma variedade de motivos pelos quais uma organização desejaria um bac-kup dos arquivos eletrônicos numa base regular, e, daí, gerando uma restauração confiávelde um arquivo originalmente gerado quando preciso.
Uma vez que sistemas computacionais são desenvolvidos continuamente para con-figurações mais complexas de hardware e software, as complicações associadas com a pro-teção em cópia dessas configurações vieram a crescer também. Na sua forma mais sim-ples, a proteção em cópia de um computador envolve simplesmente copiar-se a informaçãoa partir de um disco ou volume do computador, e transferir esta informação junto a uma lo-calização de backup. Contudo, a simples proteção em cópias de dados de um disco torna-sealgo muito mais complexo quando se fazendo o backup de grandes grupos de dados emvários servidores junto a uma rede de trabalho, particularmente quando os grupos de dadosestão sendo continuamente alterados durante o processo de backup. Por exemplo, algumaspreocupações das grandes empresas, além da simples proteção em cópia dos dados, inclu-em a necessidade do armazenamento rápido, confiável e relativamente de maneira contínuados dados de modo que eles também possam ser rapidamente recuperados. Preocupaçõesadicionais incluem em como se ter acesso a vários dados do 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 backup do que no caso de outroservidor.
Estes tipos de complicações na geração de cópias de proteção de dados do servi-dor podem ser particularmente dificultadas no ambiente servidor virtualizado. Em regra, umambiente 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 circuns-tâncias peculiares de um sistema operacional sendo instaladas em uma porção alocada dosrecursos 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 repre-sentada através de um único identificador de rede de trabalho, e assim apresentar-se sepa-rada e distinta na rede de trabalho a partir do próprio servidor hospedeiro. Ainda, cada má-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 funcionarcomo uma máquina distinta do servidor hospedeiro, a máquina virtual pode funcionar tam-bé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á-quinas virtuais podem ser utilizadas em uma variedade de maneiras importantes para distri-buiçã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ásicados volumes hospedeiros nos quais as máquinas virtuais estão instaladas e ter a plena utili-zação daqueles dados (por exp., com consistência e validade) caso necessário. Uma dasrazões para estas dificuldades surge a partir da própria natureza das máquinas virtuais, poisespera-se que apresentem identidades distintas (por exp., incluindo sistemas operacionaisdistintos) com respeito às outras máquinas virtuais, e com respeito ao(s) servidor(es) hos-pedeiro(s) correspondente(s). Por exemplo, o servidor hospedeiro não pode simplesmenteinstruir pedidos no interior da máquina virtual para se gerar um instantâneo "consistente como pedido" de seus dados, uma vez que tais pedidos, via de regra, encontram-se sob o con-trole da máquina virtual. Assim, quando um hospedeiro gera um instantâneo ou uma cópiade backup do volume (ou volumes) aonde a máquina virtual encontra-se instalada, os pro-cessos internos da máquina virtual podem continuar a funcionar, e para tanto, uma cópia damáquina virtual incluiria, igualmente, dados e o estado do arquivo, que permaneceriam váli-dos para diferentes períodos de tempo. Ou seja, a cópia dos dados da máquina virtual nãoseria "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 backup "consistente com o pedido" significa que os pedidos inclusosnos processos de preparação do backup, e a produção dos arquivos de pedidos a seremprotegidos com cópia baseiam-se no que contém o disco físico, bem como no que está nasua memória. Para tanto, esses arquivos ou instantâneos a serem backupeados são consis-tentes com o estado atual do pedido, e são recuperáveis através do pedido em um pontoposterior. Em contraste, dados com "consistência bloqueada" referem-se a dados que sãobackupeados genericamente sem o benefício do envolvimento de pedidos utilizados para ageração de dados no primeiro instante. Resulta que a produção primária durante um backupcom consistência bloqueada compreende um grupo de dados idênticos aos dados encontra-dos no disco físico durante o processo de backup sem consideração pelo que se encontrana sua memória, e sem consideração pelo estado do pedido. Isto é semelhante à eliminaçãode dados de arquivos durante uma pane total do sistema, tal como, durante uma queda depotência ou uma re-alimentação, não existindo garantias de haver, por exemplo, consistên-cia do pedido. Em particular, para certos ambientes operacionais complexos, particularmen-te aonde seja vital se garantir uma transição contínua tanto quanto o possível após um bac-kup, dá-se preferência a um backup de consistência em consistência (ou seja, um sistemade arquivo e/ou pedido).
Ocorre uma variedade de maneiras para se gerar um backup consistente do volumede dados. Infelizmente, os sistemas convencionais que tentam gerar backups consistentescom o pedido de máquinas virtuais (e o correspondente gerenciamento dos volumes), emregra, não podem gerar de modo eficaz um backup consistente com o pedido sem antesdarem pausa ou desligarem a máquina virtual. Isto resulta, tipicamente, em um indesejávelvolume de tempo inativo, o que, em algumas situações para certos softwares com "missõescríticas" poderiam ser geradas dificuldades particulares para um administrador. Uma razãopara isso é que o volume de interesse pode ser copiado enquanto não estão sendo proces-sadasNescritas adicionais junto ao volume, de modo que os dados gerados através do pedi-do sejam todos consistentes para o mesmo período de tempo. Naturalmente, em um ambi-ente aonde é importante o acesso prático, contínuo e eficaz dos dados, não é desejável sepausar ou desligar uma máquina virtual para se proceder a uma cópia de backup, e issopode vir a gerar um desgaste dentro dos recursos primários de uma empresa.
Outras formas que uma empresa pode tentar para geração de backups consisten-tes com o pedido em uma máquina virtual é através da instalação de um agente de backupespecífico circunscrito a cada instante de uma dada máquina virtual. Em regra, um agentede backup será configurado para interagir com as unidades de escrita do pedido no interiordo sistema operacional para geração de um backup consistente com o pedido, da mesmamaneira conforme poderia ser feito, normalmente, no nível hospedeiro para o volume princi-pal de servidores hospedeiros. Infelizmente, não é algo simples se instalar novos agentes debackup para cada máquina virtual. Por exemplo, tipicamente, uma organização irá necessi-tar adquirir um novo agente (ou licença)de backup em separado para cada máquina virtual,e daí, instalar cada agente de backup no interior da máquina virtual. Vê-se que isto poderepresentar uma dificuldade significativa em termos de custo e gastos com recursos (porexp., a inclusão de gerenciamento elevado) para grandes empresas que podem ter deze-nas, centenas ou mesmos milhares de máquinas virtuais em funcionamento.
Consequentemente, ocorre um número de dificuldades associadas com o backupde máquinas virtuais que podem ser analisadas.
BREVE SUMÁRIO
Implementações da presente invenção proporcionam sistemas, métodos, e produ-tos de programas computacionais configurados para gerarem backups consistentes a nívelhospedeiro em uma ou mais máquinas virtuais. Em particular, as implementações da pre-sente invenção fornecem a habilidade de backup de um servidor hospedeiro corresponden-do a uma ou mais máquinas virtuais utilizando solicitadores e unidades de escrita de backupem uma forma consistente, sem necessariamente incorrer em interrupções significantes jun-to à 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 VSScom servidor virtual) instrui cada máquina virtual a gerar um ou mais instantâneos consis-tentes com o pedido a partir do volume de dados ao nível da própria máquina virtual. O pe-dido de backup no servidor hospedeiro serve também para gerar instantâneos dos volumesa nível hospedeiro aonde uma ou mais máquinas virtuais estão instaladas(por exp., um ar-quivo seu em Disco Rígido Virtual). O servidor hospedeiro pode então restabelecer os ins-tantâneos a nível de máquina virtual previamente gerados do interior dos instantâneos anível de hospedeiro, e concluir os processos de backup.
Por exemplo, um método a partir da perspectiva de um servidor hospedeiro parageração de um backup consistente do volume de dados da máquina virtual sem a necessi-dade de se solicitar a interrupção ou re-alimentação de uma ou mais máquinas virtuais, po-de envolver a identificação de, pelo menos, uma máquina virtual apresentando um ou maiscomponentes para os processos de backup envolvendo a unidade de escrita. O método po-de envolver ainda o envio de uma instrução para cada uma ou mais máquinas virtuais parapreparação de um instantâneo 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 hospedeirosaonde uma ou mais máquinas virtuais estejam instaladas. O método pode ainda envolverrestauração do instantâneo consistente com o pedido dos volumes da máquina virtual feitopor pelo menos uma máquina virtual.
Em contraste a isso, um método, a partir da perspectiva de uma máquina virtual degeração de um backup consistente para um ou mais volumes em máquina virtual em res-posta 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 hospe-deira para identificação dos componentes de software disponíveis. O método pode envolvertambém o recebimento de uma solicitação a partir da unidade de escrita hospedeira paraobter um instantâneo de um ou mais volumes hospedados pela máquina virtual com, pelomenos, um dos componentes de software disponíveis. O método pode envolver ainda o en-vio de instruções para uma ou mais unidades de escrita de pedido na máquina virtual parapreparo correspondente de um ou mais pedidos na máquina virtual para backup. Aindamais, o método pode envolver o envio de um sinal junto à unidade de escrita hospedeirapelas quais preparações de instantâneo tenham sido completadas para cada um ou maisvolumes hospedados no interior da máquina virtual.
Este Sumário é fornecido para introduzir uma seleção de conceitos, em uma formasimplificada, sendo descritos mais adiante na seção Descrição Detalhada. Este Sumário nãopretende identificar características chaves ou essenciais da matéria em questão, ora reivin-dicada, nem se pretende utilizá-lo como um auxiliar na determinação do escopo da matériaem questão reivindicada.
Características e vantagens adicionais da invenção serão estabelecidas no relatórioque se segue, e em parte serão óbvias a partir do relatório descritivo, ou poderão ser assimi-ladas através da prática da invenção. As características e vantagens da invenção podem serlevadas a termo e obtidas por meio dos instrumentos e cominações particularmente salien-tadas nas reivindicações apensas. Essas e outras características da presente invenção tor-nar-se-ão mais plenamente evidentes a partir da descrição a seguir e das reivindicaçõesapensas, ou poderão ser assimiladas através da prática da invenção conforme estabelecidadaqui em diante.
BREVE DESCRIÇÃO DOS DESENHOS
De forma a descrever-se a maneira pela qual as vantagens e características acimacitadas e outras vantagens e características da presente invenção podem ser obtidas, des-taque 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çãoe não devem ser considerados de escopo limitado, a invenção será descrita e explicada comespecificidade 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 imple-mentação da presente invenção aonde um pedido de backup a nível hospedeiro identificaqual de uma ou mais máquinas virtuais poderá ser backupeada em uma maneira consisten-te;
a Figura 1B ilustra os componentes da Figura 1A, aonde o servidor hospedeiro ini-cializa os processos de backup em conjunto com um solicitador vinculado a nível de máqui-na 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 comservidor hospedeiro gera instantâneos dos volumes hospedeiros que são instalados junto auma ou mais máquinas virtuais, de modo que os instantâneos a nível hospedeiro contenhamtambém o volume de dados da máquina virtual, que por sua vez contêm os instantâneos aní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 imple-mentação da presente invenção, aonde o pedido de backup ilustrado nas Figuras de 1A-1Crestaura os dados do instantâneo a nível hospedeiro apresentando dados do instantâneo anível de máquina virtual ali contidos; e
a Figura 2 ilustra fluxogramas de métodos compreendendo uma série de atos deacordo com a implementação da presente invenção a partir das perspectivas de um servidorhospedeiro e de uma máquina virtual para fornecimento de backups consistentes com o pe-dido 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, eprodutos de programas computacionais configurados para gerarem consistentes backups anível hospedeiro em uma ou mais máquinas virtuais. Em particular, as implementações dapresente invenção fornecem a capacidade de backup de um servidor hospedeiro corres-pondendo a uma ou mais máquinas virtuais utilizando os solicitadores e as unidades deescrita de backup existentes em uma maneira consistente, sem necessariamente se incorrerem interrupções significativas junto a operação de uma ou mais máquinas virtuais. Em umaimplementaçã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çãode um ou mais instantâneos consistentes com o pedido de seu próprio volume de dados anível de máquina. O pedido de backup no servidor hospedeiro também gera instantâneosdos volumes a nível hospedeiro aonde uma ou mais máquinas virtuais (por exp., um arquivoem Disco Rígido Virtual das mesmas) são instaladas. O servidor hospedeiro pode entãorestabelecer os instantâneos a nível de máquina virtual gerados previamente a partir do inte-rior dos instantâneos, e concluir os processos de backup.
Poderá se apreciar após a leitura deste relatório descritivo e das reivindicações queum servidor hospedeiro (por exp., através de uma unidade de escrita com servidor virtual)pode também ser capaz de gerar, não obstante os backups consistentes de máquinas virtu-ais, mesmo se elas não puderem ser prontamente identificadas como estando configuradaspara processos de backup de consistência em consistência(por exp. sistema de arquivo e/oupedido). Por exemplo, as máquinas virtuais podem ser desligadas ou então não estarem emfuncionamento, ou as máquinas virtuais podem não estarem instaladas com os componen-tes de hardware e software apropriados. Não obstante, o servidor hospedeiro pode entãoutilizar diferentes componentes para copiar os volumes hospedeiros e as máquinas virtuaiscorrespondentes em uma maneira que preserva a condição, pausando ou interrompendo asmáquinas virtuais, pelo menos, momentaneamente. A unidade de escrita do servidor hospe-deiro 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 im-plementações da presente invenção podem fornecer backups consistentes de máquinasvirtuais em uma forma que minimiza o tempo de inatividade, e sem necessitar-se da aquisi-ção e instalação de novos agentes de backup. Para tanto, empresas que implementam so-luçõ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 maneiraque minimiza os gastos de recursos primários de uma empresa.
Conseqüentemente, a Figura 1A ilustra um servidor hospedeiro 100 de exemploconfigurado para gerenciar os volumes 110 e 115. Instalados nos volumes 110 e 115 com-preendem máquinas virtuais 120 e 130, respectivamente. Como forma de explicação, embo-ra cada máquina virtual 120, 130 possa ser interpretada como um sistema computadorizadocompartimentado por nível, cada máquina virtual 120, 130 pode ser pensada também comouma 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 porvolume, isto não se faz necessário, e podem ocorrer de haver várias máquinas virtuais insta-ladas em qualquer dado volume no servidor hospedeiro 100. Similarmente, cada máquinavirtual pode vasculhar múltiplos volumes em um ou mais servidores hospedeiros.
Além do mais, cada máquina virtual pode manejar drives adicionais, que compre-endem alocações efetivas de volumes adicionais no interior da(s) alocação(ões) de volu-me(s) aonde esteja a dada máquina virtual instalada. Por exemplo, a Figura 1A mostra quea máquina virtual 120 também gerencia um ou mais discos físicos virtuais, que, não obstan-te, compreendem parte do volume hospedeiro 100. Em regra, cada disco físico virtual podeser 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 nointerior 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 volu-me para simplicidade) pode apresentar um volume que aparece como drive "m:\" - ou algumoutro identificador único apropriado para um dado sistema operacional - enquanto o VHD127 (que também neste caso inclui somente um volume) pode apresentar um volume queaparece 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 debackup 105, que pode ser referido também como um "solicitador hospedeiro", ou "solicitadora nível hospedeiro". Em regra, o pedido de backup 105 compreende uma série de instruçõesexecutáveis por computador configuradas para direcionarem os eventos de backup para umhospedeiro 100. Em uma implementação, tal como no ambiente operacional MICROSOFT,por exemplo, o pedido de backup 105 compreende um Solicitador de Serviço de CópiasNegativas do Volumef VSS"). A Figura 1A mostra também que o pedido de backup 105,por sua vez, pode ser configurado para direcionar suas instruções de backup através daunidade de escrita hospedeira 125, que pode ser referida também como uma "unidade deescrita hospedeira", "unidade de escrita a nível hospedeiro" ou "unidade de escrita VSS comservidor 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 backuprecebidas a partir do pedido de backup 105. Em uma implementação, tal como no ambienteMICROSOFT , por exemplo,, a unidade de escrita hospedeira 125 pode incluir uma Unida-de de Escrita VSS, tal como a unidade de escrita VSS utilizada com o SERVIDOR VIRTUALMICROSOFT. Para fins explicativos, a referência feita aqui aos componentes MICROSOFTsã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 aquidescritos podem ter aplicações junto a uma ampla variedade de componentes, módulos, efunções utilizadas em outros ambientes operacionais.
De modo a se realizar backups consistentes das máquinas virtuais, o hospedeiro100 irá, em regra, necessitar determinar qual das máquinas virtuais hospedeiras pode rela-tar os componentes apropriados possíveis, configurados para executar backups consisten-tes em primeiro lugar. Como uma questão preliminar, dá-se continuidade a referência feitaaqui para processos instantâneos ou backups "consistentes com o pedido". Apreciar-se-á,contudo, que os processos para backup consistente com o pedido compreendem somenteum exemplo das operações de backups "consistentes", de acordo com as implementaçõesda presente invenção. Outros exemplos de processos de backups consistentes incluem osistema de arquivo e/ou os processos de backup consistentes com bloqueios.
Em qualquer eventualidade, e com referência aos backups consistentes com o pe-dido, por exemplo, algumas máquinas virtuais podem ser instaladas com as unidades deescrita e solicitadores apropriados para a realização de backups consistentes com o pedido,enquanto que outras máquinas virtuais podem ser instaladas sem as unidades de escrita esolicitadores apropriados. Para aquelas máquinas virtuais funcionando sem tais componen-tes apropriados, o hospedeiro 100 pode ainda proceder ao backup daquelas máquinas virtu-ais, mas podendo não proceder necessariamente da mesma maneira como feito pelas comos componentes apropriados. Em particular, o hospedeiro 100 pode ser configurado pararealizar backups daquelas máquinas virtuais que apresentam os componentes apropriadossem tempo inativo ou interrupção (ou virtualmente nenhum deles), e são configuradas alter-nativamente para backups daquelas máquinas virtuais que não apresentam os componentesapropriados (i.é, incompletas ou fora de operação) com pelo menos algum tempo de inativi-dade ou com interrupção.
Conseqüentemente, a Figura 1A mostra o pedido de backup 105 (i.é, o "solicitadorhospedeiro") iniciando os serviços de backup, pelo menos em parte, através de envio desolicitação 103 à unidade de escrita hospedeira 125. Neste caso, a solicitação 103 instrui aunidade de escrita hospedeira 125 para identificar quais máquinas virtuais podem ter bac-kups realizados sem "tempos de inatividades". Por exemplo, a solicitação 103 instrui unida-de 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 desem-penho de um backup interno consistente com o pedido. Em uma implementação no ambien-te MICROSOFT, por exemplo, tais componentes podem incluir aqueles que sejam compatí-veis com as "Adições VM" empregadas conforme uma infra-estrutura interna do SERVIDORVIRTUAL MICROSOFT.
Esses e outros componentes de máquina virtual configurados de forma semelhantesão configurados para interagirem a partir do interior de uma máquina virtual (e responde-rem as instruções dali derivadas), por exemplo, uma unidade de escrita com servidor virtuala 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(quepode ser, por exemplo, uma Interface de Programa de Pedido privado - "API privado") coma máquina virtual 120, e identificar que máquina virtual 120 apresenta componentes referen-tes à "versão x". Por exemplo, a Figura 1A mostra que a máquina virtual 120 inclui o "Solici-tador Vinculado 140".
A Figura 1A mostra também que a unidade de escrita hospedeira 125 comunica-seainda com a máquina virtual 130 (por exp., via a mensagem 111), e que a unidade de escritahospedeira 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 apre-senta os componentes apropriados para a consistência dos processos de backup. Em res-posta as suas comunicações com as máquinas virtuais (por exp., 120,130,etc.), a unidadede escrita hospedeira 125 pode enviar uma ou mais mensagens de suas respostas coleta-das de volta ao pedido de backup 105. Por exemplo, a unidade de escrita envia a mensa-gem 113, que indica que máquina virtual 120 compreende a versão "x", e inclui os compo-nentes apropriados, e indica ainda que máquina virtual 130 compreende a versão "y", masnão inclui os componentes apropriados.
Mediante este recebimento, a Figura 1A mostra que pedido de backup 105 podepegar a mensagem 113, e efetuar suas próprias determinações em quais máquinas virtuaisrealizar o backup, e em quais delas não realizar o backup. Por exemplo, a Figura 1A mostraque 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 Backup sem Tempo de Inatividade", e posicionaa máquina virtual 130 na categoria "VMS com Backup com Algum Tempo de Inatividade" (ouVMS sem realização de backup). Em implementações alternativas, a unidade de escritahospedeira 125 simplesmente procede as suas próprias determinações sobre o que deveriaou não ser backupeado ( ou backupeado com algum tempo de inatividade), e daí apresentatais categorizações de volta ao pedido de backup 105. Em qualquer evento, as categoriza-ções ilustradas não significam necessariamente que a máquina virtual 130 não pode serbackupeada, por si só. Na maioria dos casos, isto simplesmente significa que a máquinavirtual 120 não pode ser backupeada em uma maneira apropriadamente consistente, e amáquina virtual 130 pode ser configurada somente para backup em uma maneira consisten-te com algum tempo de inatividade. Após a categorização de cada máquina virtual, o pedidode backup 105 inicia-se implementando-se os processos de backup.
Conforme mostrado na Figura 1B, por exemplo, o pedido de backup 105 envia ins-truçõ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 backup consistentescom o pedido, pelo menos, com respeito a máquina virtual 120. A unidade de escrita hos-pedeira 125 prepara então sua própria comunicação 117b, que informa a uma máquina vir-tual para dar início aos processos de backup "envolvendo a unidade de escrita". A unidadede escrita hospedeira 125 envia, então, uma mensagem 117b para cada máquina virtual(por exp., 120) indicada pelo pedido de backup 105, e cada máquina virtual indicada por suavez 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 vir-tual 120 recebe a mensagem 117b. Em uma implementação, a unidade de escrita hospedei-ra 125 pode comunicar-se (por exp., mensagem 111, 117b, etc.) com o solicitador vinculado140 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 imple-mentações. Em outras implementações, tal como caso a unidade de escrita hospedeira 125e o solicitador vinculado 140 estejam localizados em localidades de rede de trabalho sepa-radas (ou mesmo em domínios diferentes), a unidade de escrita hospedeira 125 pode co-municar-se com outras interfaces e ou componentes de comunicação apropriados. Em parti-cular, apreciar-se-á que implementações da presente invenção podem também ser pratica-das mesmo quando necessitando-se do backup de uma máquina virtual a partir de uma lo-calidade remota para uma Ampla Área de Rede de trabalho.
De qualquer forma, e uma vez acionado , o solicitador vinculado 140 dá início aosprocessos de backup de seus volumes de acordo com as instruções iniciais do pedido debackup 105. Conforme mostrado na Figura 1B, por exemplo, o solicitador vinculado 140 en-via uma mensagem interna à máquina virtual 117c para pedidos instalados em quaisquervolumes gerenciados pela máquina virtual 120. A mensagem 117c pode incluir instruçõespara cada unidade de escrita de pedido (por exp., uma unidade de escrita VSS1 não mostra-da) para preparo dos processos de backup consistentes com o pedido de cada volume ge-renciado no interior dos volumes contidos nos seus discos físicos(i.é, representados por ar-quivos VHD 123,127). Em regra, cada unidade de escrita de pedido pode compreender deinstruções executáveis por computador que podem ser inseridas nos serviços e pedidos nointerior da máquina virtual, e os quais auxiliam no fornecimento de backups consistentescom o pedido dos dados do pedido.
Para pedidos que serão executados quando o solicitador 117c os receber, a unida-de de escrita do pedido pode responder, por exemplo, através da preparação de seus esto-ques 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 apagardados na memória do disco. Adicionalmente, a unidade de escrita do pedido pode fornecerinformação sobre o nome do pedido, ícones, arquivos para inclusão ou exclusão, e uma es-traté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 osolicitador vinculado 140 pode assumir então que todos os dados manipulados pelas unida-des de escrita de pedido no volume apresentam-se consistentes, as bases de dados sãoencerradas, e nenhum esforço a mais é preciso para execução do backup.
Em regra, uma unidade de escrita de pedido, de acordo com uma ou mais imple-mentações da presente invenção, pode estar associada com um ou mais componentes. Ca-da componente, por sua vez, pode compreender de um grupo de arquivos (por exp., umabase 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 compo-nente e de cada arquivo correspondente do componente para um serviço de backup apro-priado (por exp., um solicitador de máquina virtual - por exp., solicitador vinculado 140). Ca-da unidade de escrita de pedido pode fornecer ainda informação sobre a restauração dosdados em uma base de componente para componente (e, portanto de arquivo-componentepara arquivo-componente). Em uma implementação, por exemplo, a unidade de escrita hos-pedeira 125 pode fornecer uma lista de arquivos utilizados para manter a consistência dainformação em torno das máquinas virtuais gerenciadas (por exp., 120,130, etc.). A unidadede escrita hospedeira 125 pode comunicar, por exemplo, para cada máquina virtual, um tra-jeto 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 mostraque as unidades de escrita de pedidos correspondentes no interior dos volumes 123 e 127produzem um estado consistente de pedido para seu volume de dados nos mesmos. O vo-lume de dados comunicados através de pedidos relevantes para o volume no interior doarquivo em disco físico correspondente (por exp., VHDs 123, 127) são abrangidos nos ins-tantâneos do volume. Por exemplo, a Figura 1B mostra que o volume de dados 145 no VHD123 são copiados como "cópias limpas de dados" 155, e dados 150 no VHD 127 são copia-dos como "cópias limpas de dados "160. Em regra, essas cópias "limpas" de dados 155,160representam cópias consistentes (por exp., cópias negativas do volume) dos dados no inte-rior do instantâneo do volume vinculado, e , em regra, não constituem cópias separadas dopróprio instantâneo. Em particular, as "cópias limpas" 155, 160 compreendem essencialmen-te cópias consistentes com o pedido do volume de dados no interior dos instantâneos conti-dos 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) te-nha feito sua própria cópia interna (ou "limpa") consistente com o pedido a partir de seusvolumes no disco físico (por exp., cópia 155 dos dados 145), a unidade de escrita hospedei-ra 125 pode viabilizar que o pedido de backup 105 efetue a produção de instantâneos dosvolumes hospedeiros (por exp., 110) aonde as máquinas virtuais apropriadamente configu-radas (por exp., 120) estejam instaladas. O volume de dados da máquina virtual no interiordesses instantâneos a nível hospedeiro, contudo, não se apresentam necessariamente con-sistentes com o pedido (i.é, "sujos" ou "consistentes com bloqueios").
Em regra, cópias "sujas" são aquelas que não podem ser garantidas como sendoconsistentes com o pedido com respeito ao volume de dados da máquina virtual, pelo me-nos, em parte, uma vez que estas não implicam nos processos de instantâneos envolvendounidades de escrita no interior das máquinas virtuais. Por exemplo, a unidade hospedeira100 pode ser utilizada pelas unidades de escrita de pedido a nível hospedeiro (por exp., uni-dade de escrita hospedeira 125) junto ao volume de dados 110 para backup com os proces-sos envolvendo as unidades de escrita, porém, conforme previamente mencionado, essasunidades de escrita de pedido a nível hospedeiro somente irão copiar a integridade dos ar-quivos na máquina virtual conforme eles sejam observados pela unidade hospedeira. Resul-ta que, mesmo caso se utilizando as unidades de escrita de pedido a nível hospedeiro paragerar-se cópias consistentes com o pedido do volume de dados a nível hospedeiro, cadamáquina virtual sublimada pode passar por várias mudanças de dados no período de produ-ção do backup a nível hospedeiro do volume 110.
Por exemplo, a Figura 1C mostra que a unidade de escrita hospedeira 125 envia amensagem 157 para o pedido de backup 105, em que a mensagem 157 indica que o backupdas maquinas virtuais (por exp., 120) encontra-se finalizado. Para tanto, o pedido de backup105 pode dar continuidade na execução de instantâneos a nível hospedeiro do volume hos-pedeiro 110 (e também do volume 115, etc, caso seja apropriado). Em resposta, a Figura 1Cmostra neste exemplo que o pedido de backup 105 dá início (por exp., sinal 1350 aos pro-cessos de backup nos volumes 110,115,etc. Em uma implementação, por exemplo, o solici-tador hospedeiro 105 dá início aos processos de backup envolvendo as unidades de escritae produz um instantâneo consistente com o pedido dos dados nos volumes a nível hospe-deiro 110, 115 (i.é, consistência com o pedido à parte dos arquivos na máquina virtual) a-través de um componente VSS a nível hospedeiro (não mostrado).
Por exemplo, a Figura 1C mostra que a unidade hospedeira 100 gera um instantâ-neo 167, 173 dos volumes hospedeiros 110, 115. Os instantâneos 167, 173 incluem tambémcópias dos arquivos VHD da máquina virtual ali contidos (i.é, arquivo VHD 123 no interior dovolume 110, etc.). Uma vez que, durante o instantâneo a nível hospedeiro, as máquinas vir-tuais 120, 130 não apresentam suas unidades de escritas correspondentes envolvidas nosprocessos de instantâneos, os instantâneos a nível hospedeiro, mais recentes, incluem vo-lume de dados VHD (por exp., 156, 161) referente aos volumes a nível de máquina virtualque se apresentam sem consistência com o pedido. Não obstante, uma vez que a máquinavirtual em questão já tenha executado uma cópia consistente com o pedido nos seus volu-mes, os dados VHD 156 no interior do instantâneo a nível hospedeiro 167 incluem o instan-tâneo 155 consistente com o pedido previamente gerado (i.é, gerado na máquina virtual). Deforma similar, os dados VHD 161 no interior do instantâneo 167 a nível hospedeiro incluem oinstantâneo 160 consistente com o pedido previamente gerado (i.é, gerado pela máquinavirtual). Conforme mencionado acima, os dados VHD 156, 161 no interior do instantâneo anível hospedeiro 167 (também 173) dos arquivos VHD 123, 127 são, em regra, consistentescom bloqueios no seu todo.
Diante da geração de instantâneos a nível hospedeiro 167, 173 dos volumes a nívelhospedeiro, a unidade hospedeira 100 irá recuperar o instantâneo a nível da máquina virtuala partir do interior dos instantâneos do volume 167, 173 a nível hospedeiro. Em uma imple-mentação, isto envolve a reversão dos dados instantâneos VHD a nível hospedeiro 156,161de volta aos dados instantâneos 155, 160 a nível de máquina virtual correspondentes. Paraisto acontecer, a unidade de escrita hospedeira 125 pode inicialmente instalar esses instan-tâneos a nível de máquina virtual e a nível hospedeiro no interior do sistema de arquivosutilizando qualquer número de componentes apropriados para exposição dos dados subli-mados. Por exemplo, o pedido de backup 105 pode configurar a unidade de escrita 125 parapossibilitar que os instantâneos hospedeiros 167, 173, etc. (e os instantâneos de arquivosVHD sublimados) sejam capazes de escrita (ao invés de leitura somente). Além do mais, aunidade de escrita hospedeira 125 pode obter aquelas IDs dos dispositivos para os instan-tâneos a nível hospedeiro, e os utilizarem para identificar as diferentes "IDs dos Dispositi-vos"" correspondendo aos arquivos VHD embutidos (por exp., 123,127).
Mediante exposição dos arquivos VHD da máquina virtual a partir do interior dosinstantâneos 167, 173 a nível hospedeiro capazes de serem escritos, o servidor hospedeiro10 pode, então, instalar cada ID de dispositivo correspondendo a um arquivo VHD, de modoque 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 arquivosVHD 123, 127 no interior do instantâneo hospedeiro em conjunção com um componente doinstalador 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 es-crita hospedeira 125) envia instruções 175 para instalação das IDs dos dispositivos, incluin-do 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 ImagemVHD" 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 do instantâneo hospe-deiro 167, por sua vez, pode expor os sistemas operacionais dentro desses arquivos VHD, oque, por sua vez, possibilita a que os instantâneos a nível de máquina virtual 155, 160 se-jam expostos no servidor hospedeiro 100. Em particular, a instalação dos arquivos VHD 123,127 a partir do interior do instantâneo hospedeiro 167 do volume 110, neste caso, expõe osinstantâneos a nível de máquina virtual 155, 160 inseridos nos diferentes dados VHD156,161 do instantâneo hospedeiro 167. Assim, a Figura 1C mostra também que a unidadehospedeira 100 instala o arquivo VHD 123 inserido no instantâneo hospedeiro 167 comodrive "x:\", expondo os dados VHD 156, e expondo ainda os dados instantâneos 155 a nívelde máquina virtual mais recentes ali gerados; e, ainda, instala o arquivo VHD 127 a partir dointerior do instantâneo hospedeiro 167 como drive "y:\", aonde o instantâneo hospedeiro 167inclui também os dados VHD 161, que apresentam expostos os dados instantâneos 160 anível de máquina virtual mais recentes ali gerados.
Diante do pedido de backup 105 ter sido instalado nos arquivos VHD 123, 127 apartir do interior do instantâneo hospedeiro 167, o pedido de backup 105 pode, agora, rever-ter os dados VHD 156,161 do instantâneo 167 a nível hospedeiro de volta aos dados VHD155,160 dos instantâneos do volume a nível de máquina virtual. Conforme mostrado naFigura 1D, por exemplo, o pedido de backup 105 utiliza a interface de componente 185 (porexp., uma interface de componente VSS) para reverter os dados instantâneos sujos e limposno interior dos drives "x" e "y". Em uma implementação, o pedido de backup 105 utiliza ainterface 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 backup 105 terá não somente cor-rígido ou ajustado ( ou seja, revertido, substituído) os dados instantâneos dos arquivos VHD123,127, mas também alterado todos os instantâneos 167 a nível hospedeiro, de modo queo volume de dados a nível de máquina virtual sublimados apresentam-se, agora, plenamen-te consistentes. Ou seja, todos os dados da máquina virtual no interior dos instantâneos aní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 coloca-dos sob o controle do processo de backup hospedeiro 100. Assim, quando a unidade hos-pedeira 100 executa seus próprios backups consistentes com o pedido a partir de seus ins-tantâneos do volume, este backup a nível hospedeiro pode agora incluir um backup consis-tente com o pedido a partir de cada máquina virtual configurada apropriadamente.
Os processos e componentes identificados acima são descritos, primariamente, pa-ra o caso aonde as máquinas virtuais identificadas (por exp., 120) proporcionam uma res-posta que indica configuração com os componentes de software apropriados para a geraçãode um backup consistente. Especificamente, tais máquinas virtuais (por exp., 120) podemser backupeadas com pouco ou nenhum tempo de inatividade. Conforme mencionado pre-viamente, contudo, podem ocorrer circunstâncias alternativas pelas quais uma dada máqui-na virtual não fornece nenhuma resposta, por não se encontrar em funcionamento, ou forne-ce uma resposta que indica que não foi configurada para realização de backups consisten-tes. Por exemplo, a máquina virtual 130 pode estar executando num sistema operacionalque não inclua certos componentes de software necessários, tais como as unidades de es-crita do pedido apropriadas (por exp., a versão correta de um serviço de cópia negativa), umsolicitador vinculado apropriado (por exp., 140) ou algo similar. Em tais circunstâncias alter-nativas, as implementações da presente invenção podem ainda proporcionar, pelo menos,backups consistentes com o bloqueio das máquinas virtuais (por exp., 130) que podem ounão necessitar, pelo menos, algum tempo de inatividade subsequente, caso urgências pos-teriores necessitem de garantias quanto à consistência dos dados.
Por exemplo, a unidade de escrita hospedeira 125 pode convocar uma interface decomunicação (não mostrada) e instruí-la a salvar todo o estado da máquina virtual 130 (e/oupara outras máquinas virtuais similarmente limitadas). Em uma implementação com respeitoem particular ao ambiente operacional MICROSOFT, por exemplo, a unidade de escritahospedeira 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 virtual130. Em particular, a interface de comunicação pode comunicar este fato junto a unidade deescrita 125, que por sua vez, possibilita a que o pedido de backup 105 gere um instantâneodo volume hospedeiro correspondente aonde se encontra a máquina virtual 130 (ou seja, ovolume 115).
Em acréscimo ao salvamento do estado da máquina virtual 130, a interface de co-municaçã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, ainterface de comunicação pode comunicar esta informação. Tal comunicação pode, por suavez, falhar nas operações de backup, e ocasionar um re-início numa oportunidade mais a-propriada. Em particular, o pedido de backup 105 pode prosseguir repetindo estas etapasaté que o pedido de backup 105 tenha concluído a geração de instantâneos do volume 115em um estado de consistência desejada.
Uma vez que as operações de backup tenham sido finalizadas, a unidade hospe-deira 100 terá gerado uma cópia do volume 110 consistente com o pedido e suas máquinasvirtuais correspondentes (por exp., 120), e terá gerado ainda uma cópia do volume 115 con-sistente (ou seja, pelo menos, consistente com o bloqueio) e suas máquinas virtuais corres-pondentes (por exp., 130). Apreciar-se-á que esta cópia do volume 115 pode não só serconsistente com o bloqueio, mas também "consistente com o VHD" com respeito a estadodo arquivo VHD. Em particular, o salvamento do estado da máquina virtual pode proporcio-nar um arquivo VHD válido e consistente que pode ser restaurado de forma bem sucedidaem 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 mui-tas funções instantâneas consistentes descritas previamente. Quando se utilizando um pro-vedor de hardware, por exemplo, um "Provedor de Hardware VSS" (por exp., um provedorplex/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 segerar 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 vo-lume e sua imagem correspondente. Isto pode expor o instantâneo a nível hospedeiro naforma de um dispositivo de disco permanecendo em separado. O pedido de backup 105pode então convocar qualquer quantidade de Serviços em Discos Virtuais ("VDS") e/ou APIscom Servidor de Cópias Negativas do Volume ("VSS") tornando a imagem do volume comcapacidade de escrita, manipular a imagem do volume, e então, expô-la e instalar os dadosinstantâneos 155, 160 limpos sublimados (ou seja, consistentes com o pedido). Este tipo desolução para hardware pode ser utilizada também com volumes em armazenagens conec-tadas remotamente, tal como em um ambiente da Rede de Trabalho na Área de Armazena-gem ("SAN") para geração de backups consistentes com o pedido das máquinas virtuaisdistribuídas através de várias mídias de armazenagens.
Ao longo deste relatório, as implementações da presente invenção podem incluirainda, por exemplo, a utilização de um solicitador vinculado 140 para geração de um instan-tâneo consistente com o pedido, transportável por hardware, inserido em uma máquina vir-tual particular (por exp., 120). Por exemplo, um componente inserido, por exemplo, na má-quina virtual 120 configurado para instantâneos de volumes SAN (por exp, um componenteVSS configurado adequadamente) pode gerar um instantâneo envolvendo a unidade de es-crita (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 hospedeiro100. O solicitador vinculado 140 pode então importar o instantâneo e a superfície do instan-tâneo na forma de um Número de Unidade Lógica ("LUN") no servidor hospedeiro. A unida-de de escrita hospedeira 125 pode então solicitar o pedido de backup 105 (ou seja, um soli-citador hospedeiro) para realizar o backup do LUN como parte da realização do backup damáquina virtual 120. O pedido de backup 105 pode, então, fazer o backup do LUN integral(ou seja, o instantâneo a nível de máquina virtual ou vinculado), de modo que a reversãocom, por exemplo, um instantâneo a nível hospedeiro de um volume de máquina virtual nãose faça necessária.
Conseqüentemente, as Figuras 1A-1D e o texto correspondente proporcionam umaquantidade de sistemas, componentes, e interfaces para o eficiente fornecimento de bac-kups a nível hospedeiro de máquinas virtuais em uma maneira consistente. Em acréscimoas implementações anteriores, a presente invenção pode ser descrita também em termos demé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 hospedei-ra 100 e da máquina virtual 120 para a geração de backups consistentes com o pedido, anível hospedeiro de máquinas virtuais. Os métodos e atos correspondendo a Figura 2 sãodescritos 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 unidadehospedeira 100 de geração de um backup consistente com o pedido de cada uma ou maisdas máquinas virtuais sem necessariamente requerer-se a interrupção ou pausa de uma oumais dessas máquinas virtuais, consiste de um ato 210 de identificação de uma ou maismáquinas virtuais em uma unidade hospedeira. O ato 210 inclui a identificação de, pelo me-nos, uma máquina virtual apresentando um ou mais componentes para processos de bac-kup envolvendo unidades de escrita. Por exemplo, o pedido de backup 105 (ou seja, "solici-tador hospedeiro" 105) questiona (via a mensagem 103) junto a unidade de escrita hospe-deira 125 quais máquinas virtuais estão presentes na unidade hospedeira 100, e quais des-sas máquinas virtuais podem ser backupeadas 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, enviaa 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 bac-kup (por exp., o solicitador vinculado 140), tal como, quais componentes podem ser empre-gados para a geração de backups consistentes com o pedido. A unidade de escrita hospe-deira 125 envia, então, a resposta 113 correspondente ao pedido de backup 105. O pedidode backup 105 determina, então, por exp., via o módulo de determinação 107, quais dasmáquinas virtuais identificadas podem ser backupeadas utilizando-se os métodos consisten-tes com o pedido (i.é, "VMs para Backups", que incluam os componentes apropriados), equais podem ser backupeadas utilizando-se outros métodos (i.é, "VMs para Backups comalgum Tempo de Inatividade") que não incluam os componentes apropriados, ou estejamdesligados.
Conseqüentemente, Figura 2 mostra ainda que um método a partir da perspectivada máquina virtual 120 de geração de um backup consistente de um ou mais volumes emmáquinas virtuais compreende um ato 210 de recebimento de uma solicitação para a identi-ficação dos componentes. O ato 210 inclui o recebimento de uma solicitação a partir da uni-dade de escrita hospedeira para identificar os componentes de software disponíveis. Porexemplo, a máquina virtual 120 (por exp., via o solicitador vinculado 140) recebe uma solici-tação 111 de versão, a qual inclui uma solicitação para identificar se a máquina virtual 120inclui um solicitador vinculado e uma ou mais unidades de escrita de pedido (e/ou suas ver-sões apropriadas), uma vez que estes seriam componentes apropriados para a geração deum backup consistente com o pedido. A máquina virtual 120, retorna, então, uma respostacorrespondente, a qual é formatada pela unidade de escrita hospedeira 125 na forma demensagem 113 e a envia ao pedido de backup 105.
Em acréscimo, a Figura 2 mostra que o método a partir da perspectiva da unidadehospedeira 100 compreende de um ato 220 de envio de uma solicitação de backup junto aogrupo de máquinas virtuais. O ato 220 inclui o envio de uma instrução para cada uma oupara 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, porexemplo, o pedido de backup 105 envia instruções 117a para o backup da máquina virtual120 junto à unidade de escrita hospedeira 125, aonde a máquina virtual 120 compreendeparte de um grupo de máquinas virtuais que apresentam os componentes apropriados paraa geração de instantâneos consistentes com o pedido com pouco ou nenhum tempo de ina-tividade. A unidade de escrita hospedeira 125, por sua vez, envia instruções 117b para darinício às preparações de backup envolvidas na unidade de escrita junto ao solicitador vincu-lado 140 na máquina virtual 120.
Conseqüentemente, 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çãoinstantânea a partir de uma unidade de escrita hospedeira. O ato 230 inclui o recebimentode uma solicitação a partir da unidade de escrita hospedeira para geração de um instantâ-neo de um ou mais volumes hospedados pela máquina virtual com pelo menos um doscomponentes de software disponíveis. Por exemplo, o solicitador vinculado 140 recebe amensagem 117b a partir da unidade de escrita 117b, aonde a mensagem 117b inclui umasolicitação de dar início aos processos instantâneos envolvendo a unidade de escrita. Paratanto, a máquina virtual irá começar a preparar um instantâneo de seus volumes gerencia-dos por cada arquivo VHD (por exp., 123,127, etc.).
Em acréscimo, a Figura 2 mostra que o método a partir da perspectiva da máquinavirtual 120 compreende de um ato 240 de envio de instruções de backup para uma ou maisunidades de escrita de pedido. O ato 240 inclui o envio de instruções para uma ou mais uni-dades de escrita de pedido na máquina virtual para preparação das aplicações correspon-dendo a uma ou mais máquinas virtuais por um instantâneo. Por exemplo, a Figura 1B mos-tra que o solicitador vinculado 140 envia a mensagem 117c junto às unidades de escrita depedido (não mostradas) nos volumes contidos nos arquivos VHD 123, 127. Em uma imple-mentação, isto pode envolver o envio de solicitação as unidades de escrita correspondendoa pedidos como base de dados, e-mail, ou outros tipos de pedidos semelhantes para o pre-paro de um instantâneo dos volumes de dados relevantes.
Além do mais, a Figura 2 mostra que o método a partir da perspectiva da máquinavirtual 120 compreende de um ato 250 de envio de um sinal indicando a finalização dos ins-tantâneos na máquina virtual. O ato 250 inclui envio de um sinal junto a unidade de escritahospedeira que realiza operações instantâneas para cada um ou mais dos volumes hospe-dados no interior da máquina virtual que tenham sido concluídos. Por exemplo, mediante oencerramento das atividades instantâneas na máquina virtual, o solicitador vinculado enviaum sinal de conclusão (não mostrado) para a unidade de escrita hospedeira 125. Em res-posta a este sinal, a unidade de escrita hospedeira 125 pode então enviar a mensagem 157para o pedido de backup 105, informando ao pedido de backup 105 a finalização das opera-ções instantâneas a nível hospedeiro.
Conseqüentemente, a Figura 2 mostra também que o método a partir da perspecti-va da unidade hospedeira 100 compreende de um ato 260 de identificação da finalizaçãodos instantâneos da máquina virtual. O ato 260 inclui a identificação de que as operaçõesinstantâneas em, pelo menos, uma das máquinas virtuais tenham sido encerradas. Por e-xemplo, conforme mencionado anteriormente, a unidade de escrita hospedeira 125 envia amensagem 157, que indica que os instantâneos a nível de máquina virtual foram completa-dos.
Em acréscimo, a Figura 2 mostra que o método a partir da perspectiva da unidadehospedeira 100 compreende de um ato 270 de geração de um ou mais instantâneos a nívelhospedeiro. O ato 270 inclui a geração de um ou mais instantâneos a nível hospedeiro deum ou mais volumes hospedeiros aonde encontra-se instalada, pelo menos, uma máquinavirtual. Por exemplo, o pedido de backup 105 envia instruções (por exp., 135) para continui-dade dos processos de backup junto aos volumes hospedeiros 110, 115. Conforme mostra-do na Figura 1B, isto pode resultar em um instantâneo hospedeiro 167 que inclui dados 156,161, arquivos VHD 123, 127 sem consistência com o pedido. Conforme aqui discutido, osdiferentes dados VHD do instantâneo 167 a nível hospedeiro, embora não necessariamentesendo consistentes com o pedido para os arquivos VHD 123, 127, não obstante, incluem osdados instantâneos VHD 155, 160 consistentes com o pedido gerado previamente. Em par-ticular, o instantâneo 167 a nível hospedeiro do volume 110 pode ser consistente com o pe-dido 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ívelhospedeiro podem ser feitos no caso de volumes a nível hospedeiro espelhados através dofracionamento da imagem entre o(s) volume(s) hospedeiro(s) em que a máquina virtual en-contra-se instalada e o volume de imagem correspondente. O volume de imagem compre-ende um instantâneo do volume hospedeiro. Assim, o instantâneo compreende também osinstantâneos a nível de máquina virtual tomados previamente de um ou mais de seus volu-mes, aonde os instantâneos a nível máquina virtual são consistentes com o pedido. O ins-tantâneo a nível de máquina virtual pode ser restaurado a partir do volume da imagem hos-pedeira.
Além do mais, a Figura 2 mostra que o método a partir da perspectiva da unidadehospedeira 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 do instantâneo hospedeiro. O ato 280inclui a restauração de um ou mais instantâneos a nível de máquina virtual de um ou maisvolumes na máquina virtual a partir de um ou mais instantâneos a nível hospedeiro de umou mais volumes hospedeiros. Por exemplo, conforme mostrado na Figura 1D, a unidadehospedeira 100 pode repor (por exp., via um componente VSS ) os dados instantâneos VHD156 a nível hospedeiro no interior do VHD 123 pelos dados instantâneos VHD 155 a nível demáquina virtual. Similarmente, a unidade hospedeira 100 pode repor os dados VHD 161 aní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 deuma imagem entre um volume hospedeiro e um volume espelhado), o instantâneo a nível demáquina virtual pode ser exposto e restaurado a partir do volume espelhado instalado, con-forme previamente descrito. Em qualquer caso, os dados de backup a nível hospedeiro (porexp., 195) podem ser baseados, pelo menos em parte, nos dados instantâneos a nível demáquina virtual.
Conseqüentemente, as Figuras de 1A-2, e o texto correspondente, proporcionamuma quantidade de sistemas, e mecanismos que podem ser utilizados para gerarem cópiasde backups consistentes de máquinas virtuais em um ou mais volumes hospedeiros. Con-forme descrito neste relatório, os componentes de acordo com a presente invenção podemser utilizados para gerarem backups consistentes de máquinas virtuais que não necessitemde tempo de inatividade da máquina virtual, nem necessitem da aquisição de agentes parabackups adicionais que precisem ser separadamente instalados e gerenciados. Além domais, os componentes, conforme a descrição presente, tem a vantagem de oferecerem ser-viços de cópias negativas convencionais para geração de um instantâneo consistente deuma máquina virtual, e, daí, restaurarem o instantâneo da máquina virtual a partir do interiordo instantâneo a nível hospedeiro. As modalidades da presente invenção podem compreender um computador para fi-nalidades genéricas ou especiais, incluindo vários hardwares para computadores, conformediscutido em maiores detalhes abaixo. As modalidades inseridas no escopo da presenteinvenção incluem também mídia de leitura por computador para condução de, ou contendo,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 pos-sa 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 computadorpodem compreender de RAM, ROM, EEPROM, CD-ROM ou outros dispositivos de armaze-nagem ótica em disco, armazenagem em disco magnético ou outros dispositivos de arma-zenagem magnética, ou qualquer outra mídia que possa ser usada para conduzir ou arma-zenar 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 umcomputador para finalidades genéricas ou especiais. Assim, quando a informação é transfe-rida ou fornecida através de uma rede de trabalho ou outra forma de conexão para comu-nicação (seja por fio, sem fio, ou uma combinação de fiação ou sem fiação) junto a um com-putador, o computador analisa devidamente a conexão na forma de uma mídia de leitura porcomputador. Assim, qualquer conexão é devidamente denominada como uma mídia de leitu-ra por computador. As combinações do exposto devem se inserir também dentro do escopoda mídia de leitura por computador.
As instruções executáveis por computador compreendem, por exemplo, instruçõese dados que levam a um computador com finalidades genéricas, computador com finalida-des especiais, ou dispositivos para processamento de finalidades especiais a desempenha-rem uma certa função ou grupos de funções. Embora a matéria em questão tenha sido des-crita na linguagem específica das características estruturais e/ ou atos metodológicos, deve-se entender que a matéria em questão definida nas reivindicações apensas não se encontranecessariamente 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 imple-mentação das reivindicações.
A presente invenção pode ser personificada em outras formas específicas sem a-fastar-se do espírito ou características essenciais. As modalidades descritas são para seremconsideradas em seus aspectos genéricos somente como ilustrativas e não restringentes. Oescopo da invenção é, portanto, indicado pelas reivindicações apensas ao invés do relatóriodescritivo anterior. Todas alterações que venham a se inserir no sentido e abrangência e-quivalente as reivindicações são partes integrantes de seu escopo.

Claims (20)

1. Método de geração de um backup consistente com o pedido do volume de dadosna máquina virtual sem, necessariamente requerer-se a interrupção ou restabelecimento deuma ou mais máquinas virtuais, em um servidor hospedeiro em um ambiente computadori-zado , o servidor hospedeiro apresentando uma ou mais máquinas virtuais instaladas em umou mais volumes hospedeiros, as máquinas virtuais configuradas para gerenciarem um oumais volumes da máquina virtual nos um ou mais volumes hospedeiros, CARACTERIZADOpelo fato de compreender os atos de:identificação de, pelo menos, uma máquina virtual apresentando um ou mais com-ponentes para processos de backup envolvendo a unidade de escrita;envio de uma instrução para, pelo menos, uma máquina virtual para preparo de umou mais dos correspondentes instantâneos a nível de máquina virtual de um ou mais vo-lumes na máquina virtual;identificação se as operações instantâneas de, pelo menos, uma máquina virtualforam concluídas;geração de um ou mais instantâneos a nível hospedeiro de um ou mais volumeshospedeiros aonde cada uma das máquinas virtuais é instalada; erestauração de um ou mais instantâneos a nível de máquina virtual de um ou maisvolumes na máquina virtual a partir de um ou mais instantâneos a nível hospedeiro de umou mais volumes hospedeiros.
2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato dos ins-tantâneos a nível de máquina virtual de um ou mais volumes da máquina virtual serem con-sistentes com o pedido.
3. Método, de acordo com a reivindicação 2, CARACTERIZADO pelo fato do ins-tantâneo a nível hospedeiro incluir um ou mais instantâneos diferentes de um ou mais volu-mes da máquina virtual, o método compreendendo ainda um ato de reposição de dados deum ou mais diferentes instantâneos no interior de um ou mais instantâneos a nível hospedei-ro com dados de um ou mais instantâneos a nível de máquina virtual de um ou mais volu-mes na máquina virtual.
4. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de com-preender ainda um ato de conversão de um ou mais instantâneos a nível hospedeiro a partirde dados somente para leitura para dados que possam ser escritos.
5. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de queum solicitador hospedeiro basear a instrução de backup através de uma unidade de escritahospedeira junto a um solicitador vinculado em cada uma de uma ou mais das máquinasvirtuais.
6. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de queum ou mais volumes a nível de máquina virtual serem gerenciados no interior de um ou maisarquivos em disco virtual, de modo que cada instantâneo diferente compreende de um ins-tantâneo de um arquivo de disco virtual apresentando um instantâneo a nível de máquinavirtual ali contido.
7. Método, de acordo com a reivindicação 6, CARACTERIZADO pelo fato de com-preender ainda um ato de instalação de um identificador de dispositivo correspondendo acada um de um ou mais instantâneos diferentes, em que cada arquivo em disco rígido virtualde, pelo menos, uma máquina virtual encontra-se exposto na forma de um disco físico naunidade hospedeira.
8. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de com-preender ainda um ato de identificação de uma ou mais diferentes máquinas virtuais aondeum ou mais componentes para os processos de backup envolvendo a unidade de escritanão possam ser identificados.
9. Método, de acordo com a reivindicação 8, CARACTERIZADO pelo fato de com-preender ainda um ato de identificação de que uma ou mais diferentes máquinas virtuaistenham sido uma das unidades salvas ou desligadas.
10. Método, de acordo com a reivindicação 8, CARACTERIZADO pelo fato de iden-tificar uma ou mais diferentes máquinas virtuais para as quais um ou mais componentes nãopossam ser identificados, compreendendo ainda um ato de identificação que uma ou maisdiferentes máquinas virtuais não incluem, pelo menos, um solicitador vinculado configuradoadequadamente e uma unidade de escrita de pedido a nível de máquina virtual configuradaadequadamente.
11. Método, de acordo com a reivindicação 8, CARACTERIZADO pelo fato decompreender um ato de salvar o estado para cada uma ou mais das diferentes máquinasvirtuais.
12. Método, de acordo com a reivindicação 11, CARACTERIZADO pelo fato decompreender ainda um ato de, pelo menos, momentaneamente pausar as operações deuma ou mais das diferentes máquinas virtuais.
13. Método, de acordo com a reivindicação 12, CARACTERIZADO pelo fato decompreender um ato de, mediante a identificação de que o estado tenha sido salvo, gerarum instantâneo de cada volume hospedeiro aonde cada uma ou mais das diferentes máqui-nas virtuais estejam instaladas.
14. Método, de acordo com a reivindicação 13, CARACTERIZADO pelo fato decompreender ainda uma etapa de instruir cada uma ou mais das diferentes máquinas virtu-ais para encerrar as operações.
15. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de queum ou mais volumes hospedeiros aonde, pelo menos, uma máquina virtual encontra-se ins-talada, são implementados em um ou mais discos hospedados por um ou mais componen-tes de armazenagem externos, um ou mais componentes de armazenagem externos sendoconfigurados para gerarem um ou mais instantâneos de um ou mais discos externos utili-zando, pelo menos, um destes:(i) um método de geração de instantâneo com base no hardware;(ii) um método de geração de instantâneo exposto por uma ou mais disposiçõesde armazenagem.
16. Método, de acordo com a reivindicação 15, CARACTERIZADO pelo fato do atode geração de um ou mais instantâneos a nível hospedeiro de um ou mais volumes hospe-deiros possibilitarem que um ou mais instantâneos a nível hospedeiro sejam gerenciados deforma independente no servidor hospedeiro, em que um ou mais instantâneos a nível hos-pedeiro possam ser transformados em volumes separados de escrita-leitura, e em que umou mais instantâneos a nível de máquina virtual possam ser restaurados a partir do interiorde um ou mais instantâneos a nível hospedeiro.
17. Método de geração de um backup consistente com o pedido de um ou mais vo-lumes em máquinas virtuais em resposta as instruções a partir de uma unidade de escritahospedeira do servidor hospedeiro, numa máquina virtual em um ambiente computadoriza-do, em que a máquina virtual encontra-se instalada em um volume do servidor hospedeiro,CARACTERIZADO pelo fato de compreender os atos de:receber uma solicitação a partir de uma unidade de escrita hospedeira para identifi-car os componentes de software disponíveis;receber uma solicitação a partir da unidade de escrita para geração de um instantâ-neo de um ou mais volumes hospedados pela máquina virtual com, pelo menos, um doscomponentes de software disponível;enviar instruções para uma ou mais unidades de escritas do pedido na máquina vir-tual para preparar os correspondentes um ou mais pedidos na máquina virtual para o ins-tantâneo; eenviar um sinal junto a unidade de escrita que as operações de instantâneo paracada um de um ou mais volumes hospedados pela máquina virtual foram concluídas.
18. Método, de acordo com a reivindicação 17, CARACTERIZADO pelo fato de, pe-lo menos, um componente de software disponível ser um solicitador vinculado instalado coma máquina virtual, em que o solicitador vinculado recebe a solicitação a partir da unidade deescrita hospedeira, 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 deque, pelo menos, um de um ou mais volumes da máquina virtual encontrar-se instalado emuma mídia de armazenagem na rede de trabalho, o método compreendendo ainda os atosde:importar um instantâneo de, pelo menos um volume a partir da mídia de armazena-gem na rede de trabalho junto ao servidor hospedeiro através de uma rede de trabalho; erecuperar o instantâneo no servidor hospedeiro na forma de um número de unidadelógica, em que o servidor hospedeiro pode fazer o backup do instantâneo correspondendoao número de unidade lógica na forma de um dado consistente.
20. Produto de programa computacional apresentando instruções ali armazenadasexecutáveis por computador, que, quando executadas fazem com que um ou mais proces-sadores no servidor hospedeiro desempenhem um método de geração de um backup con-sistente com o pedido de cada uma de uma ou mais máquinas virtuais sem necessariamen-te precisar se interromper ou re-alimentar uma ou mais das máquinas virtuais, num servi-dor hospedeiro em um ambiente computadorizado, o servidor hospedeiro apresentando umaou mais máquinas virtuais instaladas no mesmo, CARACTERIZADO pelo fato de compre-ender os atos de:identificar, pelo menos, uma máquina virtual apresentando um ou mais componen-tes para os processos de backup envolvendo a unidade de escrita;enviar uma instrução para, pelo menos, uma máquina virtual para preparar os cor-respondentes um ou mais instantâneos a nível de máquina virtual de um ou mais volumesda máquina virtual;identificar as operações instantâneas naquela, pelo menos, uma máquina virtualque tenham sido concluídas;gerar um ou mais instantâneos a nível hospedeiro de um ou mais volumes hospe-deiros aonde, pelo menos, uma máquina virtual esteja instalada; erestabelecer um ou mais instantâneos a nível de máquina virtual de um ou mais vo-lumes da máquina virtual a partir de um ou mais instantâneos a nível hospedeiro de um oumais dos volumes hospedeiros.
BRPI0710003A 2006-04-17 2007-02-15 geração de cópias reservas consistentes com o pedido a nível hospedeiro de máquinas virtuais BRPI0710003B1 (pt)

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 true BRPI0710003A2 (pt) 2011-08-02
BRPI0710003A8 BRPI0710003A8 (pt) 2017-01-17
BRPI0710003B1 BRPI0710003B1 (pt) 2018-11-13

Family

ID=38606087

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0710003A 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) KR101432463B1 (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 (153)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US8949395B2 (en) 2004-06-01 2015-02-03 Inmage Systems, Inc. Systems and methods of event driven recovery management
US7979656B2 (en) 2004-06-01 2011-07-12 Inmage Systems, Inc. Minimizing configuration changes in a fabric-based data protection solution
US7698401B2 (en) 2004-06-01 2010-04-13 Inmage Systems, Inc Secondary data storage and recovery system
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
US7676502B2 (en) * 2006-05-22 2010-03-09 Inmage Systems, Inc. Recovery point data view shift through a direction-agnostic roll algorithm
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
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
US8601225B2 (en) * 2005-09-16 2013-12-03 Inmage Systems, Inc. Time ordered view of backup data on behalf of a host
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
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
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
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
US8522135B2 (en) * 2008-06-06 2013-08-27 International Business Machines Corporation Generating a transformation description document for transforming messages
US9356805B2 (en) * 2008-06-06 2016-05-31 International Business Machines Corporation Implementing a plurality of interface definitions
US8090909B2 (en) 2008-06-06 2012-01-03 Pivot3 Method and system for distributed raid implementation
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
US9021475B2 (en) * 2011-05-04 2015-04-28 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
US8886903B2 (en) 2011-06-23 2014-11-11 Hitachi, Ltd. Storage management system and storage management method
US8601473B1 (en) 2011-08-10 2013-12-03 Nutanix, Inc. Architecture for managing I/O and storage for a virtualization environment
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
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
US9009106B1 (en) 2011-08-10 2015-04-14 Nutanix, Inc. Method and system for implementing writable snapshots in a virtualized storage environment
US9747287B1 (en) 2011-08-10 2017-08-29 Nutanix, Inc. Method and system for managing metadata for a virtualization 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
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 株式会社北洋银行 网络系统
US9104331B2 (en) * 2012-09-28 2015-08-11 Emc Corporation System and method for incremental virtual machine backup using storage system functionality
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
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
WO2014052333A1 (en) * 2012-09-28 2014-04-03 Emc Corporation System and method for full virtual machine backup using storage system functionality
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
US10359951B1 (en) * 2013-08-23 2019-07-23 Acronis International Gmbh Snapshotless backup
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性能的方法
WO2015074200A1 (zh) 2013-11-20 2015-05-28 华为技术有限公司 一种生成快照的方法、系统和装置
CN104809020B (zh) * 2013-11-20 2018-05-11 华为技术有限公司 一种生成快照的方法、系统和装置
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
CN109313565A (zh) * 2016-05-02 2019-02-05 诺基亚通信公司 虚拟网络环境中的快照创建
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
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
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
US20230409445A1 (en) * 2022-06-16 2023-12-21 Dell Products L.P. Memory simulation of agent service for secured restore
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

Family Cites Families (72)

* Cited by examiner, † Cited by third party
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
CN100384191C (zh) 1999-06-10 2008-04-23 阿尔卡塔尔互联网运行公司 基于策略的网络体系结构
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 株式会社日立製作所 ストレージシステム
US20060085784A1 (en) * 2004-10-15 2006-04-20 Microsoft Corporation Systems and methods for authoring and accessing computer-based materials using virtual machines
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
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
WO2007002398A2 (en) * 2005-06-24 2007-01-04 Syncsort Incorporated System and method for virtualizing backup images
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
US8296759B1 (en) * 2006-03-31 2012-10-23 Vmware, Inc. Offloading operations to a replicate virtual machine
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
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
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
US8135930B1 (en) * 2008-07-14 2012-03-13 Vizioncore, Inc. Replication 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

Also Published As

Publication number Publication date
AU2007248869B2 (en) 2011-09-08
EP2016501B1 (en) 2017-06-07
TW200809626A (en) 2008-02-16
MY154949A (en) 2015-08-28
CA2645969C (en) 2015-02-03
AU2007248869A1 (en) 2007-11-15
CA2645969A1 (en) 2007-11-15
CN101421715A (zh) 2009-04-29
KR20090005330A (ko) 2009-01-13
EP2016501A4 (en) 2009-11-11
BRPI0710003B1 (pt) 2018-11-13
EP2016501A1 (en) 2009-01-21
KR20130115391A (ko) 2013-10-21
MX2008013132A (es) 2008-10-21
BRPI0710003A8 (pt) 2017-01-17
ES2639417T3 (es) 2017-10-26
JP2009533777A (ja) 2009-09-17
WO2007130192A1 (en) 2007-11-15
RU2433458C2 (ru) 2011-11-10
US20070244938A1 (en) 2007-10-18
CN101421715B (zh) 2012-01-04
US20170075912A1 (en) 2017-03-16
US9529807B2 (en) 2016-12-27
KR101330495B1 (ko) 2013-11-15
JP5021721B2 (ja) 2012-09-12
RU2008141158A (ru) 2010-04-27
KR101432463B1 (ko) 2014-08-21
TWI438689B (zh) 2014-05-21
US20130085994A1 (en) 2013-04-04
US8321377B2 (en) 2012-11-27

Similar Documents

Publication Publication Date Title
BRPI0710003A2 (pt) geração de backups consistentes com o pedido a nìvel hospedeiro de máquinas virtuais
US10831609B2 (en) Data storage system with LUN snapshot shipping using volume-to-object translation
US8386428B2 (en) Method and system for fast generation of file system snapshot bitmap in virtual environment
US9037621B2 (en) Efficient reconstruction of virtual disk hierarchies across storage domains
Hitz et al. File System Design for an NFS File Server Appliance.
US9558079B2 (en) Flash copy for disaster recovery (DR) testing
US20190114231A1 (en) Image restore from incremental backup
US7921093B2 (en) Information processing apparatus and information processing method
US20200341659A1 (en) Write-once read-many compliant data storage cluster
US9898370B2 (en) Flash copy for disaster recovery (DR) testing
US10185630B2 (en) Failure recovery in shared storage operations
US7831564B1 (en) Method and system of generating a point-in-time image of at least a portion of a database
US20190332497A1 (en) Protecting and identifying virtual machines that have the same name in a multi-tenant distributed environment
US20230306129A1 (en) Sensitive data discovery for databases
Both BtrFS
Steigerwald Imposing order
Randall et al. Deploying the Tivoli Storage Manager Client in a Windows 2000 Environment
Sack Backup, Recovery, and Maintenance
Nelson Application Backup Strategies
a Backup et al. Backup, Recovery, and Maintenance
Tandon Online backup and versioning in log-structured file systems
Palkovský Implementace Time Addressable Storage

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.