<
  • Главная
Статьи

Використання віртуальних серверів з Windows Server 2008

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

Але від нових віянь нікуди не дітися, і все частіше компанії при проектуванні нової або оновленні існуючої інфраструктури на стандартній платформі х86 згадують про технології віртуалізації, розуміючи, що в звичайних умовах фізичний сервер просто не використовується на повну потужність. До недавнього часу пакетом, який розглядався в першу чергу, був VMware ESX Server. Це платформа, що дозволяє створювати віртуальні системи «на голому залізі», а значить, підвищувати продуктивність роботи системи та її стійкість. Але і вартість даного рішення була іноді перевищує номінальну вартість самого сервера, на якому планувалося розгорнути віртуальні системи.

Нещодавно компанія Microsoft анонсувала вихід нової серверної операційної системи Windows Server 2008, в складі якої будуть використовуватися вбудовані засоби віртуалізації з використанням технологій Intel VT і AMD-V. Дані кошти цілком можуть скласти конкуренцію VMware ESX Server, і вони значно перевершують існуючий продукт Microsoft Virtual Server 2005, але давайте про все по порядку.

трохи теорії

Що собою являють технології віртуалізації в різному виконанні? Найчастіше використовуваного середовища виглядає наступним чином (рис. 1).

1)

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

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

Більш продуктивною архітектурою віртуалізації є підхід, де установка віртуальних систем відбувається без «прошарку» операційної системи (рис. 2).

2)

У цьому випадку між апаратної складової і гостьовими операційними системами існує тільки один шар програмного забезпечення - менеджер віртуальних машин. Інший варіант даного підходу передбачає використання гипервизора, завдання якого - управління операційними середовищами або розділами (partitions). Кожен розділ - це набір з обчислювальних ресурсів системи: певний відсоток використання процесора, оперативної пам'яті, простору на жорсткому диску, пристрої введення / виводу. Завдання гипервизора - це розподіл наявних ресурсів між розділами і контроль над їх використанням операційними середовищами.

У свою чергу, використання другого методу віртуалізації також можна розбити на два варіанти (рис. 3a, 3б).

У першому варіанті до складу гипервизора входить набір драйверів для апаратного забезпечення, і при зверненні будь-який з гостьових операційних систем до апаратного рівню всі запити проходять крізь стек драйверів гипервизора.

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

Другий варіант позбавлений цього недоліку.

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

Останній варіант якраз і реалізований в новій технології віртуалізації в Windows Server 2008. Побудова віртуальних середовищ показано на рис. 4.

4

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

Ключові відмінності технологій, реалізованих в Virtual Server 2005 R2 і Windows Server 2008 Virtualization, перераховані в таблиці.

Судячи з даних таблиці, віртуалізація в Windows Server 2008 має більш широку функціональність у порівнянні з Virtual Server, а й деякі обмеження при використанні, про які слід згадати. По-перше, для базової операційної системи передбачено використання тільки 64-розрядної платформи, так як це необхідно для підтримки 64-розрядних гостьових операційних систем. По-друге, для роботи гипервизора потрібні процесори з апаратною підтримкою віртуалізації.

Більшість сучасних серверів вже поставляється з процесорами, які підтримують технологію віртуалізації (наприклад, для процесорів Intel Xeon це процесори сімейства 51xx, 53xx і 54хх, для процесорів AMD - чотириядерні Opteron).

Можливості Hyper-V

Що собою являє нова технологія Hyper-V, яку пропонує компанія Microsoft, і які функції стають доступні системним адміністраторам?

Ключові можливості, що надаються новою технологією, такі:

  • 64-розрядна архітектура гипервизора забезпечує підтримку широкого кола апаратних пристроїв і більш високий (у порівнянні з Virtual Server) рівень захисту і продуктивності роботи системи (в цьому ми спробуємо переконатися пізніше);

  • підтримка широкого кола операційних систем в якості гостьових, включаючи 32- і 64-розрядні серверні платформи, такі як Windows, Linux і ін. Слід зазначити, що Linux-платформи повинні забезпечувати підтримку Xen;

  • підтримка мультипроцесорної обробки SMP (Symmetric Multiprocessor) у віртуальному середовищі, що дозволяє додавати в віртуальне середовище до восьми процесорів (фактично мова йде про вісім процесорних ядрах). Правда, можливість використання мультипроцессорной конфігурації доступна тільки при запуску в якості гостьової системи Windows Server 2008. При використанні Windows Server 2003 доведеться застосовувати однопроцесорних конфігурацію;

  • балансування навантаження між віртуальними системами. Hyper-V включає в себе функції віртуального комутатора, що дозволяє скористатися функціями компонента балансування навантаження Network Load Balancing (NLB);

  • підтримка міграції віртуальної системи з однієї фізичної платформи на іншу, що дозволяє побудувати кластерну середу, яка забезпечує перехід з одного сервера на інший в разі збою першого або міграцію на більш продуктивний сервер;

  • створення знімків віртуальної системи. Дана особливість дуже корисна при використанні сервера для тестування додатків і служб, так як в разі проблем з роботою після установки нової програми адміністратор зможе відновити попередній стан сервера, мінімізуючи час, який знадобився б для видалення програми або повного переустановлення системи;

  • гнучке управління ресурсами віртуального середовища. Адміністратор при необхідності може виділяти додаткові ресурси для роботи системи без зупинки останньої;

  • інтеграція із засобами управління System Center для моніторингу та управління віртуальними середовищами. Слід зазначити, що Hyper-V надає власні лічильники продуктивності для відображення стану віртуального середовища, точно так само як інтерфейси WMI і API, що надає широкі можливості для розробки власних сценаріїв управління віртуальним середовищем;

  • підтримка віртуальних мереж для складної комплексної конфігурації.

