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

Особливості мережевої взаємодії в Microsoft Hyper-V

Заключна стаття з серії публікацій про Microsoft Hyper-V. Йтиметься про те, як віртуальні машини в середовищі Hyper-V працюють з мережевими інтерфейсами. Попередні публікації:

  1. Архітектура Microsoft Hyper-V
  2. Microsoft Hyper-V та пристрої зберігання даних

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

Мережеві адаптери

Як можна побачити в Hyper-V Manager, є два типи віртуальних мережевих адаптерів: Network Adapter і Legacy Network Adapter. Відрізняються між собою вони тим, що перший з них є синтетичним пристроєм, а другий - емульованого. Чим відрізняються синтетичні пристрої від емульованого - можна почитати в першій статті, « Архітектура Hyper-V ».

Використання синтетичних пристроїв завжди краще, і саме тому при створенні нової віртуальної машини за замовчуванням додається саме Network Adapter. Використовувати Legacy Network Adapter рекомендується тільки в двох випадках:

  • Коли гостьова операційна система не підтримує установку компонент інтеграції;
  • Коли необхідний доступ до мережі до завантаження ОС, наприклад - завантаження по PXE для установки ОС з сервера WDS.

Для цього при створенні віртуальної машини необхідно прибрати галочку «Start virtual machine automatically», а потім, зайшовши в конфігурацію віртуальної машини, вручну видалити Network Adapter і додати Legacy Network Adapter.

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

Віртуальні

Зрозуміло, якщо є мережеві адаптери - вони повинні кудись підключатися. І для цього в Hyper-V існують віртуальні мережі (Virtual Networks), які по суті представляють собою звичайні віртуальні комутатори. До кожного віртуального комутатора можуть приєднуватися як мережеві інтерфейси віртуальних машин, так і фізичні мережеві інтерфейси сервера. Віртуальні мережі бувають трьох типів, і щоб простіше було їх зрозуміти - поглянемо на схему.

Віртуальні мережі бувають трьох типів, і щоб простіше було їх зрозуміти - поглянемо на схему

У сервера, зображеного на малюнку вище, є два мережевих інтерфейсу. Коли хостової ОС тільки що була встановлена, і інтерфейси сконфігуровані - до кожного з них прівзяивается протокол TCP / IP, деякі інші протоколи і відповідно - призначаються мережеві настройки (IP-адреса, маска підмережі, адреси шлюзів і DNS) - статично або динамічно.

Віртуальні мережі (тобто віртуальні комутатори) бувають трьох типів: External, Internal і Private.

External - віртуальна мережа, що має вихід «у зовнішній світ». При створенні мережі типу External необхідно вказати мережевий інтерфейс, через який буде здійснюватися вихід назовні (Фізичний адаптер 2). При цьому фізичний інтерфейс втрачає всі мережеві настройки, і створюється віртуальний адаптер в хостовой ОС (Віртуальний адаптер 1), до якого прив'язуються всі необхідні протоколи і настройки. Фізичний же інтерфейс залишається всього з одним протоколом: Virtual Network Switching Protocol. Крім цього, в Windows Server 2008 R2 з'явилася можливість створювати мережі типу External, але при цьому все одно ізолювати їх від хостовой ОС. Робиться це зняттям галочки «Allow management operating system to share this network adapter»:

Робиться це зняттям галочки «Allow management operating system to share this network adapter»:

Увага: При створенні віртуальної мережі типу External відбувається короткочасний розрив мережевого з'єднання, і всі налаштування переносяться на новий, віртуальний адаптер. Про це необхідно пам'ятати по-перше, якщо настройка здійснюється віддалено - з'єднання може перерватися, і по-друге - можливо доведеться заново налаштовувати Windows Firewall, щоб прив'язати правила до нового віртуального інтерфейсу.

Internal - внутрішня віртуальна мережа, до якої можуть підключатися тільки віртуальні інтерфейси - віртуальних машин і хостовой ОС. До фізичного інтерфейсу мережу типу Internal не прив'язуватися, і, відповідно, виходу «зовні» не має.

Private - те ж саме, що і Internal, за винятком того, що до такої мережі можуть підключатися тільки віртуальні машини. Мережа типу Private не має доступу ні до «зовнішнього світу», ні до хостовой ОС.

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

Робота з VLAN

Hyper-V підтримує роботу з VLAN (IEEE 802.1Q). Для цього у властивостях віртуальних мережевих інтерфейсів є галочка «Enable VLAN Identification», після активації якої можна ввести VLAN ID. Попередньо, зрозуміло, необхідно налаштувати комутатори, щоб трафік тегованих відповідними ID, і, зрозуміло, встановити в хостовой ОС драйвери мережного адаптера з підтримкою необхідних функцій.

Попередньо, зрозуміло, необхідно налаштувати комутатори, щоб трафік тегованих відповідними ID, і, зрозуміло, встановити в хостовой ОС драйвери мережного адаптера з підтримкою необхідних функцій

Більш докладно про налаштування віртуальних машин для роботи з VLAN можна почитати в статті Дмитра Макарова .

VMQ

Варто згадати про нововведення, яке з'явилося в Windows Server 2008 R2 - підтримки віртуальних черг, VMQ. Підтримка VMQ дозволяє перенести більшу частину витрат на обробку мережевих пакетів, адресованих віртуальних машин з хостовой ОС на плечі процесора мережевого адаптера. Зрозуміло, за умови, що мережевий адаптер це підтримує, і в гостьових ОС встановлені компоненти інтеграції. Якщо не використовується VMQ, то обробка мережевих пакетів відбувається наступним чином:

Якщо не використовується VMQ, то обробка мережевих пакетів відбувається наступним чином:

Розподілом трафіку по віртуальним машинам і фільтрацією по тегам VLAN, в цьому випадку, займається віртуальний комутатор, який діє в просторі батьківської ОС. При великій кількості віртуальних машин і при великих обсягах трафіку це може привести до деякого зниження продуктивності, так як у процесора сервера є й інші завдання, крім обробки мережевих пакетів. Використання VMQ дозволяє перекласти обробку пакетів на плечі процесора мережевого адаптера:

Використання VMQ дозволяє перекласти обробку пакетів на плечі процесора мережевого адаптера:

Мережевий адаптер, що підтримує VMQ, здатний самостійно здійснювати необхідну обробку мережевих пакетів, а потім записати дані безпосередньо в область пам'яті відповідної віртуальної машини. Передача ж даних, що з VMQ, що без неї - йде як і зазвичай: Віртуальний мережевий адаптер - VMBus - Віртуальний комутатор - Фізичний мережевий адаптер.

Автор: Олександр Косівченко
Оригінал статті: http://habrahabr.ru/blogs/virtualization/97085/



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

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

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

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

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

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

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

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

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

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