RU2433458C2 - Создание согласованных с приложениями резервных копий виртуальных машин уровня хоста - Google Patents
Создание согласованных с приложениями резервных копий виртуальных машин уровня хоста Download PDFInfo
- Publication number
- RU2433458C2 RU2433458C2 RU2008141158/08A RU2008141158A RU2433458C2 RU 2433458 C2 RU2433458 C2 RU 2433458C2 RU 2008141158/08 A RU2008141158/08 A RU 2008141158/08A RU 2008141158 A RU2008141158 A RU 2008141158A RU 2433458 C2 RU2433458 C2 RU 2433458C2
- Authority
- RU
- Russia
- Prior art keywords
- virtual machine
- host
- snapshot
- application
- volume
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/128—Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/16—Protection against loss of memory contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1466—Management of the backup or restore process to make the backup process non-disruptive
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
- Hardware Redundancy (AREA)
Abstract
Изобретение относится к способу создания согласованных с приложениями резервных копий виртуальных машин уровня хоста. Техническим результатом является обеспечение эффективного создания согласованной с приложениями резервной копии без первоначальной приостановки или выключения виртуальной машины. Способ содержит отправку в виртуальную машину запроса на формирование согласованного с приложениями моментального снимка тома виртуальной машины упомянутой виртуальной машины, причем виртуальная машина выполнена с возможностью формирования этого согласованного с приложениями моментального снимка, пока виртуальная машина выполняется; прием сигнала, указывающего, что виртуальной машиной сформирован согласованный с приложениями моментальный снимок тома виртуальной машины; формирование моментального снимка тома хоста, причем том виртуальной машины хранится как файл на хосте; и извлечение согласованного с приложениями моментального снимка тома виртуальной машины из моментального снимка тома хоста. 3 н. и 17 з.п. ф-лы, 5 ил.
Description
Предшествующий уровень техники
1. Область техники, к которой относится изобретение
Так как компьютеризированные системы имеют возрастающую популярность, таким образом, есть необходимость хранить и создавать резервные копии электронных файлов и другой информации, созданных пользователями и приложениями, ассоциированным с ними. Вообще, компьютерные системы и связанные с ними устройства создают файлы по множеству причин, таких как в общем случае создания документа текстовой обработки в рабочей обстановке, так же как и создание файла, используемого для более сложных целей, связанных с базой данных. Кроме того, многие из этих документов могут включать в себя ценный результат работы или критически важную информацию, которая должна быть защищена. Следовательно, специалисту будет понятно, что существует множество причин, почему организация хочет создавать резервную копию электронных файлов на постоянной основе и, таким образом, обеспечивать надежное восстановление первоначально созданного файла, когда необходимо.
Так как вычислительные системы постоянно развиваются в более сложные конфигурации программного обеспечения и аппаратных средств, сложности, связанные с резервным копированием этих конфигураций, также возросли. В своей самой простой форме компьютер, создающий резервную копию, затрагивает просто копирование информации с диска или тома компьютера и передачу этой информации в местоположение хранения резервной копии. Простое копирование данных с диска, однако, становится гораздо более сложным при создании резервной копии больших наборов данных на множестве серверов в сети, особенно, когда наборы данных постоянно изменяются в течение процесса резервного копирования. Например, вместе с простым резервным копированием данных некоторые из проблем для больших организаций могут включать в себя необходимость сохранить данные быстрым, надежным и относительно непрерывным образом так, чтобы данные являлись также быстро восстанавливаемыми. Дополнительные заботы включают в себя то, как обращаться к различным серверным данным в первом примере, особенно, когда каждый сервер может иметь различные функции, которые могут сделать сервер более или менее доступным для заданной программы резервного копирования, в отличие от другого сервера.
Эти типы сложностей в резервном копировании серверных данных могут быть особенно трудными в виртуализированном серверном окружении. Как правило, виртуализированное серверное окружение затрагивает использование хост-сервера, на котором может быть установлена одна или более "виртуальных машин". Эти виртуальные машины содержат уникальные экземпляры операционной системы, которые установлены в выделенной части дискового пространства хост-сервера, и ресурсы (например, хост-память) и, таким образом, содержат границы отдельной машины. Таким образом, каждая виртуальная машина может быть представлена уникальным сетевым идентификатором и, таким образом, кажется отдельной и отличной в сети от самого хост-сервера. Кроме того, каждая виртуальная машина может также иметь дополнительные разделы хранения, сделанные в пространстве хоста, выделенном для виртуальной машины. Кроме того, в дополнение к получению впечатления отдельной машины от хост-сервера, виртуальная машина может также выглядеть как вмещающая множество логических дисков или томов, несмотря на размещение на физическом диске(-ах) хост-сервера. Соответственно, специалист может понять, что виртуальные машины могут использоваться в ряде важных способов, чтобы более эффективно распределять аппаратные ресурсы в организации.
Несмотря на эти преимущества, непросто скопировать тома хоста, на которых установлены виртуальные машины, и держать эти данные в качестве полезных (например, согласованными и действительными) при необходимости. Одна из причин этого затруднения происходит из природы самих виртуальных машин, как считается, они должны иметь различающиеся идентичности (например, включая в себя различающиеся операционные системы) относительно других виртуальных машин и относительно соответствующего хост-сервера(ов). Например, хост-сервер не может просто предписывать приложениям внутри виртуальной машины создавать "согласованный с приложениями" моментальный снимок своих данных, так как такие приложения, как правило, находятся под управлением виртуальной машины. Таким образом, когда хост создает моментальный снимок или резервную копию тома (или томов), на котором установлена виртуальная машина, процессы внутри виртуальной машины могут продолжать работать, и, по существу, копия виртуальной машины может вероятно включать в себя состояние данных и файлов, которые являются действительными для различных случаев времени. Т.е. копия данных виртуальной машины не будет "согласованной с приложениями". Если вы восстановите такую виртуальную машину, это может даже не функционировать правильно, если не вовсе не функционировать.
Как правило, "согласованная с приложениями" резервная копия означает, что приложения принимают участие в процессах подготовки резервного копирования и создают файлы приложения для резервного копирования на основе того, что находится на физическом диске, так же как и то, что находится в памяти. По существу, эти файлы или моментальные снимки для резервного копирования согласуются с текущим состоянием приложения и восстанавливаются посредством приложения в более поздний момент времени. В противоположность "согласованные с аварийным отказом" данные относятся к данным, по которым создаются резервные копии, как правило, без преимуществ вовлечения приложений, используемых, чтобы создавать данные в первом примере. Как результат, первичный продукт во время согласованного с аварийным отказом резервного копирования является набором данных, которые являются такими же, что и те, которые находятся на физическом диске во время процесса резервного копирования, не принимая во внимание то, что находится в памяти, и не принимая во внимание состояния приложения. Это похоже на то, как файловые данные могут существовать во время аварийного отказа всей системы, например во время потери питания или перезагрузки, и, таким образом, нет гарантии, например, согласованности с приложениями. В частности, для определенных сложных операционных окружений, особенно, где важно обеспечить настолько цельный переход, насколько возможно после резервного копирования, предпочтителен подход согласованного (т.е. согласованного с приложениями и/или файловой системой) резервного копирования.
Существует множество способов создания согласованной резервной копии данных тома. К несчастью, традиционные системы, которые пытаются создавать согласованные с приложениями резервные копии виртуальных машин (и соответствующих томов, управляемых ими), как правило, не могут эффективно создавать согласованную с приложениями резервную копию без первоначальной приостановки или выключения виртуальной машины. Это в типичном варианте заканчивается некоторым нежелательным простоем, который в некоторых случаях с определенным критически важным программным обеспечением может создавать отдельные трудности для администратора. Одной причиной для этого, таким образом, является то, что интересующий том может копироваться, пока дополнительные записи не делаются в томе, так что данные, сформированные посредством приложения, все согласуются с одним и тем же экземпляром во времени. Конечно, в окружении, где готовый, непрерывный и эффективный доступ к данным является важным, приостановка или выключение виртуальной машины, чтобы создавать резервную копию, являются менее желательными и могут создавать утечку ресурсов организации.
Другими способами, которыми организация может попытаться создавать согласованные с приложениями резервные копии виртуальной машины, является установка особого агента резервного копирования в каждом экземпляре данной виртуальной машины. Как правило, агент резервного копирования будет сконфигурирован, чтобы взаимодействовать со средствами записи приложения в операционной системе, чтобы создавать согласованную с приложениями резервную копию, как может в обычном случае быть выполнено на уровне хоста для главного тома хост-сервера. К несчастью, нельзя просто установить новые агенты резервного копирования для каждой виртуальной машины. Например, организации в типичном варианте будет необходимо приобрести нового отдельного агента резервного копирования (или лицензии) для каждой виртуальной машины и затем установить каждый агент резервного копирования в виртуальной машине. Специалист поймет, что это может представлять довольно значительную трудность с точки зрения стоимости и расхода ресурсов (например, включающих в себя служебное управление) для больших организаций, которые могут запускать десятки, сотни или даже тысячи виртуальных машин.
Соответственно, существует ряд трудностей, связанных с резервным копированием виртуальных машин, которые могут быть устранены.
Краткое изложение сущности изобретения
Осуществления настоящего изобретения предоставляют системы, способы и компьютерные программные продукты, выполненные с возможностью создавать согласованные резервные копии уровня хоста одной или более виртуальных машин. В частности, осуществления настоящего изобретения предоставляют возможность создавать резервную копию хост-сервера и соответствующей одной или более виртуальных машин с помощью существующих средств запроса (запросчиков) резервного копирования и средств записи согласованным образом без необязательных значительных перерывов в работе одной или более виртуальных машин. В одном осуществлении, например, средство записи хост-сервера (например, VSS-средство записи виртуального сервера) инструктирует каждую виртуальную машину создавать один или более согласованных с приложениями моментальных снимков своих собственных данных тома уровня виртуальной машины. Приложение резервного копирования на хост-сервере также создает моментальные снимки томов уровня хоста, на которых установлены одна или более виртуальных машин (например, их файл виртуального жесткого диска). Хост-сервер может затем извлечь ранее созданные моментальные снимки уровня виртуальной машины из моментальных снимков уровня хоста и закончить процессы резервного копирования.
Например, со стороны хост-сервера способ создания согласованной резервной копии данных тома виртуальной машины без ненужного требования остановки или перезагрузки одной или более виртуальных машин может затрагивать идентификацию по меньшей мере одной виртуальной машины, имеющей один или более компонентов для процессов резервного копирования с участием средства записи. Кроме того, способ может затрагивать отправку инструкции каждой из этой одной или более виртуальной машины, чтобы подготовить согласованный с приложениями моментальный снимок уровня виртуальной машины. Способ может также затрагивать идентификацию того, что операции моментального снимка в упомянутой по меньшей мере одной виртуальной машине завершены. Кроме того, способ может затрагивать создание одного или более моментальных снимков уровня хоста одного или более томов хоста, на которых установлены идентифицированные одна или более виртуальных машин. Способ может еще дополнительно затрагивать извлечение согласованного с приложениями моментального снимка томов виртуальной машины, сделанного упомянутой по меньшей мере одной виртуальной машиной.
В противоположность, со стороны виртуальной машины способ создания согласованной резервной копии одного или более томов виртуальной машины в ответ на инструкции от средства записи хоста из состава хост-сервера может затрагивать прием запроса от средства записи хоста, чтобы идентифицировать доступные компоненты программного обеспечения. Способ может также затрагивать прием запроса от средства записи хоста, чтобы сделать моментальный снимок одного или более томов, вмещаемых виртуальной машиной, с помощью по меньшей мере одного из этих доступных компонентов программного обеспечения. Кроме того, способ может затрагивать отправку инструкций одному или более средствам записи приложений в виртуальной машине, чтобы подготовить соответствующие одно или более приложений виртуальной машины для резервного копирования. Кроме того, способ может затрагивать отправку сигнала средству записи хоста, что приготовления моментальных снимков для каждого из упомянутых одного или более томов, вмещаемых внутри виртуальной машины, завершены.
Данное изложение сущности изобретения предусмотрено для того, чтобы в упрощенной форме представить набор идей, которые дополнительно описываются ниже в подробном описании. Это изложение сущности изобретения не предназначено для того, чтобы идентифицировать ключевые признаки или важнейшие признаки заявляемого изобретения, а также не предназначено для того, чтобы быть использованным в качестве помощи при определении объема заявляемого изобретения.
Дополнительные признаки и преимущества изобретения будут частично изложены в описании, которое следует ниже, и частично будут явствовать из описания или могут быть изучены при практическом использовании изобретения. Признаки и преимущества изобретения могут быть реализованы и получены посредством инструментов и комбинаций, детально указанных в прилагаемой формуле изобретения. Эти и другие признаки настоящего изобретения станут более полно явными из нижеследующего описания и прилагаемой формулы изобретения или могут быть изучены при практическом использовании изобретения, что изложено далее в данном документе.
Перечень чертежей
Чтобы описать способ, которым вышеперечисленные и другие преимущества и признаки изобретения могут быть получены, более конкретное описание изобретения, кратко описанного выше, будет представлено посредством ссылки на конкретные варианты его осуществления, которые иллюстрируются в приложенных чертежах. Понимание того, что эти чертежи изображают только типичные варианты осуществления изобретения и, следовательно, не должны рассматриваться как ограничивающие его объем, изобретение будет описано и объяснено с дополнительной конкретностью и деталями посредством использования сопровождающих чертежей, на которых:
Фиг.1A иллюстрирует общий схематический чертеж в соответствии с осуществлением настоящего изобретения, на котором приложение резервного копирования уровня хоста идентифицирует, с каких одной или более виртуальных машин могут быть сделаны резервные копии согласованным образом;
Фиг.1B иллюстрирует компоненты по фиг.1A, в которых хост-сервер инициирует процессы резервного копирования в связи с гостевым запросчиком уровня виртуальной машины в виртуальной машине в соответствии с осуществлением настоящего изобретения;
Фиг.1C иллюстрирует компоненты по фиг.1A-1B, в которых запросчик хост-сервера создает моментальные снимки томов хоста, в которых установлены одна или более виртуальных машин, так что моментальные снимки уровня хоста также содержат данные томов виртуальной машины, которые, в свою очередь, содержат моментальные снимки уровня виртуальной машины, выполненные ранее виртуальными машинами;
Фиг.1D иллюстрирует обзорный схематический чертеж в соответствии с осуществлением настоящего изобретения, в котором приложение резервного копирования, иллюстрированное на фиг.1A-1C, извлекает данные моментального снимка уровня хоста, имеющие данные моментального снимка уровня виртуальной машины, содержащиеся в них; и
Фиг.2 иллюстрирует блок-схемы способов, содержащих последовательности действий в соответствии с осуществлениями настоящего изобретения со стороны хост-сервера и виртуальной машины для предоставления согласованных с приложениями резервных копий виртуальных машин, установленных на одном или более томах хост-сервера.
Подробное описание
Осуществления настоящего изобретения распространяются на системы, способы и компьютерные программные продукты, выполненные с возможностью создавать согласованные резервные копии уровня хоста одной или более виртуальных машин. В частности, осуществления настоящего изобретения предоставляют возможность создавать резервную копию хост-сервера и соответствующей одной или более виртуальных машин с помощью существующих запросчиков резервного копирования и средств записи согласованным образом, без необязательных значительных перерывов в работе одной или более виртуальных машин. В одном осуществлении, например, средство записи хост-сервера (например, средство записи VSS виртуального сервера) инструктирует каждую виртуальную машину создавать один или более согласованных с приложениями моментальных снимков своих собственных данных тома уровня виртуальной машины. Приложение резервного копирования на хост-сервере также создает моментальные снимки томов уровня хоста, на которых установлены одна или более виртуальных машин (например, их файл виртуального жесткого диска). Хост-сервер может затем восстановить ранее созданные моментальные снимки уровня виртуальной машины из моментальных снимков уровня хоста и закончить процессы резервного копирования.
Специалист поймет после прочтения этого описания и формулы изобретения, что хост-сервер (например, через средство записи виртуального сервера) может также предоставлять возможность создания все еще согласованных резервных копий виртуальных машин, даже если они не могут быть легко идентифицированы как сконфигурированные для согласованных (например, согласованных с приложениями и/или файловой системой) процессов резервного копирования. Например, виртуальные машины могут быть выключены или иным образом не работать, либо виртуальные машины могут не быть установлены с соответствующими программными или аппаратными компонентами. Тем не менее, хост-сервер может использовать другие компоненты, чтобы скопировать тома хоста и соответствующие виртуальные машины способом, который сохраняет состояние и затем приостанавливает или останавливает виртуальные машины по меньшей мере на мгновение. Средство записи хост-сервера может затем предоставить возможность виртуальным машинам возобновить работу после того, как был сделан моментальный снимок тома(ов) хоста.
Специалист поймет после прочтения этого описания и формулы изобретения, что осуществления настоящего изобретения могут предоставлять согласованные резервные копии виртуальных машин способом, который минимизирует простой, и без необходимости покупки и установки новых агентов резервного копирования. По существу, организации, которые реализуют решения на базе виртуальной машины, могут предоставлять лучший хост-сервер, виртуальную машину и доступность данных в сетевой системе способом, который минимизирует потребление ресурсов организации.
Соответственно, фиг.1A иллюстрирует примерный хост-сервер 100, выполненный с возможностью управлять томами 110 и 115. В томах 110 и 115 установлены виртуальные машины 120 и 130 соответственно. С целью объяснения, хотя каждая виртуальная машина 120, 130 может быть задумана как отдельная вычислительная система на одном уровне, каждая виртуальная машина 120, 130 может также быть задумана как набор "файлов" (например, файл конфигурации виртуальной машины или "VMC" и один или более файлов виртуального жесткого диска - "VHD"), при взгляде с уровня хоста 100. В любом случае, хотя фиг.1A иллюстрирует одну виртуальную машину в каждом томе, это не требуется, и может быть установлено несколько виртуальных машин на любом томе данного хост-сервера 100. Подобным образом, каждая виртуальная машина может охватывать множество томов на одном или более хост-серверах.
Кроме того, каждая виртуальная машина может управлять дополнительными логическими дисками, которые эффективно выполнят роль дополнительных распределений томов в распределении(ях) тома, на котором установлена данная виртуальная машина. Например, фиг.1A показывает, что виртуальная машина 120 также управляет одним или более виртуальными физическими дисками, которые, тем не менее, являются частью хост-тома 100. Как правило, каждый виртуальный физический диск может также быть представлен файлом, таким как файл виртуального жесткого диска (т.е. VHD 123, 127 и т.д.). В частности, VHD-файл показан как физический диск внутри виртуальной машины, которая может дополнительно содержать дополнительный один или более томов (не показаны), содержащиеся на нем, при этом каждый том имеет свой собственный глобальный уникальный идентификатор ("GUID"). Таким образом, VHD-файл 123 (который в этой иллюстрации содержит только один том для простоты) может, таким образом, иметь том, который показан как логический диск "m:\" - или некоторый другой уникальный идентификатор, подходящий для данной операционной системы, в то время как VHD 127 (который также в этом случае включает в себя только один том) может иметь том, который показан в сети как "n:\", и т.д.
Кроме того, фиг.1A показывает, что хост 100 содержит приложение 105 резервного копирования, которое может также называться как "хост-запросчик" или "запросчик уровня хоста". Как правило, приложение 105 резервного копирования содержит последовательности выполняемых компьютером инструкций, сконфигурированных, чтобы управлять событиями резервного копирования на хосте 100. В одном осуществлении, таком как, например, операционная среда фирмы MICROSOFT, приложение 105 резервного копирования содержит запросчик службы теневого копирования томов ("VSS"). Фиг.1A также показывает, что приложение 105 резервного копирования, в свою очередь, может быть сконфигурировано, чтобы направлять свои инструкции резервного копирования через средство 125 записи хоста, которое также может называться как "средство записи хоста", "средство записи уровня хоста" или "VSS-средство записи виртуального сервера уровня хоста".
Как правило, средство 125 записи хоста содержит последовательности исполняемых компьютером инструкций, сконфигурированных, чтобы осуществлять инструкции резервного копирования, принятые от приложения 105 резервного копирования. В одном осуществлении, таком как в среде MICROSOFT, например, средство 125 записи хоста может содержать VSS-средство записи, такое как VSS-средство записи, используемое с MICROSOFT VIRTUAL SERVER. С целью объяснения ссылка в данном документе на компоненты MICROSOFT является только иллюстративной. В частности, специалист поймет после прочтения этой спецификации и формулы, что компоненты, модули, системы и функции, описанные в данном документе, могут быть применены к широкому множеству компонентов, модулей и функций, используемых в других операционных средах.
Чтобы выполнить согласованные резервные копирования виртуальных машин, хосту 100, как правило, будет нужно определить, какая из вмещаемых виртуальных машин может сообщить о соответствующих компонентах, сконфигурированных, чтобы делать согласованные резервные копии по возможности в первую очередь. В качестве вступительной части непрерывная ссылка делается в данном документе на процессы "согласованного с приложениями" резервного копирования или моментального снимка. Специалист поймет, однако, что согласованные с приложениями процессы резервного копирования являются только одним примером "согласованных" операций резервного копирования в соответствии с осуществлениями настоящего изобретения. Другие примеры согласованных процессов резервного копирования включают в себя согласованные с файловой системой и/или аварийным отказом процессы резервного копирования.
В любом случае и со ссылкой на согласованные с приложениями резервные копирования, например, некоторые виртуальные машины могут быть установлены с соответствующими средствами записи и запросчиками для создания согласованных с приложениями резервных копий, в то время как другие виртуальные машины могут быть установлены без соответствующих средств записи и запросчиков. Для этих виртуальных машин, работающих без таких соответствующих компонентов, хост 100 может все еще делать резервные копии этих виртуальных машин, но может необязательно делать так тем же образом, что и с соответствующими компонентами. В частности, хост 100 может быть сконфигурирован так, чтобы делать резервные копии тех виртуальных машин, которые сообщают о соответствующих компонентах без простоя или прерывания (или не виртуально), и альтернативно сконфигурирован, чтобы делать резервные копии тех виртуальных машин, которые не сообщают (т.е. с отсутствующими или не работающими) о соответствующих компонентах по меньшей мере с некоторым простоем или прерыванием.
Соответственно, фиг.1A показывает, что приложение 105 резервного копирования (т.е. "запросчик хоста") запускает службы резервного копирования по меньшей мере частично, отправляя запрос 103 средству 125 записи хоста. В этом случае запрос 103 предписывает средству 125 записи хоста идентифицировать, по каким виртуальным машинам могут быть созданы резервные копии "без простоя". Например, запрос 103 предписывает средству 125 записи хоста установить, какие из виртуальных машин 120, 130 и т.д. содержат соответствующие гостевые средства записи и/или запросчики для выполнения внутреннего согласованного с приложениями резервного копирования. В одном осуществлении в среде MICROSOFT, например, такие компоненты могут включать в себя совместимые с "VM-дополнениями", которые используются в инфраструктуре MICROSOFT VIRTUAL SERVER.
Эти и другие подобным образом сконфигурированные компоненты виртуальной машины сконфигурированы, чтобы взаимодействовать в виртуальной машине (и отвечать на инструкции от), например, с VSS-средством записи виртуального сервера уровня хоста. Фиг.1A также показывает, что при приеме запроса 103 средство 125 записи хоста может связываться через сообщение 111 (которое может быть, например, приватным интерфейсом прикладного программирования - "приватным API") с виртуальной машиной 120 и идентифицирует, что виртуальная машина 120 сообщает о компонентах в соответствии с "версией x". Например, фиг.1A показывает, что виртуальная машина 120 включает в себя "гостевой запросчик 140".
Фиг.1A также показывает, что средство 125 записи хоста дополнительно связывается (например, через сообщение 111) с виртуальной машиной 130 и что средство 125 записи хоста идентифицирует, что виртуальная машина 130 сообщает о компонентах согласно "версии y". В этом отдельном случае "версия y" означает, что виртуальная машина 130 не имеет соответствующих компонентов для процессов согласованного резервного копирования. В ответ на свои связи с виртуальными машинами (например, 120, 130 и т.д.) средство 125 записи хоста может отправить одно или более сообщений о своих собранных ответах обратно приложению 105 резервного копирования. Например, средство записи отправляет сообщение 113, которое указывает, что виртуальная машина 120 имеет версию "x", и сообщает о соответствующих компонентах и дополнительно указывает, что виртуальная машина 130 имеет версию "y", но не сообщает о соответствующих компонентах.
После приема фиг.1A показывает, что приложение 105 резервного копирования может получить сообщение 113 и сделать свои собственные определения о том, с каких виртуальных машин должны быть сделаны резервные копии, а с каких виртуальных машин не должны быть сделаны резервные копии. Например, фиг.1A показывает, что модуль 107 определения синтаксически разбирает информацию сообщения 113, помещает виртуальную машину 120 в категорию "VM для резервного копирования без простоя" и помещает виртуальную машину 130 в категорию "VM для резервного копирования с некоторым простоем" (или VM не для резервного копирования). В альтернативных осуществлениях средство 125 записи хоста просто делает свои собственные определения о том, для чего должно или не должно быть сделано резервное копирование (или резервное копирование с некоторым простоем), и затем сообщает такие категории обратно приложению 105 резервного копирования. В любом случае иллюстрированные категории сами по себе необязательно означают, что для виртуальной машины 130 не должно быть сделано резервное копирование. В большинстве случаев это просто означает, что с виртуальной машины 120 не может быть сделано резервное копирование соответственно согласованным образом, а виртуальная машина 130 может быть сконфигурирована, только чтобы сделать резервное копирование согласованным образом с некоторым простоем. После распределения по категориям каждой виртуальной машины приложение 105 резервного копирования начинает выполнение процессов резервного копирования.
Как показано на фиг.1B, например, приложение 105 резервного копирования отправляет инструкции 117a средству 125 записи хоста. Инструкции 117a, в свою очередь, говорят средству 125 записи хоста начать согласованные с приложениями процессы резервного копирования по меньшей мере относительно виртуальной машины 120. Средство 125 записи хоста затем подготавливает свое собственное сообщение 117b, которое говорит виртуальной машине начать "с участием средства записи" процессы резервного копирования. Средство 125 записи хоста затем отправляет сообщение 117b каждой виртуальной машине (например, 120), указанной приложением 105 резервного копирования, а каждая указанная виртуальная машина, в свою очередь, принимает сообщение 117b через свой соответствующий расположенный внутри гостевой запросчик.
Например, фиг.1B показывает, что гостевой запросчик 140 виртуальной машины 120 принимает сообщение 117b. В одном варианте осуществления средство 125 записи хоста может связываться (например, сообщение 111, 117b и т.д.) с гостевым запросчиком 140 через один или более приватных API, через вызовы удаленных процедур ("RPC") и т.п., хотя это не требуется во всех вариантах осуществления. В других осуществлениях, таких как, если средство 125 записи хоста и гостевой запросчик 140 расположены в раздельных местоположениях сети (или даже различных доменах), средство 125 записи хоста может связываться с другими соответствующими интерфейсами связи и/или компонентами. В частности, специалист поймет, что осуществления настоящего изобретения могут также быть применены на практике, даже когда необходимо сделать резервную копию виртуальной машины из удаленного местоположения через глобальную вычислительную сеть.
В любом случае и после запуска гостевой запросчик 140, таким образом, начинает процессы резервного копирования своих томов в соответствии с первоначальными инструкциями приложения 105 резервного копирования. Как показано на фиг.1B, например, гостевой запросчик 140 отправляет внутреннее сообщение 117c виртуальной машины приложениям, установленным на любых томах, управляемых виртуальной машиной 120. Сообщение 117c может включать в себя инструкции для каждого средства записи приложения (например, VSS-средства записи, не показано), чтобы подготовить для согласованных с приложениями процессов резервного копирования каждого тома, управляемого в нем, тома, содержащиеся на своих физических дисках (т.е. представленные VHD-файлами 123, 127). Как правило, каждое средство записи приложения может содержать исполняемые компьютером инструкции, которые могут быть включены в приложения и службы в виртуальной машине и которые помогают обеспечить согласованные с приложениями резервные копирования данных приложения.
Для приложений, которые работают при приеме запроса 117c, средство записи приложения может ответить, например, посредством подготовки своих хранилищ данных и гарантирования того, что в томе не будут выполняться записи (например, 123, 127), пока создается моментальный снимок. Чтобы сделать данные на диске согласованными, средство записи приложения может также сбросить свои буферы на диск или записать данные в памяти на диск. Кроме того, средство записи приложения может предоставлять информацию об имени приложения, иконках, файлах, которые включать или исключать, и стратегии восстановления файлов. Для приложений, которые не работают, соответствующее средство записи приложения может не отвечать на сообщение 117c, и гостевой запросчик 140 может, таким образом, предположить, что все данные, управляемые средствами записи приложений, в томе являются согласованными, базы данных закрыты и не требуется дополнительных действий для того, чтобы выполнить резервное копирование.
Как правило, средство записи приложения в соответствии с одним или более осуществлениями настоящего изобретения может быть ассоциировано с одним или более компонентами. Каждый компонент, в свою очередь, может содержать группу файлов (например, базу данных и набор журнальных файлов), которые должны быть скопированы как целое. Таким образом, каждому средству записи приложения не нужно предоставлять данные о каждом компоненте и каждом соответствующем файле компонента соответствующей службе резервного копирования (например, запросчику виртуальной машины, например гостевому запросчику 140). Каждое средство записи приложения может дополнительно предоставлять информацию о восстановлении данных на покомпонентной (и, следовательно, по каждому файлу каждого компонента) основе. В одном осуществлении, например, средство 125 записи хоста может предоставить список файлов, используемых, чтобы сохранить постоянную информацию об управляемых виртуальных машинах (например, 120, 130 и т.д.). Средство 125 записи хоста может сообщить, например, для каждой виртуальной машины путь файла конфигурации отдельной виртуальной машины, любые пути файла виртуального жесткого диска и т.д.
В любом случае и в ответ на инструкции 117c фиг.1B показывает, что соответствующие средства записи приложения в томах 123 и 127 создают согласованное с приложениями состояние данных своих томов. Данные тома, сообщенные релевантными приложениями для тома в соответствующем файле физического диска (например, VHD 123, 127), заключены в моментальные снимки тома. Например, фиг.1B показывает, что данные 145 тома в VHD 123 копируются как "чистовая копия данных" 155 и данные 150 в VHD 127 копируются как "чистовая копия данных" 160. Как правило, эти "чистовые" копии данных 155, 160 являются согласованными копиями (например, теневой копией тома) данных в моментальном снимке гостевого тома и, как правило, не составляют отдельные копии от самого моментального снимка. В частности, "чистовые копии" 155, 160, по существу, являются согласованными с приложениями копиями данных тома в моментальных снимках, содержащихся в файлах виртуального жесткого диска (VHD) 123 и 127 (фиг.1A) соответственно.
После того как каждая соответствующим образом сконфигурированная виртуальная машина (например, 120) сделала свою собственную внутреннюю, согласованную с приложениями (или "чистовую") копию томов своего физического диска (например, копия 155 данных 145), средство 125 записи хоста может предоставить возможность приложению 105 резервного копирования перейти к созданию моментальных снимков хост-томов (например, 110), на которых установлены соответствующим образом сконфигурированные виртуальные машины (например, 120). Данные тома виртуальной машины внутри этих моментальных снимков уровня хоста, однако, необязательно являются согласованными с приложениями (т.е. "черновыми" или "согласованными с аварийным отказом").
Как правило, "черновые" копии являются такими, что не могут быть гарантированы как согласованные с приложениями относительно данных тома виртуальной машины по меньшей мере частично, так как они не запускают процессы создания моментальных снимков приложения с участием средства записи в виртуальных машинах. Например, хост 100 может использовать средства записи приложения уровня хоста (например, средство 125 записи хоста), чтобы создавать резервную копию данных тома 110 с помощью процессов с участием средства записи, но, как упомянуто ранее, эти средства записи приложения уровня хоста будут только копировать файлы всей виртуальной машины, как они видимы хостом. Как результат, даже если использовать средства записи приложения уровня хоста, чтобы создавать согласованные с приложениями копии данных тома уровня хоста, каждая лежащая в основе виртуальная машина может подвергнуться различным изменениям данных в момент создания резервной копии тома 110 уровня хоста.
Например, фиг.1C показывает, что средство 125 записи хоста отправляет сообщение 157 приложению 105 резервного копирования, в котором сообщение 157 указывает, что резервное копирование виртуальной машины (например, 120) завершено. По существу, приложение 105 резервного копирования может приступить к созданию моментальных снимков уровня хоста тома 110 хоста (и также тома 115 и т.д., если подходит). В ответ фиг.1C показывает в этом примере, что приложение 105 резервного копирования инициирует (например, сигнал 135) процессы резервного копирования в томах 110, 115 и т.д. В одном осуществлении, например, хост-запросчик 105 инициирует процессы резервного копирования с участием средства записи и создает согласованный с приложениями моментальный снимок данных по томам 110, 115 уровня хоста (т.е. согласованные с приложениями помимо файлов виртуальной машины) через VSS-компонент уровня хоста (не показан).
Например, фиг.1C показывает, что хост 100 создает моментальный снимок 167, 173 томов 110, 115 хоста. Моментальные снимки 167, 173 также включают в себя копии VHD-файлов виртуальной машины, содержащиеся в ней (т.е. VHD-файл 123 внутри тома 110 и т.д.). Следовательно, во время моментального снимка уровня хоста виртуальные машины 120, 130 не имеют своих соответствующих средств записи, задействованных в процессах моментальных снимков, скорее, моментальные снимки уровня хоста включают в себя данные VHD-тома (например, 156, 161) для томов уровня виртуальной машины, которые не являются согласованными с приложениями. Тем не менее, так как релевантная виртуальная машина уже сделала согласованную с приложениями копию своих томов, VHD-данные 156 в моментальном снимке 167 уровня хоста включают в себя ранее созданный (т.е. созданный виртуальной машиной) согласованный с приложениями моментальный снимок 155. Подобным образом, VHD-данные 161 в моментальном снимке 167 уровня хоста включают в себя ранее созданный (т.е. созданный виртуальной машиной) согласованный с приложениями моментальный снимок 160. Как упомянуто выше, VHD-данные 156, 161 в моментальном снимке 167 (также 173) уровня хоста VHD-файлов 123, 127, как правило, в целом являются согласованными с аварийным отказом.
После создания моментальных снимков 167, 173 уровня хоста томов уровня хоста хосту 100 будет необходимо извлечь моментальный снимок уровня виртуальной машины из моментальных снимков 167, 173 томов уровня хоста. В одном осуществлении это затрагивает восстановление VHD-данных 156, 161 моментального снимка уровня хоста обратно в соответствующие данные 155, 160 моментального снимка уровня виртуальной машины. Чтобы выполнить это, средство 125 записи хоста может сначала смонтировать эти моментальные снимки уровня хоста и уровня виртуальной машины в файловой системе с помощью любого числа соответствующих компонентов, чтобы предоставить лежащие в основе данные. Например, приложение 105 резервного копирования может сконфигурировать средство 125 записи хоста, чтобы сделать моментальные снимки 167, 173 и т.д. хоста (и моментальные снимки лежащих в основе VHD-файлов) записываемыми (предпочтительнее, чем только читаемыми). Кроме того, средство 125 записи хоста может получить ID этих устройств для моментальных снимков уровня хоста и использовать их, чтобы идентифицировать различные "ID устройств", соответствующие инкапсулированным VHD-файлам (например, 123, 127).
При предоставлении VHD-файлов виртуальной машины из записываемых моментальных снимков 167, 173 уровня хоста хост-сервер 100 может затем установить ID каждого устройства, соответствующего VHD-файлу, так что каждый VHD-файл предстает как физический диск на уровне хоста. В частности, средство 125 записи хоста может использовать ID устройств для VHD-файлов 123 и 127 в моментальном снимке хоста в сочетании с компонентом-монтирования образа, чтобы идентифицировать каждый том в VHD-файлах 123 и 127. Например, фиг.1C показывает, что хост-сервер (например, через средство 125 записи хоста) отправляет инструкции 175, чтобы смонтировать ID устройств, включающие в себя в качестве аргументов ID устройства для VHD-файла 123 и VHD-файла 127. В одном осуществлении особенно относительно операционной среды MICROSOFT, например, хост 100 может использовать компонент "VHDImageMounter", чтобы принимать и выполнять инструкции 175 по монтированию.
Монтирование VHD-файлов 123, 127 из моментального снимка 167 хоста, в свою очередь, может предоставить операционные системы в этих VHD-файлах, которые, в свою очередь, предоставляют возможность предоставления на хост-сервере 100 моментальных снимков 155, 160 уровня виртуальной машины. В частности, монтирование VHD-файлов 123, 127 из моментального снимка 167 хоста тома 110 в этом случае предоставляет моментальные снимки 155, 160 уровня виртуальной машины внутри различных VHD-данных 156, 161 моментального снимка 167 хоста. Таким образом, фиг.1C также показывает, что хост 100 предоставляет VHD-файл 123 внутри моментального снимка 167 хоста как логический диск "х:\", который предоставляет VHD-данные 156; и дополнительно предоставляет ранее созданные данные 155 моментального снимка уровня виртуальной машины в нем; и дополнительно монтирует VHD-файл 127 из моментального снимка 167 хоста как логический диск "y:\", где моментальный снимок 167 хоста также включает в себя VHD-данные 161, в которых предоставляются данные 160 ранее созданного моментального снимка уровня виртуальной машины.
Теперь, когда приложение 105 резервного копирования смонтировало VHD-файлы 123, 127 из моментального снимка 167 хоста, приложение 105 резервного копирования может теперь вернуть VHD-данные 156, 161 моментального снимка 167 уровня хоста обратно в VHD-данные 155, 160 моментальных снимков тома уровня виртуальной машины. Как показано на фиг.1D, например, приложение 105 резервного копирования использует интерфейс 185 компонента (например, интерфейс VSS-компонента), чтобы вернуть к предшествующему состоянию данные чернового и чистового моментального снимка на логических дисках "x" и "y". В одном осуществлении приложение 105 резервного копирования использует интерфейс 185, чтобы просто удалить или перезаписать VHD-данные 156, 161 и заменить их соответствующими чистовыми VHD-данными 155, 160.
После этой замены приложение 105 резервного копирования не только корректирует или регулирует (т.е. возвращает, заменяет) данные моментального снимка VHD-файлов 123, 127, но также изменяет полный моментальный снимок 167 уровня хоста так, что лежащие в его основе данные тома уровня виртуальной машины теперь являются полностью согласованными. Т.е. все данные виртуальной машины в моментальных снимках уровня хоста могут теперь также рассматриваться как согласованные с приложениями. Кроме того, управление моментальными снимками 155, 160 уровня виртуальной машины помещено в управление процессами резервного копирования хоста 100. Таким образом, когда хост 100 делает свою собственную согласованную с приложениями резервную копию моментальных снимков своих томов, это резервное копирование уровня хоста может теперь включать в себя согласованное с приложениями резервное копирование каждой соответствующим образом сконфигурированной виртуальной машины.
Идентифицированные выше компоненты и процессы описаны, прежде всего, для случая, в котором идентифицированные виртуальные машины (например, 120) предоставляют ответ, который указывает конфигурацию с соответствующими программными компонентами для создания согласованной резервной копии. Конкретно, резервные копии таких виртуальных машин (например, 120) могут быть сделаны с небольшим простоем или без простоя. Как упомянуто ранее, однако, могут быть альтернативные случаи, в которых данная виртуальная машина не предоставляет ответ, так как она не работает, или предоставляет ответ, который указывает, что она не сконфигурирована, чтобы создавать согласованные резервные копии. Например, виртуальная машина 130 может быть запущенной операционной системой, которая не включает в себя определенные необходимые программные компоненты, например соответствующие приложения средства записи (например, текущая версия службы теневого копирования), соответствующий гостевой запросчик (например, 140) и т.п. В таких альтернативных случаях осуществления настоящего изобретения могут, тем не менее, предоставлять по меньшей мере согласованные с аварийным отказом резервные копии виртуальных машин (например, 130), которые могут требовать или не требовать по меньшей мере некоторый последующий простой, если позже необходимо гарантировать, чтобы данные были согласованными.
Например, средство 125 записи хоста может вызывать интерфейс связи (не показан) и инструктировать интерфейс, чтобы сохранить все состояние виртуальной машины 130 (и/или других подобным образом ограниченных виртуальных машин). В одном осуществлении, в частности, относительно операционной среды MICROSOFT, например, средство 125 записи хоста может вызвать интерфейс связи виртуального сервера (т.е. "VS COM API", не показан). Интерфейс связи может затем сообщить средству 125 записи хоста, когда он закончил сохранение состояния виртуальной машины 130. В частности, интерфейс связи может сообщать это средству 125 записи хоста, которое, в свою очередь, позволяет приложению 105 резервного копирования создавать моментальный снимок соответствующего тома хоста, в котором постоянно находится виртуальная машина 130 (т.е. том 115).
В дополнение к сохранению состояния виртуальной машины 130 интерфейс связи может также немедленно приостановить или остановить операции виртуальной машины с помощью любых соответствующих виртуальных и/или личных API. Если интерфейс связи идентифицирует, например, какие-либо изменения в состоянии виртуальной машины 130, интерфейс связи может сообщать эту информацию. Такое сообщение может, в свою очередь, отклонить операции резервного копирования и вызвать повторный запуск в более подходящее время. В частности, приложение 105 резервного копирования может продолжать повторять эти этапы до тех пор, пока приложение 105 резервного копирования не закончило создание моментальных снимков тома 115 в состоянии желаемой согласованности.
После того как операции резервного копирования завершены, хост 100, таким образом, создал согласованную с приложениями копию тома 110 и его соответствующих виртуальных машин (например, 120) и дополнительно создал согласованную (т.е. по меньшей мере согласованную с аварийным отказом) копию тома 115 и его соответствующие виртуальные машины (например, 130). Специалист поймет, что эта копия тома 115 может быть не только согласованной с аварийным отказом, но также быть "VHD-согласованной" относительно состояния VHD-файла. В частности, сохранение состояния виртуальной машины может предоставить действительный и согласованный VHD-файл, которые может быть успешно восстановлен в более поздний момент по желанию.
Еще в одном осуществлении компоненты в соответствии с настоящим изобретением могут дополнительно включать в себя использование драйвера аппаратных средств, чтобы предоставить многие из согласованных функций моментального снимка, описанных ранее. При использовании драйвера аппаратных средств, например "драйвера аппаратных средств VSS" (например, драйвера сети/зеркального копирования), накопитель тома 110, 115 может постоянно находиться в "дисковом массиве", который "зеркально копируется" в отдельное местоположение. В момент создания моментального снимка уровня хоста (т.е. несогласованного с приложениями для виртуальной машины) драйвер аппаратных средств может просто "разбить" зеркало между томом и его соответствующей зеркальной копией. Это может предоставить моментальный снимок уровня хоста как отдельное, автономное дисковое устройство. Приложение 105 резервного копирования может затем вызвать любое число служб виртуальных дисков ("VDS") и/или API сервера теневого копирования тома ("VSS"), чтобы сделать зеркальную копию тома записываемой, управлять зеркальной копией тома и затем предоставить и смонтировать лежащие в основе чистовые (т.е. согласованные с приложениями) данные 155, 160 моментального снимка. Этот тип аппаратного решения может также использоваться с томами на удаленно подключенном накопителе, таком как в среде сети устройств хранения данных ("SAN"), чтобы создавать согласованные с приложениями резервные копии виртуальных машин, распределенных по нескольким носителям хранения.
По этим направлениям осуществления настоящего изобретения могут дополнительно включать в себя использование, например, гостевого запросчика 140, чтобы создавать аппаратно-переносимый, согласованный с приложениями моментальный снимок внутри отдельной виртуальной машины (например, 120). Например, компонент внутри, например, виртуальной машины 120, сконфигурированный для моментальных снимков SAN-томов (например, соответствующим образом сконфигурированный VSS-компонент), может создавать с участием средства записи моментальный снимок (не показан) удаленного тома, присоединенного к гостевому компьютеру (например, виртуальной машине 120, 130), для которых, таким образом, не существует VHD-файла хост-сервера 100. Гостевой запросчик 140 может затем импортировать моментальный снимок и поверхность моментального снимка в качестве отдельного номера логического устройства ("LUN") на хост-сервере. Средство 125 записи хоста может затем попросить приложение 105 резервного копирования (т.е. хост-запросчик) создавать резервную копию LUN как часть резервного копирования виртуальной машины 120. Приложение 105 резервного копирования может, таким образом, создавать резервную копию всего LUN (т.е. гостевой или моментальный снимок уровня виртуальной машины), так что возвращение, например, моментального снимка уровня хоста тома виртуальной машины будет необязательным.
Соответственно, фиг.1A-1D и соответствующий текст предоставляют ряд систем, компонентов и интерфейсов для обеспечения эффективных резервных копий уровня хоста виртуальных машин согласованным образом. В дополнение к упомянутому выше, осуществления настоящего изобретения могут также быть описаны с точки зрения способов, содержащих одно или более действий для достижения отдельного результата. Например, фиг.2 иллюстрирует блок-схемы со стороны хоста 100 и виртуальной машины 120 для создания согласованных с приложениями резервных копий виртуальных машин уровня хоста. Способы и соответствующие действия на фиг.2 описаны ниже со ссылкой на системы и компоненты на фиг.1A-1D.
Например, фиг.2 показывает, что со стороны хоста 100 способ создания согласованной с приложениями резервной копии каждой из одной или более виртуальных машин без необязательной необходимости остановки или приостановки одной или более виртуальных машин содержит действие 210 идентификации одной или более виртуальных машин на хосте. Действие 210 включает в себя идентификацию по меньшей мере одной виртуальной машины, имеющей один или более компонентов для процессов резервного копирования с участием средства записи. Например, приложение 105 резервного копирования (т.е. "запросчик хоста" 105) запрашивает (через сообщение 103) средство 125 записи хоста о том, какие виртуальные машины присутствуют на хосте 100 и по каким из этих виртуальных машин могут быть сделаны резервные копии согласованным с приложениями образом (т.е. с небольшим простоем или без простоя).
Средство 125 записи хоста, например VSS-средство записи, отправляет соответствующий запрос 111 версии каждой виртуальной машине (например, 120, 130) и идентифицирует, какие программные компоненты существуют, чтобы помочь процессам резервного копирования (например, гостевой запросчик 140), например компоненты, которые могут использоваться для создания согласованных с приложениями резервных копий. Средство 125 записи хоста затем отправляет соответствующий ответ 113 приложению 105 резервного копирования. Приложение 105 резервного копирования затем определяет, например, через модуль 107 определения, по какой из идентифицированных виртуальных машин может быть создана резервная копия с помощью согласованных с приложениями способов (т.е. "VM для резервного копирования", которые включают в себя соответствующие компоненты), и те, по которым должны быть созданы резервные копии с помощью других способов (т.е. "VM для резервного копирования с некоторым простоем"), которые не включают в себя соответствующие компоненты или выключены.
Соответственно, фиг.2 дополнительно показывает, что со стороны виртуальной машины 120 способ создания согласованной резервной копии одного или более томов виртуальной машины содержит действие 210 приема запроса, чтобы идентифицировать компоненты. Действие 210 включает в себя прием запроса от средства записи хоста, чтобы идентифицировать доступные программные компоненты. Например, виртуальная машина 120 (например, через гостевой запросчик 140) принимает запрос 111 версии, который включает в себя запрос, чтобы идентифицировать, включает ли в себя виртуальная машина 120 гостевой запросчик и одну или более средств записи приложения (и/или их соответствующие версии), так как они будут соответствующими компонентами для создания согласованной с приложениями резервной копии. Виртуальная машина 120 затем возвращает соответствующий ответ, который средство 125 записи хоста форматирует как сообщение 113 и отправляет приложению 105 резервного копирования.
Кроме того, фиг.2 показывает, что со стороны хоста 100 способ содержит действие 220 отправки запроса резервного копирования набору виртуальных машин. Действие 220 включает в себя отправку инструкции каждой из одной или более виртуальных машин, чтобы подготовить один или более моментальных снимков уровня машины одного или более томов виртуальной машины. Как показано на фиг.1B, например, приложение 105 резервного копирования отправляет инструкции 117a, чтобы сделать резервную копию виртуальной машины 120, средству 125 записи хоста, при этом виртуальная машина 120 является частью набора виртуальных машин, которая имеет соответствующие компоненты для создания согласованных с приложениями моментальных снимков с небольшим простоем или без простоя. Средство 125 записи хоста, в свою очередь, отправляет инструкции 117b, чтобы инициировать приготовления к резервному копированию с участием средства записи, гостевому запросчику 140 на виртуальной машине 120.
Соответственно, фиг.2 показывает, что со стороны виртуальной машины 120 способ также содержит действие 230 приема запроса моментального снимка от средства записи хоста. Действие 230 включает в себя прием запроса от средства записи хоста, чтобы создавать моментальный снимок одного или более томов, вмещаемых виртуальной машиной, с помощью по меньшей мере одного из доступных программных компонентов. Например, гостевой запросчик 140 принимает сообщение 117b от средства 125 записи хоста, при этом сообщение 117b включает в себя запрос, чтобы начать процессы создания моментальных снимков с участием средства записи. По существу, виртуальная машина начнет подготовку моментального снимка своих томов, управляемых каждым VHD-файлом (например, 123, 127 и т.д.).
Кроме того, фиг.2 показывает, что со стороны виртуальной машины 120 способ содержит действие 240 отправки инструкций резервного копирования одной или более средствам записи приложения. Действие 240 включает в себя отправку инструкций одной или более средств записи приложения в виртуальной машине, чтобы подготовить соответствующие одно или более приложений виртуальной машины для моментального снимка. Например, фиг.1B показывает, что гостевой запросчик 140 отправляет сообщение 117c средствам записи приложения (не показаны) в томах в VHD-файлах 123, 127. В одном осуществлении это может подразумевать отправку запроса средствам записи, соответствующим таким приложениям, как база данных, электронная почта или другие подобные приложения, чтобы подготовить для моментального снимка релевантных данных тома.
Кроме того, фиг.2 показывает, что со стороны виртуальной машины 120 способ содержит действие 250 отправки сигнала, указывающего завершение моментальных снимков виртуальной машины. Действие 250 включает в себя отправку сигнала средству записи хоста, что операции создания моментальных снимков для каждого из одного или более томов, вмещаемых виртуальной машиной, завершены. Например, по завершении действий моментального снимка виртуальной машины гостевой запросчик отправляет сигнал завершения (не показан) средству 125 записи хоста. В соответствии с этим сигналом средство 125 записи хоста может затем отправить сообщение 157 приложению 105 резервного копирования, говорящее приложению 105 резервного копирования закончить операции создания моментальных снимков уровня хоста.
Соответственно, фиг.2 также показывает, что со стороны хоста 100 способ содержит действие 260 идентификации завершения создания моментальных снимков виртуальной машины. Действие 260 включает в себя идентификацию того, что операции создания моментального снимка в по меньшей мере одной виртуальной машине завершены. Например, как упомянуто ранее, средство 125 записи хоста отправляет сообщение 157, которое указывает, что создание моментальных снимков уровня виртуальной машины завершены.
Кроме того, фиг.2 показывает, что со стороны хоста 100 способ содержит действие 270 создания одного или более моментальных снимков уровня хоста. Действие 270 включает в себя создание одного или более моментальных снимков уровня хоста одного или более томов хоста, в которых установлена по меньшей мере одна виртуальная машина. Например, приложение 105 резервного копирования отправляет инструкции (например, 135), чтобы продолжить процессы резервного копирования в томах 110, 115 хоста. Как показано на фиг.1B, это может дать в результате моментальный снимок 167 хоста, который включает в себя несогласованные с приложениями данные 156, 161 VHD-файла 123, 127. Как обсуждается в данном документе, различные VHD-данные моментального снимка 167 уровня хоста, несмотря на то, что необязательно являются согласованными с приложениями для VHD-файлов 123, 127, тем не менее, включают в себя ранее созданные, согласованные с приложениями данные 155, 160 моментального снимка VHD. В частности, моментальный снимок 167 уровня хоста тома 110 может быть согласованным с приложениями во всех других отношениях кроме VHD-файлов 123, 127 и т.д.
В другом осуществлении, таком как с драйверами аппаратных средств, моментальные снимки уровня хоста могут быть сделаны в случае зеркалированных томов уровня хоста посредством "разрушения" зеркала между томом(ами) хоста, на котором установлена виртуальная машина, и соответствующим зеркальным томом. Зеркальный том, таким образом, содержит моментальный снимок тома хоста. Этот моментальный снимок также содержит ранее полученные моментальные снимки уровня виртуальной машины ее одного или более томов, при этом моментальные снимки уровня виртуальной машины являются согласованными с приложениями. Моментальный снимок уровня виртуальной машины может, таким образом, быть восстановлен с зеркального тома хоста.
Кроме того, фиг.2 показывает, что со стороны хоста 100 способ содержит действие 280 восстановления моментальных снимков уровня виртуальной машины, инкапсулированных внутри VHD-файлов моментального снимка хоста. Действие 280 включает в себя восстановление одного или более моментальных снимков уровня виртуальной машины одного или более томов виртуальной машины из одного или более моментальных снимков уровня хоста одного или более томов хоста. Например, как показано на фиг.1D, хост 100 может заменить (например, через VSS-компонент) данные 156 моментального снимка VHD уровня хоста в VHD 123 данными 155 моментального снимка VHD уровня виртуальной машины. Подобным образом хост 100 может заменить VHD-данные 161 уровня хоста в VHD 127 данными 160 моментального снимка VHD уровня виртуальной машины. Альтернативно, в случае драйвера аппаратных средств (т.е. "разрушения" зеркала между томом хоста и зеркальным томом) моментальный снимок уровня виртуальной машины может быть предоставлен и восстановлен из смонтированного зеркального тома, как описано ранее. В любом случае данные резервной копии уровня хоста (например, 195), таким образом, могут быть основаны по меньшей мере частично на данных моментального снимка уровня виртуальной машины.
Соответственно, фиг.1A-2 и соответствующий текст предоставляют ряд систем, компонентов и механизмов, которые могут быть использованы, чтобы создавать соответствующим образом согласованные резервные копии виртуальных машин на одном или более томах хоста. Как описано в данном документе, компоненты в соответствии с настоящим изобретением могут использоваться, чтобы создавать согласованные резервные копии виртуальных машин, которые не требуют ни простоя виртуальной машины, ни покупки дополнительных агентов резервного копирования, которые должны отдельно устанавливаться и управляться. Кроме того, компоненты, которые описаны в данном документе, могут получить преимущество традиционных служб теневого копирования, чтобы сформировать согласованный моментальный снимок виртуальной машины и затем восстановить моментальный снимок виртуальной машины из моментального снимка уровня хоста.
Варианты осуществления настоящего изобретения могут содержать специализированный компьютер или компьютер общего назначения, включающий в себя различные аппаратные средства компьютера, которые обсуждаются более подробно ниже. Варианты осуществления в рамках настоящего изобретения также включают читаемые компьютером носители для переноса или содержания выполняемых компьютером инструкций или структур данных, сохраненных на них. Такие машиночитаемые носители могут быть любыми доступными носителями, к которым может обращаться компьютер общего назначения или специализированный компьютер.
В качестве примера, а не ограничения эти машиночитаемые носители могут содержать ОЗУ, ПЗУ, ЭСППЗУ, запоминающее устройство на компакт-дисках или другое запоминающее устройство на оптических дисках, запоминающее устройство на магнитных дисках или другие магнитные запоминающие устройства либо любой другой носитель, который может быть использован, чтобы переносить или сохранять требуемое средство программного кода в форме машиноисполняемых инструкций или структур данных, к которым можно осуществлять доступ посредством компьютера общего назначения или специального назначения. Когда информация предается или предоставляется по сети или другому коммуникационному соединению (проводному, беспроводному или их сочетанию) компьютеру, компьютер надлежащим образом рассматривает соединение как машиночитаемый носитель. Таким образом, любое подобное соединение корректно называть машиночитаемым носителем. Сочетания любого из вышеперечисленного также охватывается понятием «машиночитаемый носитель».
Машиноисполняемые инструкции содержат, например, инструкции и данные, которые предписывают компьютеру общего назначения, компьютеру специального назначения или обрабатывающего устройства специального назначения выполнять определенную функцию или группу функций. Хотя предмет изобретения описан на языке, характерном для структурных признаков и/или методологических действий, необходимо понимать, что объем изобретения, определенный в прилагаемой формуле изобретения, не обязательно ограничен описанными характерными признаками или действиями. Скорее, характерные признаки и действия, описанные выше, раскрываются как примерные формы реализации пунктов формулы изобретения.
Настоящее изобретение может быть реализовано в другой конкретной форме без отступления от своего духа или важнейших характеристик. Описанные варианты осуществления должны рассматриваться во всех аспектах как иллюстративные, а не ограничительные. Следовательно, объем изобретения определяется прилагаемой формулой изобретения, а не предшествующим описанием. Все изменения, которые подпадают под смысл и диапазон эквивалентности формулы изобретения, должны включаться в определяемый ею объем.
Claims (20)
1. Способ согласованного с приложениями резервного копирования данных тома виртуальной машины, содержащий этапы, на которых
отправляют в виртуальную машину запрос на формирование согласованного с приложениями моментального снимка тома виртуальной машины упомянутой виртуальной машины, причем виртуальная машина выполнена с возможностью формирования этого согласованного с приложениями моментального снимка, пока виртуальная машина выполняется;
принимают сигнал, указывающий, что виртуальной машиной сформирован согласованный с приложениями моментальный снимок тома виртуальной машины;
формируют моментальный снимок тома хоста, причем том виртуальной машины хранится как файл на хосте; и
извлекают согласованный с приложениями моментальный снимок тома виртуальной машины из моментального снимка тома хоста.
отправляют в виртуальную машину запрос на формирование согласованного с приложениями моментального снимка тома виртуальной машины упомянутой виртуальной машины, причем виртуальная машина выполнена с возможностью формирования этого согласованного с приложениями моментального снимка, пока виртуальная машина выполняется;
принимают сигнал, указывающий, что виртуальной машиной сформирован согласованный с приложениями моментальный снимок тома виртуальной машины;
формируют моментальный снимок тома хоста, причем том виртуальной машины хранится как файл на хосте; и
извлекают согласованный с приложениями моментальный снимок тома виртуальной машины из моментального снимка тома хоста.
2. Способ по п.1, дополнительно содержащий этапы, на которых идентифицируют данные, указывающие приложение во втором состоянии выполнения в моментальном снимке тома хоста и заменяют эти данные, указывающие приложение во втором состоянии выполнения, данными для этого приложения в первом состоянии выполнения.
3. Способ по п.1, дополнительно содержащий этап, на котором преобразуют моментальный снимок тома хоста из данных только для чтения в записываемые данные.
4. Способ по п.1, в котором согласованный с приложениями моментальный снимок тома виртуальной машины включает в себя согласованные с приложениями моментальные снимки множества приложений.
5. Способ по п.1, в котором согласованный с приложениями моментальный снимок включает в себя данные, которые определяют текущее состояние приложения.
6. Способ по п.1, дополнительно содержащий этап, на котором монтируют том виртуальной машины в качестве логического диска в томе хоста.
7. Способ по п.1, в котором при формировании согласованного с приложениями моментального снимка тома виртуальной машины формируют посредством приложения копию данных, ассоциированных с этим приложением, посредством записи данных в памяти в том виртуальной машины.
8. Способ по п.1, при формировании согласованного с приложениями моментального снимка тома виртуальной машины формируют посредством приложения копию данных, ассоциированных с этим приложением, посредством гарантирования того, что никаких записей со стороны приложений в том виртуальной машины не будет осуществляться во время формирования этого моментального снимка.
9. Способ по п.1, в котором выполнение виртуальной машины приостанавливают, пока моментальный снимок тома виртуальной машины формируется.
10. Способ по п.1, дополнительно содержащий этап, на котором сохраняют состояние для виртуальной машины.
11. Способ по п.11, дополнительно содержащий этап, на котором на мгновение приостанавливают виртуальную машину.
12. Способ по п.1, в котором том хоста включает в себя множество томов виртуальных машин для множества виртуальных машин.
13. Способ по п.1, в котором виртуальная машина хранится во множестве файлов в томе хоста.
14. Способ по п.1, в котором виртуальная машина выполняется в удаленной компьютерной системе.
15. Способ по п.1, в котором виртуальная машина выполняется в компьютерной системе, которая включает в себя том хоста.
16. Способ по п.1, в котором согласованный с приложениями моментальный снимок виртуальной машины включает в себя согласованный с приложениями моментальный снимок данных для приложения во втором состоянии выполнения.
17. Компьютерная система, содержащая процессор, подключенный к тому хоста, при этом том хоста содержит инструкции для выполнения приложения в виртуальной машине, причем виртуальная машина включает в себя том виртуальной машины, который хранится как файл в томе хоста;
инструкции для формирования, пока виртуальная машина активна, согласованного с приложениями моментального снимка выполняющегося приложения посредством, по меньшей мере, предотвращения записей со стороны приложений, пока этот моментальный снимок формируется;
инструкции для сохранения согласованного с приложениями моментального снимка выполняющегося приложения в томе виртуальной машины; и
инструкции для формирования моментального снимка тома хоста.
инструкции для формирования, пока виртуальная машина активна, согласованного с приложениями моментального снимка выполняющегося приложения посредством, по меньшей мере, предотвращения записей со стороны приложений, пока этот моментальный снимок формируется;
инструкции для сохранения согласованного с приложениями моментального снимка выполняющегося приложения в томе виртуальной машины; и
инструкции для формирования моментального снимка тома хоста.
18. Система по п.18, в котором том хоста дополнительно содержит инструкции для извлечения согласованного с приложениями моментального снимка выполняющегося приложения.
19. Система по п.18, в котором том хоста дополнительно содержит инструкции для монтирования тома виртуальной машины в качестве логического диска.
20. Считываемый компьютером носитель данных, содержащий исполняемые компьютером инструкции для согласованного с приложениями резервного копирования по меньшей мере одной виртуальной машины, при этом считываемый компьютером носитель данных содержит
инструкции для определения того, что виртуальная машина включает в себя процессы резервного копирования с участием средства записи;
инструкции для отправки виртуальной машине инструкции сформировать моментальные снимки уровня виртуальной машины для приложений, выполняющихся в виртуальной машине, причем эти моментальные снимки уровня виртуальной машины формируются посредством использования процесса резервного копирования с участием средства записи для подготовки согласованных с приложениями моментальных снимков, пока виртуальная машина выполняется;
инструкции для создания моментального снимка уровня хоста, на котором установлена виртуальная машина; и
инструкции для извлечения моментальных снимков уровня виртуальной машины из моментального снимка уровня хоста.
инструкции для определения того, что виртуальная машина включает в себя процессы резервного копирования с участием средства записи;
инструкции для отправки виртуальной машине инструкции сформировать моментальные снимки уровня виртуальной машины для приложений, выполняющихся в виртуальной машине, причем эти моментальные снимки уровня виртуальной машины формируются посредством использования процесса резервного копирования с участием средства записи для подготовки согласованных с приложениями моментальных снимков, пока виртуальная машина выполняется;
инструкции для создания моментального снимка уровня хоста, на котором установлена виртуальная машина; и
инструкции для извлечения моментальных снимков уровня виртуальной машины из моментального снимка уровня хоста.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/405,236 US8321377B2 (en) | 2006-04-17 | 2006-04-17 | Creating host-level application-consistent backups of virtual machines |
US11/405,236 | 2006-04-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2008141158A RU2008141158A (ru) | 2010-04-27 |
RU2433458C2 true RU2433458C2 (ru) | 2011-11-10 |
Family
ID=38606087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2008141158/08A RU2433458C2 (ru) | 2006-04-17 | 2007-02-15 | Создание согласованных с приложениями резервных копий виртуальных машин уровня хоста |
Country Status (14)
Country | Link |
---|---|
US (3) | US8321377B2 (ru) |
EP (1) | EP2016501B1 (ru) |
JP (1) | JP5021721B2 (ru) |
KR (2) | KR101432463B1 (ru) |
CN (1) | CN101421715B (ru) |
AU (1) | AU2007248869B2 (ru) |
BR (1) | BRPI0710003B1 (ru) |
CA (1) | CA2645969C (ru) |
ES (1) | ES2639417T3 (ru) |
MX (1) | MX2008013132A (ru) |
MY (1) | MY154949A (ru) |
RU (1) | RU2433458C2 (ru) |
TW (1) | TWI438689B (ru) |
WO (1) | WO2007130192A1 (ru) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2619894C2 (ru) * | 2011-06-20 | 2017-05-19 | МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи | Управление дублированным виртуальным хранилищем на сайтах восстановления |
Families Citing this family (153)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7676502B2 (en) * | 2006-05-22 | 2010-03-09 | Inmage Systems, Inc. | Recovery point data view shift through a direction-agnostic roll algorithm |
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 |
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 |
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 |
US8868858B2 (en) * | 2006-05-19 | 2014-10-21 | Inmage Systems, Inc. | Method and apparatus of continuous data backup and access using virtual machines |
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 |
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 |
US8527721B2 (en) * | 2008-12-26 | 2013-09-03 | Rajeev Atluri | Generating a recovery snapshot and creating a virtual view of the recovery snapshot |
US8838528B2 (en) * | 2006-05-22 | 2014-09-16 | Inmage Systems, Inc. | Coalescing and capturing data between events prior to and after a temporal window |
US8527470B2 (en) | 2006-05-22 | 2013-09-03 | Rajeev Atluri | Recovery point data view formation with generation of a recovery view and a coalesce policy |
JP4681505B2 (ja) * | 2006-05-23 | 2011-05-11 | 株式会社日立製作所 | 計算機システム、管理計算機及びプログラム配布方法 |
US7634507B2 (en) * | 2006-08-30 | 2009-12-15 | Inmage Systems, Inc. | Ensuring data persistence and consistency in enterprise storage backup systems |
US7689859B2 (en) * | 2006-12-20 | 2010-03-30 | Symantec Operating Corporation | Backup system and method |
JP4982249B2 (ja) * | 2006-12-22 | 2012-07-25 | 株式会社日立製作所 | 運用整合性維持方法、システム及びプログラム |
US9495370B1 (en) * | 2007-07-19 | 2016-11-15 | American Megatrends, Inc. | Data recovery point review in a continuous data protection system |
US8458419B2 (en) * | 2008-02-27 | 2013-06-04 | International Business Machines Corporation | Method for application backup in the VMware consolidated backup framework |
US8145841B2 (en) | 2008-06-06 | 2012-03-27 | Pivot3 | Method and system for initializing storage in a storage system |
US9356805B2 (en) * | 2008-06-06 | 2016-05-31 | International Business Machines Corporation | Implementing a plurality of interface definitions |
US8522135B2 (en) * | 2008-06-06 | 2013-08-27 | International Business Machines Corporation | Generating a transformation description document for transforming messages |
US8219750B2 (en) * | 2008-06-30 | 2012-07-10 | Pivot3 | Method and system for execution of applications in conjunction with distributed RAID |
US8046550B2 (en) | 2008-07-14 | 2011-10-25 | Quest Software, Inc. | Systems and methods for performing backup operations of virtual machine files |
US8060476B1 (en) | 2008-07-14 | 2011-11-15 | Quest Software, Inc. | Backup systems and methods for a virtual computing environment |
US8135930B1 (en) | 2008-07-14 | 2012-03-13 | Vizioncore, Inc. | Replication systems and methods for a virtual computing environment |
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 |
US20120005672A1 (en) * | 2010-07-02 | 2012-01-05 | International Business Machines Corporation | Image management for virtual machine instances and associated virtual storage |
US8434081B2 (en) | 2010-07-02 | 2013-04-30 | International Business Machines Corporation | Storage manager for virtual machines with virtual storage |
WO2012020482A1 (ja) | 2010-08-11 | 2012-02-16 | 富士通株式会社 | バックアップ方法、情報処理装置及びプログラム |
US8898114B1 (en) | 2010-08-27 | 2014-11-25 | Dell Software Inc. | Multitier deduplication systems and methods |
US8677004B2 (en) * | 2010-09-10 | 2014-03-18 | International Business Machines Corporation | Migration of logical partitions between two devices |
US9037547B1 (en) * | 2010-09-15 | 2015-05-19 | Symantec Corporation | Backup time deduplication of common virtual disks from virtual machine backup images |
US20120072685A1 (en) * | 2010-09-16 | 2012-03-22 | Hitachi, Ltd. | Method and apparatus for backup of virtual machine data |
KR101731422B1 (ko) | 2010-10-04 | 2017-04-28 | 삼성전자주식회사 | 가상화 환경에서의 장애 복구 장치 및 방법 |
US8417672B2 (en) * | 2010-10-11 | 2013-04-09 | Microsoft Corporation | Item level recovery |
US9141368B2 (en) | 2011-03-10 | 2015-09-22 | Microsoft Technology Licensing, Llc | Managing boot loaders for virtual hard disks |
US8892707B2 (en) * | 2011-04-13 | 2014-11-18 | Netapp, Inc. | Identification of virtual applications for backup in a cloud computing system |
US8725782B2 (en) * | 2011-04-25 | 2014-05-13 | Microsoft Corporation | Virtual disk storage techniques |
US9519496B2 (en) | 2011-04-26 | 2016-12-13 | Microsoft Technology Licensing, Llc | Detecting and preventing virtual disk storage linkage faults |
WO2012151392A1 (en) * | 2011-05-04 | 2012-11-08 | Citrix Systems, Inc. | Systems and methods for sr-iov pass-thru via an intermediary device |
US8868882B2 (en) | 2011-06-08 | 2014-10-21 | Microsoft Corporation | Storage architecture for backup application |
US9286182B2 (en) | 2011-06-17 | 2016-03-15 | Microsoft Technology Licensing, Llc | Virtual machine snapshotting and analysis |
US8886903B2 (en) | 2011-06-23 | 2014-11-11 | Hitachi, Ltd. | Storage management system and storage management method |
US8863124B1 (en) | 2011-08-10 | 2014-10-14 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment |
US8601473B1 (en) | 2011-08-10 | 2013-12-03 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment |
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 |
US8850130B1 (en) | 2011-08-10 | 2014-09-30 | Nutanix, Inc. | Metadata for managing I/O and storage for a virtualization |
US9652265B1 (en) * | 2011-08-10 | 2017-05-16 | Nutanix, Inc. | Architecture for managing I/O and storage for a virtualization environment with multiple hypervisor types |
US9747287B1 (en) | 2011-08-10 | 2017-08-29 | Nutanix, Inc. | Method and system for managing metadata for a virtualization environment |
DE112011105577T5 (de) | 2011-08-30 | 2014-05-08 | Hewlett-Packard Development Company, L.P. | Virtueller hochprivilegierter Modus für eine Systemverwaltungsanforderung |
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 | 富士通株式会社 | バックアップ制御方法、および情報処理装置 |
WO2013145434A1 (ja) * | 2012-03-29 | 2013-10-03 | 株式会社北洋銀行 | ネットワークシステム及びその制御方法 |
US9110604B2 (en) | 2012-09-28 | 2015-08-18 | Emc Corporation | System and method for full 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 |
US9104331B2 (en) | 2012-09-28 | 2015-08-11 | Emc Corporation | System and method for incremental virtual machine backup using storage system functionality |
US8719286B1 (en) | 2012-03-30 | 2014-05-06 | Emc Corporation | System and method for block-based subtree virtual machine backup |
WO2013157124A1 (ja) * | 2012-04-19 | 2013-10-24 | 株式会社日立製作所 | ライセンス管理システム、管理サーバ及び管理方法 |
US10353619B1 (en) * | 2012-06-11 | 2019-07-16 | Veritas Technologies Llc | Systems and methods for applying storage lifecycle policies to backups |
US9772866B1 (en) | 2012-07-17 | 2017-09-26 | Nutanix, Inc. | Architecture for implementing a virtualization environment and appliance |
CN103593256B (zh) * | 2012-08-15 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 一种基于多层排重的虚机快照备份方法和系统 |
US9778860B2 (en) | 2012-09-12 | 2017-10-03 | Microsoft Technology Licensing, Llc | Re-TRIM of free space within VHDX |
CN104662522B (zh) * | 2012-09-28 | 2018-11-02 | Emc 公司 | 使用存储系统功能性的全虚拟机备份的系统和方法 |
US9262212B2 (en) | 2012-11-02 | 2016-02-16 | The Boeing Company | Systems and methods for migrating virtual machines |
US9069708B2 (en) | 2012-12-27 | 2015-06-30 | Nutanix, Inc. | Method and system for implementing consistency groups with virtual machines |
CN103902351A (zh) * | 2012-12-28 | 2014-07-02 | 鸿富锦精密工业(深圳)有限公司 | 虚拟机运算系统及方法 |
CN104216793B (zh) | 2013-05-31 | 2017-10-17 | 国际商业机器公司 | 应用程序备份、恢复的方法及设备 |
JP6115331B2 (ja) | 2013-06-06 | 2017-04-19 | 富士通株式会社 | トランザクション再開プログラム、情報処理装置及びトランザクション再開方法 |
US9665386B2 (en) * | 2013-06-14 | 2017-05-30 | Nutanix, Inc. | Method for leveraging hypervisor functionality for maintaining application consistent snapshots in a virtualization environment |
US9740514B1 (en) | 2013-06-26 | 2017-08-22 | Nutanix, Inc. | Method and system to share data with snapshots in a virtualization environment |
US9262448B2 (en) * | 2013-08-12 | 2016-02-16 | International Business Machines Corporation | Data backup across physical and virtualized storage volumes |
US10789136B1 (en) | 2013-08-23 | 2020-09-29 | Acronis International Gmbh | Granular recovery using hot-plug virtual disks |
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 |
EP3452904B1 (en) * | 2016-05-02 | 2023-12-27 | Nokia Solutions and Networks Oy | Snapshot creation in virtual network environment |
US10613947B2 (en) | 2016-06-09 | 2020-04-07 | Nutanix, Inc. | Saving and restoring storage devices using application-consistent snapshots |
US10146471B1 (en) * | 2016-06-27 | 2018-12-04 | Emc Corporation | Offloaded data protection based on virtual machine snapshots |
US10241713B2 (en) | 2016-09-01 | 2019-03-26 | Red Hat Israel, Ltd. | Snapshot management with an external storage service |
US10379750B2 (en) * | 2017-05-22 | 2019-08-13 | Sap Se | Processing large requests in data storage systems with limited/constant buffer sizes |
US10417096B2 (en) * | 2017-07-20 | 2019-09-17 | Vmware, Inc. | Multi-virtual machine time consistent snapshots |
US10824522B2 (en) | 2017-11-27 | 2020-11-03 | Nutanix, Inc. | Method, apparatus, and computer program product for generating consistent snapshots without quiescing applications |
CN107995319B (zh) * | 2018-01-08 | 2021-05-18 | 迈普通信技术股份有限公司 | 虚拟设备配置方法及网络设备 |
CN110058962B (zh) * | 2018-01-18 | 2023-05-23 | 伊姆西Ip控股有限责任公司 | 确定虚拟机快照的一致性级别的方法、设备和计算机程序产品 |
US11232001B2 (en) * | 2018-01-29 | 2022-01-25 | Rubrik, Inc. | Creation of virtual machine packages using incremental state updates |
US10838823B2 (en) * | 2018-02-01 | 2020-11-17 | EMC IP Holding Company LLC | Systems and method to make application consistent virtual machine backup work in private network |
US11455215B2 (en) | 2018-04-30 | 2022-09-27 | Nutanix Inc. | Context-based disaster recovery |
US11093333B1 (en) * | 2019-04-05 | 2021-08-17 | EMC IP Holding Company LLC | Efficient recovery of multiple virtual machines |
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 |
US11816000B2 (en) | 2019-09-12 | 2023-11-14 | restor Vault, LLC | Virtual recovery of unstructured data |
US11977453B2 (en) | 2019-09-12 | 2024-05-07 | Restorvault, Llc | Virtual replication of unstructured data |
CN111104367B (zh) * | 2019-12-13 | 2023-08-18 | 浪潮云信息技术股份公司 | 一种基于openstack卷启动虚拟机创建私有镜像的方法 |
CN112130959B (zh) * | 2020-09-29 | 2021-12-07 | 上海英方软件股份有限公司 | 一种虚拟机的保护系统及方法 |
US11663086B2 (en) * | 2020-10-15 | 2023-05-30 | EMC IP Holding Company LLC | File system slicing in network attached storage for data protection |
US11467738B2 (en) * | 2021-01-28 | 2022-10-11 | EMC IP Holding Company LLC | Failsafe mechanism to import snapshots |
US11816129B2 (en) | 2021-06-22 | 2023-11-14 | Pure Storage, Inc. | Generating datasets using approximate baselines |
US20230229641A1 (en) * | 2022-01-16 | 2023-07-20 | Bytebase (HongKong) Limited | Novel database schema change, recording and version control method and platform |
US11994953B2 (en) * | 2022-06-16 | 2024-05-28 | 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 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2259582C2 (ru) * | 2000-12-27 | 2005-08-27 | Интел Корпорейшн | Способ разрешения конфликтов по адресному пространству между монитором виртуальных машин и гостевой операционной системой |
Family Cites Families (71)
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 |
WO2000078004A2 (en) | 1999-06-10 | 2000-12-21 | Alcatel Internetworking, Inc. | Policy based network architecture |
US6714980B1 (en) | 2000-02-11 | 2004-03-30 | Terraspring, Inc. | Backup and restore of data associated with a host in a dynamically changing virtual server farm without involvement of a server that uses an associated storage device |
US6711699B1 (en) | 2000-05-04 | 2004-03-23 | International Business Machines Corporation | Real time backup system for information based on a user's actions and gestures for computer users |
US6993761B1 (en) * | 2000-09-28 | 2006-01-31 | Sun Microsystems, Inc. | Method and apparatus to verify type safety of an application snapshot |
US6735601B1 (en) * | 2000-12-29 | 2004-05-11 | Vmware, Inc. | System and method for remote file access by computer |
US6728736B2 (en) * | 2001-03-14 | 2004-04-27 | Storage Technology Corporation | System and method for synchronizing a data copy using an accumulation remote copy trio |
GB0112781D0 (en) | 2001-05-25 | 2001-07-18 | Global Continuity Plc | Method for rapid recovery from a network file server failure |
US6948038B2 (en) * | 2001-07-24 | 2005-09-20 | Microsoft Corporation | System and method for backing up and restoring data |
US7251625B2 (en) * | 2001-10-02 | 2007-07-31 | Best Buy Enterprise Services, Inc. | Customer identification system and method |
US6751715B2 (en) | 2001-12-13 | 2004-06-15 | Lsi Logic Corporation | System and method for disabling and recreating a snapshot volume |
US20070094466A1 (en) * | 2001-12-26 | 2007-04-26 | Cisco Technology, Inc., A Corporation Of California | Techniques for improving mirroring operations implemented in storage area networks and network based virtualization |
JP2003202964A (ja) | 2002-01-09 | 2003-07-18 | Hitachi Ltd | 計算機システムの制御方法、計算機システム、記憶装置の制御方法及び記憶装置 |
US7093086B1 (en) * | 2002-03-28 | 2006-08-15 | Veritas Operating Corporation | Disaster recovery and backup using virtual machines |
JP2003309564A (ja) | 2002-04-17 | 2003-10-31 | Mitsubishi Electric Corp | マイクロコンピュータシステムおよびそれに使用されるトランシーバ |
JP2003316522A (ja) | 2002-04-26 | 2003-11-07 | Hitachi Ltd | 計算機システムおよび計算機システムの制御方法 |
US7313793B2 (en) | 2002-07-11 | 2007-12-25 | Microsoft Corporation | Method for forking or migrating a virtual machine |
FI119407B (fi) | 2002-08-28 | 2008-10-31 | Sap Ag | Korkean palvelutason ohjelmistopohjainen yhteyspalvelin |
US7089377B1 (en) | 2002-09-06 | 2006-08-08 | Vmware, Inc. | Virtualization system for computers with a region-based memory architecture |
KR100439675B1 (ko) * | 2002-10-24 | 2004-07-14 | 한국전자통신연구원 | 대용량 공유 저장장치를 위한 효율적인 스냅샷 수행방법 |
US8209680B1 (en) * | 2003-04-11 | 2012-06-26 | Vmware, Inc. | System and method for disk imaging on diverse computers |
CN1331063C (zh) * | 2003-06-10 | 2007-08-08 | 联想(北京)有限公司 | 基于数据卷快照的在线数据备份方法 |
US7047380B2 (en) * | 2003-07-22 | 2006-05-16 | Acronis Inc. | System and method for using file system snapshots for online data backup |
JP4466001B2 (ja) | 2003-08-06 | 2010-05-26 | 株式会社日立製作所 | スナップショット高速化方法 |
US7953819B2 (en) * | 2003-08-22 | 2011-05-31 | Emc Corporation | Multi-protocol sharable virtual storage objects |
TWI223756B (en) | 2003-10-09 | 2004-11-11 | Univ Nat Sun Yat Sen | Automatic register backup/restore system and method |
US7373451B2 (en) * | 2003-12-08 | 2008-05-13 | The Board Of Trustees Of The Leland Stanford Junior University | Cache-based system management architecture with virtual appliances, network repositories, and virtual appliance transceivers |
US7139887B2 (en) * | 2003-12-31 | 2006-11-21 | Veritas Operating Corporation | Coordinated storage management operations in replication environment |
US7490103B2 (en) * | 2004-02-04 | 2009-02-10 | Netapp, Inc. | Method and system for backing up data |
US8359491B1 (en) * | 2004-03-30 | 2013-01-22 | Symantec Operating Corporation | Disaster recovery rehearsal using copy on write |
US7096392B2 (en) | 2004-05-07 | 2006-08-22 | Asempra Technologies, Inc. | Method and system for automated, no downtime, real-time, continuous data protection |
US20050267920A1 (en) | 2004-05-13 | 2005-12-01 | Fabrice Helliker | System and method for archiving data in a clustered environment |
JP4050249B2 (ja) | 2004-05-20 | 2008-02-20 | 株式会社エヌ・ティ・ティ・データ | 仮想マシン管理システム |
US7299326B2 (en) | 2004-06-09 | 2007-11-20 | Taiwan Semiconductor Manufacturing Company, Ltd. | System and method for providing backup service continuity using a virtual backup service path |
US7580826B2 (en) | 2004-06-30 | 2009-08-25 | Microsoft Corporation | Systems and methods for development of emulated devices in a virtual machine environment |
US20060047926A1 (en) * | 2004-08-25 | 2006-03-02 | Zheng Calvin G | Managing multiple snapshot copies of data |
US20060080521A1 (en) | 2004-09-23 | 2006-04-13 | Eric Barr | System and method for offline archiving of data |
JP4550541B2 (ja) * | 2004-10-06 | 2010-09-22 | 株式会社日立製作所 | ストレージシステム |
US7840963B2 (en) * | 2004-10-15 | 2010-11-23 | Microsoft Corporation | Marking and utilizing portions of memory state information during a switch between virtual machines to minimize software service interruption |
US20060085784A1 (en) * | 2004-10-15 | 2006-04-20 | Microsoft Corporation | Systems and methods for authoring and accessing computer-based materials using virtual machines |
GB2419701A (en) * | 2004-10-29 | 2006-05-03 | Hewlett Packard Development Co | Virtual overlay infrastructure with dynamic control of mapping |
US20060123210A1 (en) * | 2004-12-06 | 2006-06-08 | St. Bernard Software, Inc. | Method for logically consistent backup of open computer files |
US7409719B2 (en) * | 2004-12-21 | 2008-08-05 | Microsoft Corporation | Computer security management, such as in a virtual machine or hardened operating system |
US7899788B2 (en) * | 2005-04-01 | 2011-03-01 | Microsoft Corporation | Using a data protection server to backup and restore data on virtual servers |
US7669020B1 (en) * | 2005-05-02 | 2010-02-23 | Symantec Operating Corporation | Host-based backup for virtual machines |
EP2477114B1 (en) * | 2005-06-24 | 2014-01-15 | Syncsort Incorporated | System and method for high performance enterprise data protection |
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 |
US8135930B1 (en) * | 2008-07-14 | 2012-03-13 | Vizioncore, Inc. | Replication 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 |
US8117410B2 (en) * | 2008-08-25 | 2012-02-14 | Vmware, Inc. | Tracking block-level changes using snapshots |
US8234469B2 (en) * | 2009-07-09 | 2012-07-31 | Microsoft Corporation | Backup of virtual machines using cloned virtual machines |
-
2006
- 2006-04-17 US US11/405,236 patent/US8321377B2/en active Active
-
2007
- 2007-02-15 JP JP2009506485A patent/JP5021721B2/ja active Active
- 2007-02-15 WO PCT/US2007/004183 patent/WO2007130192A1/en active Application Filing
- 2007-02-15 BR BRPI0710003A patent/BRPI0710003B1/pt active IP Right Grant
- 2007-02-15 AU AU2007248869A patent/AU2007248869B2/en not_active Ceased
- 2007-02-15 KR KR1020137025294A patent/KR101432463B1/ko active IP Right Grant
- 2007-02-15 EP EP07750979.2A patent/EP2016501B1/en active Active
- 2007-02-15 CA CA2645969A patent/CA2645969C/en active Active
- 2007-02-15 RU RU2008141158/08A patent/RU2433458C2/ru active
- 2007-02-15 CN CN200780013689XA patent/CN101421715B/zh active Active
- 2007-02-15 ES ES07750979.2T patent/ES2639417T3/es active Active
- 2007-02-15 MX MX2008013132A patent/MX2008013132A/es not_active Application Discontinuation
- 2007-02-15 KR KR1020087025498A patent/KR101330495B1/ko active IP Right Grant
- 2007-03-01 TW TW096107046A patent/TWI438689B/zh not_active IP Right Cessation
-
2008
- 2008-09-17 MY MYPI20083627A patent/MY154949A/en unknown
-
2012
- 2012-11-26 US US13/685,566 patent/US9529807B2/en active Active
-
2016
- 2016-11-23 US US15/360,586 patent/US20170075912A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2259582C2 (ru) * | 2000-12-27 | 2005-08-27 | Интел Корпорейшн | Способ разрешения конфликтов по адресному пространству между монитором виртуальных машин и гостевой операционной системой |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2619894C2 (ru) * | 2011-06-20 | 2017-05-19 | МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи | Управление дублированным виртуальным хранилищем на сайтах восстановления |
US9785523B2 (en) | 2011-06-20 | 2017-10-10 | Microsoft Technology Licensing, Llc | Managing replicated virtual storage at recovery sites |
Also Published As
Publication number | Publication date |
---|---|
JP5021721B2 (ja) | 2012-09-12 |
BRPI0710003A2 (pt) | 2011-08-02 |
MY154949A (en) | 2015-08-28 |
KR101432463B1 (ko) | 2014-08-21 |
TW200809626A (en) | 2008-02-16 |
CA2645969C (en) | 2015-02-03 |
CA2645969A1 (en) | 2007-11-15 |
EP2016501A4 (en) | 2009-11-11 |
US20170075912A1 (en) | 2017-03-16 |
US20130085994A1 (en) | 2013-04-04 |
AU2007248869B2 (en) | 2011-09-08 |
EP2016501B1 (en) | 2017-06-07 |
JP2009533777A (ja) | 2009-09-17 |
US8321377B2 (en) | 2012-11-27 |
BRPI0710003B1 (pt) | 2018-11-13 |
US9529807B2 (en) | 2016-12-27 |
CN101421715A (zh) | 2009-04-29 |
KR101330495B1 (ko) | 2013-11-15 |
EP2016501A1 (en) | 2009-01-21 |
RU2008141158A (ru) | 2010-04-27 |
CN101421715B (zh) | 2012-01-04 |
MX2008013132A (es) | 2008-10-21 |
KR20130115391A (ko) | 2013-10-21 |
ES2639417T3 (es) | 2017-10-26 |
TWI438689B (zh) | 2014-05-21 |
US20070244938A1 (en) | 2007-10-18 |
BRPI0710003A8 (pt) | 2017-01-17 |
WO2007130192A1 (en) | 2007-11-15 |
AU2007248869A1 (en) | 2007-11-15 |
KR20090005330A (ko) | 2009-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2433458C2 (ru) | Создание согласованных с приложениями резервных копий виртуальных машин уровня хоста | |
US10884870B2 (en) | Method and system for implementing consistency groups with virtual machines | |
CN111488241B (zh) | 在容器编排平台实现无代理备份与恢复操作的方法和系统 | |
EP2558949B1 (en) | Express-full backup of a cluster shared virtual machine | |
CN101253484B (zh) | 一种用于保存来自客户端的数据的方法及一种客户端 | |
US7370164B1 (en) | Backup of virtual machines from the base machine | |
US7350043B2 (en) | Continuous data protection of block-level volumes | |
US6826666B2 (en) | Method and system for transporting data content on a storage area network | |
US8868858B2 (en) | Method and apparatus of continuous data backup and access using virtual machines | |
US10089186B1 (en) | Method and apparatus for file backup | |
CN117130980B (zh) | 一种虚拟机快照管理方法及装置 | |
US9952807B1 (en) | Virtual machine back-up |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PC41 | Official registration of the transfer of exclusive right |
Effective date: 20150526 |