Управління тільки на рівні одиничного сервера дозволяє управляти параметрами віртуального сервера, створювати і відновлювати знімки станів системи (що ми розглянемо далі). Більш цікава комбінація можлива при інтеграції з System Center Operation Manager для відстеження та управління віртуальними середовищами на основі аналізу станів системи. Наприклад, при завантаженні однієї з віртуальних систем, що забезпечує доступ до Web-серверу, вище зазначеного порога, можливий запуск додаткової віртуальної системи для роботи на NLB-кластері спільно з поточної системою. Таким чином, сценарії можуть бути найрізноманітніші, і це вже тема для окремої статті.

Установка базової операційної системи

Щоб спробувати працювати з Hyper-V, скористаємося Windows Server 2008 Enterprise Edition RC1 і системою з процесором, який підтримує технологію віртуалізації. При завантаженні вибираємо варіант повної установки, хоча на промислових серверах такої необхідності немає - можна задіяти режим Windows Core. Режим Windows Core оптимально підходить для роботи з віртуальними серверами, так як ми не плануємо здійснювати установку і роботу служб в базовій операційній системі, відводячи їй лише роль «керуючого» гостьовими віртуальними системами (більш того, не рекомендується установка додаткових ролей на сервері зі встановленою роллю Hyper-V).

Описувати процес установки я тут не буду, зазначу лише, що використовується вже знайомий інтерфейс, який застосовується при установці Windows Vista, а це значить - мінімум зусиль з боку адміністратора по установці і введення тільки основних параметрів (таких, наприклад, як ключ продукту) і розбивка жорсткого диска, яка проводиться в графічному інтерфейсі. Після цього можна трохи відпочити і випити чашечку кави, поки файли системи копіюються з DVD на жорсткий диск.

По завершенні установки запускаємо додаток Server Manager і в розділі Roles Summary вибираємо пункт Add Roles. У майстра установки ролей необхідно вибрати Hyper-V. Далі, проходячи по етапах майстра установки ролей, вводимо необхідні параметри для запуску Hyper-V. По завершенні необхідно перезавантажити систему, а потім зареєструватися з обліковим записом користувача, під якою була виконана установка ролі. Для управління віртуальними середовищами використовується оснащення MMC Hyper-V Manager.

Якщо спочатку вибрати режим установки Windows Core, то установка ролі проводиться за допомогою команди

Start / w ocsetup Microsoft-Hyper-V

Управління ж віртуальним середовищем потрібно буде здійснювати з консолі управління, встановленої на іншому сервері.

Установка гостьовий операційної системи

