Сервісний центр VPSGroup ремонт комп'ютерної техніки, заправка картриджів, ремонт оргтехніки, Київ, Виставковий центр, Васильківська, 55

Різницеві віртуальні диски в Hyper-V.

Різницевий, або диференційний (англ. Differencing) віртуальний жорсткий диск (VHD) є одним з трьох типів віртуальних дисків, які використовуються в Hyper-V. Різницевий диск ще іноді називають «дочірнім», так як він не є самостійним диском і в процесі роботи повністю залежить від «батьківського» диска.Різницевий VHD містить не повну копію даних, а тільки зміни пов'язаного з ним батьківського VHD. Батьківський диск може бути будь-яким з з трьох типів VHD, в тому числі і іншим різницевим. Можна навіть створювати ланцюжок дисків, об'єднавши кілька різницевих VHD.

Принцип роботи різницевих дисків полягає в наступному: батьківський диск містить незмінний набір даних, а всі зміни записуються на різницевий диск.На цьому принципі заснована система створення моментальних знімків - снапшотов (або Чекпойнт в VMM). При створенні снапшотов якраз створюється різницевий диск, в який і продовжують писатися всі зміни віртуальної машини, а основний диск стає батьківським і вже не змінюється.При створенні наступного снапшотов створюється ще один різницевий диск, а попередній стає по відношенню до нього батьківським. Називається ця конструкція деревом снапшотов.



Зберігаються снапшоти у вигляді файлів з розширенням .AVHD, які як раз і є різницевими VHD.Для прикладу, віртуальна машина test-pc-01 має основний VHD диск і два різницевих AVHD, з яких перший є батьківським для другого.



Різницеві диски можна об'єднувати. Для цього достатньо натиснути правою клавішею на снапшотов і вибрати пункт Delete Snapshot (видалити).При цьому снапшот буде прибраний зі списку, всі зміни будуть перенесені в батьківський диск (операція Merging), а різницевий AVHD видалений.



до речі, при видаленні снапшотов в Windows Server 2008 є один нюанс. Якщо в даний момент віртуальна машина запущена, то AVHD, пов'язаний з цим снапшотов залишається, і запис в нього триває.Об'єднання відбудеться тільки тоді, коли віртуальна машина буде зупинена. Залежно від обсягів даних операція об'єднання може зайняти певний час, протягом якого запустити виртуалку не можна. У Server 2012 цю проблему було вирішено, і знімки можна видаляти при працюючій віртуальній машині.

Область застосування різницевих дисків не обмежується одними снапшотов. При бажанні різницеві VHD можна використовувати і при розгортанні нових віртуальних машин.

Наприклад, у нас є шаблон віртуальної машини - VHD з встановленою на ньому і підготовлених до переносу операційною системою (процес створення шаблону ВМ описаний в попередній статті) .Використовуємо його як батьківський диск. Процес цей виглядає наступним чином:

Створюємо нову ВМ без жорсткого диска - пункт «Attach a virtual hard disc later»



Йдемо в властивості машини і вибираємо контролер жорстких дисків. Можна використовувати як IDE, так і SCSI контролер, особливої ​​різниці немає.



Тепер до вибраного контролера необхідно підключити віртуальний жорсткий диск. Для підключення йдемо в властивості контролера і тиснемо кнопку «New», запускаючи майстер створення VHD.



із запропонованих майстром типів дисків вибираємо різницевий.



Вказуємо ім'я і місце розташування разностного диска.



Потім вказуємо розташування батьківського диска, яким є створений нами шаблон ВМ.



Дивимося сумарну інформацію і підтверджуємо створення нового диска кнопкою «Finish».



Тепер у властивостях ВМ буде вказаний як основного різницевий диск.



Якщо подивитися властивості диска кнопкою «Inspect», в них вказано не тільки його тип, але і розташування батьківського диска.



Таким чином можна створити багато однотипних віртуалок, використовуючи всього один батьківський диск.При цьому ми заощадимо не тільки час на розгортання, а й дисковий простір. Наприклад, одна установка Windows Server 2008 R2 займає приблизно 10Гб. Розгорнувши 10 віртуалок з одним батьківським диском ми збережемо 90 Гб місця на диску.
Однак подібне рішення обмежена можливостями дискової підсистеми, адже всі 10 машин будуть одночасно звертатися до одного диску, що негативно позначиться на його продуктивності.Крім того, у всіх ВМ з'являється єдина точка відмови - жорсткий диск, тобто зменшується надійність.

Як і у випадку зі снапшотов, з різницевими дисками можна провести процедуру об'єднання. Для цього треба зупинити віртуальну машину, зайти в її властивості і на вкладці жорсткого диска натиснути на кнопку «Edit» (редагування).У вікні вибираємо пункт «Merge» (об'єднання).



Можна не тільки об'єднати різницевий диск з батьківським, а й створити окремий новий диск з усіма змінами. Дуже корисна можливість в разі, якщо батьківський диск використовується декількома віртуалкою.Можна навіть вибрати тип нового диска.



І ще одне правило по роботі з різницевими дисками: чи не слід змінювати батьківський диск разностного віртуального жорсткого диска. Якщо змінити батьківський віртуальний жорсткий диск або замінити його іншим віртуальним жорстким диском (навіть з тим же ім'ям файлу), структура блоків між батьківським диском і різницевим віртуальним жорстким диском буде порушена, і різницевий віртуальний жорсткий диск буде пошкоджений..