Microsoft hyper-v і пристрої зберігання даних

Де віртуальні машини можуть зберігати дані?

Диски віртуальних машин можуть зберігатися як на локальних жорстких дисках сервера, так і на зовнішніх СГД.

Microsoft hyper-v і пристрої зберігання даних

На малюнку вище, зображена схема підключення DAS (Direct Attached Storage). На диску Disk2, змонтованому в хостовой системі як диск Y. створений файл VM1.vhd, який, в свою чергу, змонтований у віртуальній машині і використовується в ній як диск C. Disk3 підключається до віртуальної машини безпосередньо, і в гостьовій ОС з ним можна працювати як з диском D. у хостовой же ОС Disk3 знаходиться в стані Offline, і зайти на нього не вийде.

Подивимося тепер, які варіанти є при використанні SAN (Storage Area Network).

Microsoft hyper-v і пристрої зберігання даних

Самий «класичний» варіант - LUN 1 презентується сервера, монтується в хостовой ОС, наприклад, як диск Z. на ньому вже створюється VHD, який, в свою чергу, використовується віртуальною машиною. Приблизно як в казці - «голка в яйці, яйце в качці, качка в зайці, і т.д.». Другий варіант - LUN 2 презентується сервера, але в хостовой ОС він не монтується, а підключається як pass-through-диск до віртуальної машини. Крім цього, якщо SAN побудована на базі протоколу iSCSI - LUN може бути змонтований всередині віртуальної машини за допомогою програмного iSCSI-ініціатора, запущеного всередині гостьової ОС. На жаль, FibreChannel-LUN'и приєднати подібним чином не вийде - в Hyper-V немає віртуального FC-HBA.

Отже, почнемо з того, що віртуальна машина, точно так же, як і справжній комп'ютер, має свої віртуальні жорсткі диски і віртуальні контролери жорстких дисків. Контролери ці бувають двох типів: IDE і SCSI. У чому ж різниця між ними?

По-перше, на відміну від IDE, SCSI-контролер є повністю синтетичним пристроєм, і тому для своєї роботи вимагає установки компонент інтеграції. Тому використовувати його можна лише в тих гостьових ОС, які їх підтримують (тільки MS Windows, а так само RHEL і SLES). З цієї ж причини гостьова операційна система може завантажуватися тільки з IDE-пристрої.

Основною відмінністю між віртуальними IDE і SCSI-контролерами є кількість пристроїв, здатних через цей контролер працювати. IDE-контролерів у віртуальній машині може бути два, і до кожного може бути підключено максимум по два віртуальних диска. SCSI-контролерів може бути чотири, і до кожного контролера можна підключити до 64 віртуальних дисків, тобто всього віртуальна машина може мати 260 віртуальних дисків (4 IDE + 4 * 64 SCSI). Треба також пам'ятати, що хоча реальні SCSI-диски працюють швидше, ніж IDE - це не зовсім вірно для віртуального середовища. У середовищі Hyper-V R2 при встановлених компонентах інтеграції віртуальні IDE- і SCSI-диски працюють однаково швидко, і продуктивність визначається тільки фізичної дисковою підсистемою.

Подивимося тепер, якими можуть бути самі жорсткі диски у віртуальних машин. Почнемо з того, що Hyper-V підтримує як віртуальні жорсткі диски, що подаються у вигляді файлів .VHD, так і пряме підключення дисків до віртуальної машини (так звані pass-through-диски).

Формат VHD в даний час повністю відкритий, і існує безліч стороннього ПО (наприклад, від компанії Paragon), що дозволяє працювати з VHD, а так само диски VHD підтримуються в деяких продуктах Citrix.

Віртуальні диски бувають трьох типів: фіксованого розміру, динамічні і диференціальні.

Віртуальні диски фіксованого розміру представляють собою файл, який містить набір блоків, що представляється віртуальній машині в якості диска. Розмір віртуального диска задається при його створенні, і на жорсткому диску сервера створюється файл VHD відповідного розміру. Процес створення може зайняти деякий час, в залежності від розміру диска. Використання дисків фіксованого розміру краще, ніж динамічних з двох причин. По-перше, оскільки динамічний диск розширюється поступово, VHD-файл може фрагментуватися, що вплине на продуктивність. VHD фіксованого розміру відразу ж займає все необхідне йому простір, і тому не фрагментируется в процесі роботи. По-друге, може скластися ситуація, що місце на фізичному диску закінчиться, і динамічним дискам буде нікуди «рости», і це може привести до збоїв в роботі віртуальних машин.

Динамічні віртуальні диски являють собою VHD-файл, який збільшується в розмірі в міру записи на нього. Динамічний диск в процесі роботи може бути стиснутий за рахунок видалення невикористовуваних блоків, які залишаються при видаленні даних з VHD. Використання динамічних дисків дозволяє найбільш раціонально використовувати дисковий простір, але використовувати їх в production-середовищі не рекомендується через можливе падіння продуктивності.

Максимальний розмір віртуальних дисків, як фіксованих, так і динамічних, дорівнює 2 терабайтам (або 2040 гігабайтам).

Pass-through-диски - це підключення фізичних дисків безпосередньо до віртуальної машини без створення VHD-файлів. Це можуть бути як розділи на локальних жорстких дисках, так і презентований сервера LUN від зовнішньої системи зберігання (SAN). Для хостовой же ОС диск, після монтування до віртуальної машини, переходить в стан «Offline», тобто прямий доступ до диска припиняється. Як pass-through-дисків не можуть використовуватися примонтировать VHD, а так само вони не підтримують снапшоти на рівні віртуальних машин.

Розмір pass-through-дисків не обмежений 2 терабайт.

Схожі статті