Додати нову гостьову систему допомагає майстер, і, пройшовши через усі етапи, ви створите файл для віртуального жорсткого диска і вкажете всі параметри конфігурації системи (екран 1). Правда, є нюанс - за допомогою майстра можна відразу вказати кількість віртуальних процесорів, що виділяються для системи, - процесорних ядер (я проводив тести на однопроцесорному двоядерному комп'ютері). І неможливо вказати, що замість використання файлу * .vhd слід використовувати розділ жорсткого диска, що корисно для прискорення роботи дискової системи. Але ці параметри можна скорегувати пізніше, відразу після створення віртуальної системи.

Але ці параметри можна скорегувати пізніше, відразу після створення віртуальної системи

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

Після його включення браузера і завантажити цю системи при запуску віртуального сервера з'явилося вікно Hyper-V, і система продовжила установку (екран 2)

Продуктивність роботи фізичної і віртуальної системи

Описаний вище метод реалізації віртуалізації в Windows Server 2008 має переваги в продуктивності в порівнянні з системою, яка працює над прошарком у вигляді операційної системи під управлінням менеджера віртуальних машин. Але наскільки помітно впаде продуктивність при роботі між операційною системою без використання Hyper-V і гостьовою операційною системою, що працює з використанням технології Hyper-V?

Щоб це з'ясувати, я вирішив використовувати утиліту PCMark05 версії 1.2.0, яка підтримує роботу в системі Windows Vista і дозволяє проводити синтетичні тести. Мене цікавили три параметра: CPU Benchmark, Memory Benchmark і HDD Benchmark. Тести проводилися в такій послідовності:

  1. Встановлювався Windows Server 2008 RC1 Enterprise Edition і проводилися тести.

  2. Додавалася роль Hyper-V, потім в якості віртуального сервера - Windows Server 2008 RC1 Enterprise Edition і проводилися тести.

  3. Віддалялася роль Hyper-V, встановлювався Virtual Server 2005 R2 SP1, в ньому в якості віртуального сервера - Windows Server 2008 RC1 Enterprise Edition і проводилися тести.

Звичайно ж, різниця в функціональності продуктів Windows Server Virtualization і Microsoft Virtual Server 2005 R2 SP1 не дозволяє говорити про об'єктивно рівних умовах тестування. Windows Server Virtualization вміє працювати з 64-розрядними гостьовими системами, і можна вказати, скільки віртуальних процесорів виділити для розділів, а Virtual Server 2005 R2 SP1 не має такої можливості. Але все ж заради цікавості все три конфігурації були випробувані (для третьої конфігурації була взята 32-розрядної версії Windows Server 2008 RC1 Enterprise Edition). Результати отриманих тестів відображені на графіках (рис. 5).

Що стосується показників тестів процесора і пам'яті, то в першому і другому випадку помітно незначне падіння загальної продуктивності. У порівнянні з результатами роботи в середовищі Virtual Server 2005, використання гипервизора дає істотні переваги. Що ж стосується низьких показників роботи з жорстким диском, це результат того, що віртуальний сервер був встановлений з використанням не виділеного розділу, а файлу віртуального жорсткого диска. При практичному використанні на промислових серверах даний показник також буде наближатися до «еталонним» показниками роботи дискової системи, як при установці на окремий сервер без використання механізмів віртуалізації.

Знімки віртуальних систем

Одна з можливостей, яка включена в Hyper-V, - це використання служби знімків VSS для створення образів стану системи. Використання знімків можливо з будь-якої віртуальним середовищем, навіть в процесі установки системи, так як робота знімків реалізована на шарі віртуалізації. Принцип роботи знімків полягає в наступному:

  • при першому створенні знімка формується файл AVHD, в який починають зберігатися зміни, вироблені в дискової підсистеми. При цьому в оригінальний VHD-файл зміни не вносяться;

  • при повторному створенні знімка створюється наступний файл AVHD, в який починають записуватися вносяться зміни, а попередній файл AVHD не змінюється.

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

Створення першого і наступних знімків займає не так багато часу, так як виконується не копіювання жорсткого диска системи (створення копії), а тільки «перемикання» віртуального диска на допоміжний, диференційний файл віртуального диска, в який і починає вироблятися запис.

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

При повторному знятті знімка з віртуальної системи в консолі Відображається дерево знімків, Пожалуйста вказує на залежність іншого знімка від початкових. Також створюється пара файлів BIN / VSV стану системи і файл AVHD.

Для відновлення попереднього стану системи передбачено використання пункту Revert для повернення на попередній стан системи і пункту Apply на обраному знімку, що дозволяє повернутися до будь-якого стану системи. При відновленні системи в один зі станів віртуальна система починає запис в файл AVHD, який відповідає відновленому стану системи. А при повторному створенні знімка - в новий файл стану дискової системи, який в якості базового використовує вже відновлене стан.

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

І останнє - при необхідності можливе видалення не тільки одиничного стану системи, але і всього дерева станів, при цьому видаляються файли станів і віртуальних дисків.

Віртуалізацію - в життя

Запропонований Windows Server 2008 механізм віртуалізації Hyper-V, безсумнівно, буде затребуваний при побудові ІТ-інфраструктур підприємств. Ряд переваг в порівнянні з Virtual Server 2005 R2 SP1 дозволить адміністратору більш гнучко управляти обчислювальними ресурсами сервера, забезпечуючи необхідний рівень продуктивності служб. Додаткові функції, такі як «гаряче» додавання пам'яті, процесорної потужності, дискової і мережевий підсистем, дозволять уникнути необхідності перезавантаження віртуального середовища, а помірні обчислювальні витрати на роботу гипервизора дозволяють говорити про високий коефіцієнт корисної дії обчислювальних потужностей сервера.

Єдине, що поки не реалізовано в Hyper-V, - це можливість автоматизації процесу перерозподілу обчислювальних потужностей при настанні певних умов в роботі операційного середовища (постійна високе завантаження віртуального процесора, перевитрата оперативної пам'яті і т. Д.). Можливо, це буде реалізовано в наступних версіях Hyper-V, а поки будемо чекати фінальної версії середовища віртуалізації.

Олексій Приймак ( [email protected] ) - провідний консультант по інфраструктурним рішенням в українській компанії-інтеграторі «БМС Консалтинг». Має сертифікати MCSE, MCT

Таблиця. Відмінності Virtual Server 2005 R2 і Windows Server 2008 Virtualization

Але наскільки помітно впаде продуктивність при роботі між операційною системою без використання Hyper-V і гостьовою операційною системою, що працює з використанням технології Hyper-V?


Новости
  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью