Skip to content

Instantly share code, notes, and snippets.

Created August 29, 2017 13:26
Show Gist options
  • Save anonymous/a4a7e2c5ebf387f883eae1a1457ffd5c to your computer and use it in GitHub Desktop.
Save anonymous/a4a7e2c5ebf387f883eae1a1457ffd5c to your computer and use it in GitHub Desktop.
Снимки hyper v

Снимки hyper v


Снимки hyper v



Как работают «снимки» (Snapshots) в Hyper-V
О снимках виртуальных машин
Объединение Snapshot в Hyper-V


























Предыдущие версии гипервизора от MS идущие в комплекте с Windows и Windows R2 обрабатывали удаление снимков виртуальных машин достаточно криво — необходимо было сразу после удаления снимка выключать виртуальную машину. В процессе выключения данные из снимка объединялись с родительским файлом vhd или avhd. Понятно, что после удаления снимка выключать виртуальную машину не всегда было возможно. В итоге могло быть несколько удалённых снимков, которые так и не были объединены в родительский файл. И вот в этот момент слияние всех этих оставшихся файлов превращалось в настоящий квест. Относительно недавно стал доступен дистрибутив для разработчиков следующей версии Windows Server со следующей версией гипервизора на борту. Вроде бы пока я не видел чтобы это утверждение кто-то проверил — так что, возможно, буду первым. Что у нас имеется — свежеустановленная операционная система Windows Server 8 Developer Preview с ролью Hyper-V. Далее подключаем её в качестве хоста к VMM R2 подключается! Так получилось, что это оказалась Windows Далее ставим разное ПО чтобы можно было сделать пару снимков, которые бы друг от друга немного отличались. В итоге получаем следующее. Первый файл — std Логично предположить, что если мы будем удалять второй снимок — то в его файл должно вставиться изменение состояния виртуальной машины из третьего файла. Если будем удалять только первый снимок — то второй файл будет объединён с первым. Видно, что третий файл был объединён со вторым, за счёт чего последний стал чуть больше. Уточню, что я виртуальную машину не выключал и процесс слияния файлов происходил во время работы виртуальной машины. На первый взгляд — виртуалка немного подтормаживала — но утверждать этого не буду, могу ошибиться. Головная боль — врядли. Операция их включения в основной файл диска виртуальной машины я описывал ранее — http: Trackback URI Comments RSS. You can use these tags: Удаление снимков в Hyper-V 3. Физически они все три состояния виртуальной машины представляют три файла: По завершении объединения в папке виртуальной машины у нас будут находиться следующие файлы: Categories Applications Certification Exchange Lync PowerShell Virtualization Windows Движок Из жизни Search for: May 4 April 3 March 3 January 1. December 1 November 2 October 1 September 1 August 1 July 2 June 5 May 1 April 1 March 3 February 1 January 1. December 1 November 1 October 2 September 2 August 1 July 2 May 2 April 1 February 1 January 2. November 1 October 1 September 1 July 2 June 1 May 4 April 1 March 3 January 2. December 3 November 1 October 1 September 2 August 1 July 1 June 1 April 3 February 3 January 1. December 2 November 2 October 5 August 6 July 5 June 2 May 1 April 1 March 4 February 3 January 5. December 4 November 1 October 3 September 5 August 9 July 2 June 3 May 1 April 7 March 4 February 5 January 8. December 5 November 6 October 4 September 3 August 3 July 1 June 5 May 1 April 3 March 4 February 4 January 6. December 5 November 4 October 3 September 3 August 5 July 7 June 5 May 6 April 5 March 9 February 6 January 7. December 8 November 4 October 6 September 4 August 2 July 4 June 5 May 3. Wordpress Theme designed by Komirad.


Как работают «снимки» (Snapshots) в Hyper-V


Только полноправные пользователи могут оставлять комментарии. TM Feed Хабрахабр Geektimes Тостер Мой круг Фрилансим. Хабрахабр Публикации Пользователи Хабы Компании Песочница. Снапшот виртуальной машины — это как сохранение в игре: В этой статье я попытаюсь более-менее подробно рассказать о работе моментальных снимках и о некоторых нюансах их применения. В статье речь пойдет о Microsoft Hyper-V, но с некоторыми натяжками материал статьи применим и для других систем виртуализации в частности — VMWare. Прежде, чем продолжать — вспомним, из каких компонентов состоит виртуальная машина: Файл конфигурации — основа виртуальной машины, хранит все настройки, касающиеся виртуалки. Представляет собой XML-файл, имеющий, как ни странно, расширение XML. Обычно в качестве жесткого диска виртуальные машины используют специальные файлы-образы, имеющие расширение VHD. Этот формат, изначально разработанный фирмой Connectix, после приобретения ее корпорацией Microsoft стал использоваться в продуктах виртуализации, и не только в них: Дифференциальные диски — основа технологии снапшотов. При создании снапшота запись в VHD-файл прекращается, и все последующие изменения записываются в отдельный файл, имеющий расширение VHD. Сохранение состояния Save State — одна из полезных функций системы виртуализации. При сохранении состояния все содержимое памяти виртуальной машины, регистров процессора и т. После этого можно делать все что угодно, вплоть до перезагрузки хостовой машины, а потом снова запустить виртуалку — и она будет работать, как ни в чем не бывало, ровно в том же состоянии, в каком она была до сохранения. Примерно так же работает функция Hibernate в Microsoft Windows с единственным лишь отличием — сохранение состояния происходит на уровне самой виртуальной машины, а не на уровне гостевой ОС. В VirtualPC и Virtual Server для сохранения содержимого памяти использовался файл с расширением VSV, в Hyper-V же их стало аж целых два — BIN и VSV. Если виртуальную машину Hyper-V нужно склонировать, или же перенести на другой хост — необходимо произвести операцию экспорта, а затем импорта. При экспорте конфигурационный XML-файл преобразуется в файл с расширением EXP. Различают два типа моментальных снимков: Онлайновым называют снапшот, сделанный на виртуальной машине с запущенной гостевой ОС. Для пользователя нет абсолютно никаких различий между онлайновыми и оффлайновыми снапшотами. Различаются они только по составу файлов, потому что при создании снапшота на запущенной виртуалке происходит операция Save State, и данные Save State включаются в состав снапшота Онлайн-снапшот: Копия файла конфигурации Дифференциальный диск AVHD Что можно и что нельзя делать с моментальными снимками? Как уже было сказано, снапшоты виртуальных машин — это то же самое, что и сохранение в игре. И единственное их назначение — обеспечение точки возврата на случай возможных ошибок. Снапшоты — это не бэкап, и использовать их для аварийного восстановления не получится. Использовать моментальные снимки в production-среде не рекомендуется, потому что это может привести к падению производительности, почему это так — будет понятно далее из статьи. Если необходимо часто создавать резервные копии для защиты от ошибок пользователей — необходимо использовать другие средства, к примеру — инкрементные бэкапы или журналы транзакций, если речь идет о базах данных. Помимо этого, необходимо помнить, что управлять снапшотами можно и нужно только через стандартные средства Hyper-V оснастка MMC Hyper-V Manager, WMI-провайдеры, командлеты PowerShell и сторонний софт, использующий такие средства — например Microsoft SystemCenter Virtual Machine Manager. Итак, что же происходит при создании снапшота? Для простоты представим виртуальную машину с одним жестким диском см. Только что мы установили на нее операционную систему, и, прежде чем двигаться дальше — хотим сделать снапшот. При выборе Create Snapshot текущая конфигурация виртуальной машины сохраняется в отдельный файл Копия конфигурации 1 , и создается файл AVHD Дифференциальный диск AVHD 1. При этом в саму конфигурацию виртуальной машины вносятся изменения, и с этого момента из файла VHD производится только чтение, а вся запись производится только в AVHD-файл зеленая стрелка. Диск виртуальной машины состоит уже из двух файлов: Теперь, допустим, что мы что-то сделали к примеру, установили приложение и делаем еще один снапшот. Точно так же, как и до этого — конфигурация сохраняется в отдельный файл, создается новый AVHD, и запись перенаправляется уже в него желтая стрелка. Виртуальный диск состоит уже из трех файлов: VHD и двух AVHD. Допустим, мы создали один или несколько моментальных снимков. Что же теперь с ними можно сделать? Выбор тут, в принципе, не слишком богат: По факту, это означает: Apply — возвратиться к точке создания снапшота, при этом все изменения, произошедшие с момента создания снапшота и до настоящего времени будут потеряны. Delete — точка возврата удалится, а все внесенные изменения сохранятся на веки вечные. Посмотрим, как это происходит. Хотим мы откатиться назад, к моменту окончания установки приложений. Теперь, допустим, мы закончили наши эксперименты, и перед вводом виртуальной машины в продакшн хотим удалить все наши снапшоты. Во-первых, удаляется копия файла конфигурации, и сам снапшот исчезает из списка. Если в данный момент виртуальная машина запущена — AVHD, связанный с этим снапшотом остается, и запись в него продолжается. Как только виртуальная машина останавливается шатдаун или перезагрузка — все данные из AVHD записываются в предыдущий AVHD, или в VHD, если мы удаляем первый снапшот, а сам AVHD удаляется. Операция объединения может занять определенное время в зависимости от объемов данных , в течение которого запустить виртуалку нельзя. Теперь рассмотрим более сложную ситуацию. В результате, у нас образуется новая ветвь снапшотов: А все очень просто: Как мы видим, своего AVHD у него нет. Поэтому удален будет предыдущий по времени AVHD1. Ну и теперь скажу несколько слов в заключение. Во-вторых, если виртуальная машина содержит онлайновые снапшоты — ее крайне не рекомендуется экспортировать и переносить на другой сервер. Дело в том, что онлайновый снапшот содержит состояние регистров процессора и содержимое памяти, и применение такого снапшота в другом аппаратном окружении может привести к краху гостевой ОС. В-третьих, как уже было сказано — снапшоты не рекомендуется использовать в производственной среде. Наверняка вам известно, что для продакшна рекомендуется использовать виртуальные диски фиксированного размера — для того, чтобы избавиться от фрагментации VHD-файла. Создавая же снапшоты, мы искусственно делим наш виртуальный диск на отдельные файлы — VHD и множество AVHD. На высоконагруженных системах это может привести к некоторому падению производительности. Кроме этого, при удалении снапшотов происходит операция объединения, которая тоже может сказаться на общей производительности системы, а к тому же может повысить время простоя при перезагрузках виртуальной машины. К примеру, если вы удалили один или несколько снапшотов на виртуальной машине, а потом потребовалось ее перезагрузить к примеру — при установке апдейтов , то загрузка ОС не начнется, пока не завершится полностью операция объединения. Поэтому снапшоты можно использовать перед вводом в продакшн, для экономии времени при установке ПО и начальной настройке. После этого все снапшоты нужно удалить, дождаться окончания объединения, и только затем вводить в продакшн. Еще один небольшой момент: По умолчанию и то и другое хранится на диске C:. Если для хранения VHD планируется использовать, к примеру, высокоскоростной RAID-массив — необходимо хранить на нем не только VHD, но и файлы виртуальных машин. Дело в том, что при создании снапшотов файлы AVHD будут храниться именно в том месте, которое было выбрано для хранения виртуальных машин. И может получиться так, что сам VHD будет храниться на отдельном дисковом массиве, а куча AVHD будет на диске С: На этом я закончу этот пост, и без того уже большой. Прошу прощения за некоторый сумбур, тема при кажущейся простоте немного нетривиальна для объяснения. Для лучшего понимания советую посмотреть скринкаст, с анимированной презентацией и демонстрацией: Надеюсь, кого-то моя статья заинтересовала, в любом случае — спасибо заранее. Системное администрирование 1,1k авторов , 2,2k публикаций. Настройка Linux 1,4k авторов , 2,7k публикаций. Серверное администрирование авторов , публикация. Виртуализация авторов , публикации. Децентрализованные сети авторов , публикации. Серверная оптимизация 87 авторов , публикаций. IT-инфраструктура авторов , 1,2k публикаций. Nginx авторов , публикаций. Сетевые технологии авторов , 1,1k публикаций. Как организовать защищённый доступ при помощи VPN 3,5k Добавить в закладки Александр Косивченко System32 карма. Виртуализация ЦОД с помощью Windows Server R2 и System Center R2. C, PetrWrap или PetyaCry? Обширный материал по функции, спасибо. Снэпшоты нельзя использовать на виртуализованном Exchange. Нельзя — в смысле, нельзя технически, или рекомендуется? Технических запретов я вроде не видел, да и не слышал. Конечно, слепок снимется, жестких ограничений нет, ведь снэпшоты, это не сервис уровня приложений application aware. От сюда прослеживаются две проблемы: В онлайновых снапшотах то есть снятых на запущенной виртуалке происходит дамп оперативки в файл — то же, что и при Save State. Так что кэш не потеряется. Хотя, разумеется, я с Вами соглашусь — снапшотить контроллеры доменов AD, Exchange и SQL-сервера — крайне не рекомендуется, именно поэтому в продакшн-среде снапшоты — unsupported solution. Насчет онлайновых да, согласен. Это да, особенно — если мы имеем цепочку из десятка-другого снапшотов, и, соответственно — разностных дисков — при высоких нагрузках на дисковую подсистему она просто просядет. С другой стороны, MS не рекомендует такие сервисы это СУБД, Exchange Server, а конкретно — роль Mailbox Server — виртуализировать вообще. Говорили люди на семинарах, так что пруфлинка не будет. Такие рекомендации вполне обоснованы — потому что дисковая система хуже всех поддается виртуализации, в отличие от процессоров и памяти, поэтому высоконагруженные сервисы лучше всего держать на выделенных серверах, особенно — когда критична именно дисковая подсистема. Ох, простите, немного занесло, забыл, что в Hyper-V это называется Pass-through диски. All Exchange server roles, except for the Unified Messaging server role, are supported in a virtualization environment. This is due to the real-time response requirements associated with voice communications with the Unified Messaging server role. Подумал, что я весь прогресс проспал. А еще можно делать снапшоты средствами самого NTFS При этом производительность никак не страдает. А вообще лучшим решением будет размещение например, по iSCSI на отдельной СХД данных и выполнение снапшотов средствами самой СХД. Не совсем верно, в случае создания снимков файловой системы у запущенной ОС в снимке должны корректно сохраняться открытые файлы, то есть средствами СХД сделать корректный снимок ФС нельзя. Будет снимок хранилища, но он не будет учитывать состояния открытых файлов, а это все равно, что в момент интенсивной работы дисков нажат RESET, эффект примерно тот же, эффект незакрытых файлов. Снимок средствами файловой системы более корректен, при этом файловые буфера сбрасываются, хотя файл и не закрывается, но шансов потерять данные меньше. При использовании SCOM и при установленых агентах в гостевых системах все происходит корректно. Даже MSSQL c Exchange корректно снапшотятся. Вы имели в виду SCDPM? SCOM ведь, если мне не изменяет память — осуществляет мониторинг, а SCDPM — бэкапит. Причем виртуальки можно бэкапить только бэта версией DPM Рабочая, но бэта, а вот средствами СХД бэкапить нельзя, DMP не СХД. Если я правильно понял докладчика на семинаре — Symantec BackupExec тоже поддерживает бэкап виртуалок Hyper-V R2 на лету. Поддерживает, с купленной за уе лицензией и установленным на Hyper-V агентом. Ну, DPM вроде тоже не бесплатен: К тому же цены — это немного выходит за рамки топика, ведь статья — сугубо техническая, а не маркетинговая. Опять же создание резерной копии такого рода инструментом это не создание снапшота файловой системы на СХД. Не надо путать божий дар с яичницей. Бэкапы, то есть то, что Вы предлагаете и снапшоты виртуальных машин — это немного разные вещи. Те снапшоты, о которых говорится в статье — это всего лишь save game на случай ошибки, чтобы не повторять сначала установку софта, и, возможно, ОС. В частности, это будет удобно для системных программистов, которые из-за бага в своей программе могут так угробить ОС на тестовой виртуалке, что придется переустанавливать ее с нуля, либо же — откатиться на снапшот. Кстати, снапшоты средствами ФС тоже могут повлиять на производительность — по той же причине, что и дифференциальные диски, ибо снапшоты средствами ОС — это те же дифференциальные диски, только не на уровне файлов, а на уровне самой ФС. Кроме этого, снапшот виртуальной машины позволяет так же сохранить и содержимое памяти, то есть позволит откатиться ровно к тому состоянию, которое было до снапшота. У VMware, кстати, та же проблема с удалением снапшотов. То есть при удалении снапшоты последовательно сливаются увеличиваясь в размерах порой в десятки раз, а потом, слившись, вливаются в actual state. Если при этом еще не забился полостью диск datastore: Снапшоты стораджа — гуд, но это не то же самое, что и снапшоты виртуалки, увы и ах. То есть есть фактически бэкапится только файловая система и все? Многие из этих реализаций не имеют описанных проблем и могут успешно применяться и в продакшне. Пример — реализация снапшотов в системах хранения NetApp FAS, где они являются одной из основ решения вообще. Тем не менее когда вы используете широкораспространенное в индустрии, и появившееся задолго до Hyper-V понятие, в применении к узкочастному случаю конкретной его реализации, то имеет смысл все же уточнять, что речь идет о проблемах конкретной реализации, а не о понятии вобще, чтобы не путать в головах менее подготовленных чем вы читателей. И по идее этого должно быть достаточно, чтобы даже самый неподготовленный читатель понял, что речь идет именно о Hyper-V, а не о СХД и бэкапах. Что, по-вашему, я еще должен был сделать? Нет, я нисколько не настаиваю, если вы принципиально против, это же ваша статья, но так, по-моему, будет яснее. Я совсем не против, более того — я даже приветствую конструктивную критику — ведь комментарии сделали тут именно для этого ; Просто я думал, что то, что в статье идет речь о Hyper-V — самоочевидно. Может раскроете тему в своей статье? В общем и целом — все отлично, и статья хорошая… Однако по моему горькому опыту, инфраструктурные статьи на Хабре практически не пользуются спросом, и с этим ничего нельзя поделать. Но, я думаю, что и таким статьям найдется место на Хабре ;. То есть когда кончается место при объединении, вы получаете зависший процесс объединения, и убитый VHD, в который прописалась только часть AVHD. А тут — четыре пока что моих скринкаста на тему Hyper-V: При откате на снапшот необходимо учитывать несколько моментов: Если виртуальная машина является членом домена, то с момента создания снапшота могли устареть тикеты Kerberos и пароль учётной записи компьютера. Поэтому в лабораторных условиях можно отключать смену паролей учётных записей. Нельзя откатывать назад контроллеры домена! Вообще с контроллерами домена много тонких моментов в виртуальной среде, поэтому рекомендую почитать support. Кстати да, с AD там очень много заморочек. Насчет устаревания тикетов — это правда, именно поэтому снапшоты не рассчитаны на длительное хранение — и в частности поэтому их не рекомендуется использовать вместо бэкапов. Да, контроллеры домена нельзя откатывать, более того — их не рекомендуется даже переводить в Save State, только Shutdown. Метки лучше разделять запятой. Сейчас Вчера Неделя ПЛК от производителей Овен, Segnetics и Schneider Electric для HVAC 3,2k Интересные публикации Хабрахабр Geektimes. Хорошее начало — половина дела GT. Запуск Java классов и JAR-ов не по учебнику. Анализируя Ethereum, Биткоин и более других криптовалют с помощью PostgreSQL GT. Критическая уязвимость механизма аутентификации BIND позволяет похищать и изменять DNS-записи серверов. Разделы Публикации Хабы Компании Пользователи Песочница. Информация О сайте Правила Помощь Соглашение Конфиденциальность. Услуги Реклама Тарифы Контент Семинары.


Картинка и тогда я решила стать доброй
Расписание врачей в детской поликлинике люберцы
Достоевский бедные люди проблемы
Лижет пизду крупно видео
Тест люшерадлячего нужен
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment