Глава 4. Налаштування мережі

  1. Налаштування основної мережі
  2. приготування
  3. Як це зробити...
  4. Є дещо ще ...
  5. Налаштування моста
  6. приготування
  7. Як це зробити...
  8. Як це працює...
  9. Є дещо ще ...
  10. Налаштування VLAN
  11. приготування
  12. Як це зробити...
  13. Як це працює...
  14. Налаштування мережевого зв'язування
  15. приготування
  16. Як це зробити...
  17. Є дещо ще ...
  18. Налаштування мережевої трансляції адрес
  19. Приготування
  20. Як це зробити...
  21. Як це працює...
  22. Налаштування Infiniband
  23. Приготування
  24. Як це зробити...
  25. Як це працює...
  26. Налаштування мережевого інтерфейсу віртуальної машини
  27. Приготування
  28. Як це зробити...
  29. Налаштування високої доступності
  30. Приготування
  31. Як це зробити...
  32. Є дещо ще ...

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

Налаштування основної мережі

.

приготування

В даному рецепті ми збираємося розглянути налаштування мережевої середовища Proxmox. Наступні рецепти в цьому розділі охоплять різні компоненти мережного середовища.

Як це зробити...

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

Налаштування, що застосовуються через графічний інтерфейс, записуються в файл мережевих налаштувань /etc/network/interfaces.new. Після перезавантаження вузла нові настройки переносяться на постійне місце в / etc / network / interfaces. Якщо перезавантаження вузла недоступна прямим способом, настройка повинна виконуватися через інтерфейс командного рядка шляхом безпосереднього зміни / etc / network / interfaces.

Ось кроки для настройки мережі за допомогою графічного інтерфейсу Proxmox:

  1. Для зміни мережевих налаштувань в графічному інтерфейсі, зареєструйтесь як root в GUI Proxmox.

  2. Натисніть на вузол, щоб побачити меню з закладками Network, як показано на наступному екранному знімку:

  3. Щоб створити новий мережевий інтерфейс, клікніть на Create для відображення спадаючого меню, як показано на наступному скріншоті:

    зауваження зауваження

    Відзначимо, що в графічному інтерфейсі Proxmox ми можемо створювати тільки міст і підключати інтерфейси. Будь-які фізичні інтерфейси, встановлені в нашому хості можуть тільки налаштовуватися, але не створюватися.

    Коли зміна виконано в графічному інтерфейсі, виникне Pending changes (відкладені зміни) до початку перезавантаження, як показано на наступному скріншоті:

  4. Для повернення змін до перезавантаження просто натисніть на Revert changes. Це скасує зміни в /etc/network/interfaces.new.

Наступні кроки необхідні в разі налаштування мережі через інтерфейс командного рядка Proxmox:

  1. Увійдіть Вузли Proxmox із застосуванням програми SSH, подібної PuTTY.

  2. Відкрийте за допомогою редактора / etc / network / interfaces.

  3. Внесіть необхідні зміни в налаштування. Наприклад, якщо ми хочемо налаштувати другий мережевий інтерфейс в нашому вузлі зі статичним IP, ми зробимо такі зміни:

    # Nano / etc / network / interfaces auto eth2 iface eth2 inet static address 192.168.1.1 netmask 255.255.255.0 gateway 192.168.1.254 bridge_ports eth2 bridge_stp off bridge_fd 0 #ifup eth2

  4. Збережемо зміни і покинемо редактор.

  5. Наведемо новий інтерфейс в дію виконавши наступну команду:

    #ifup eth2

Порада

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

#ifdown eth2

Є дещо ще ...

У Proxmox VE 3.4 фізичний інтерфейс не може налаштовуватися безпосередньо для певної віртуальної машини. Всі віртуальні машини повинні налаштовуватися через міст або мережевий зв'язок (bond). Це відноситься як до віртуальних машин, так і до контейнерів OpenVZ {Прим. пер .: Proxmox VE 4.x: LXC}.

Налаштування моста

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

приготування

Міст є віртуальною реалізацією фізичного мережевого комутатора. Віртуальні машини можуть приєднуватися до мосту багато в чому аналогічним способом, яким фізичний комп'ютер може бути приєднаний до мережного комутатора, службовцю для з'єднання мережевих пристроїв. Що має назву позначенням для інтерфейсу моста є vmbrX, де X може бути цілим числом від 0 до максимум 4096. За замовчуванням нова установка Proxmox створює міст з ім'ям vmbr0 в кожному вузлі.

Кожен міст може бути підключений до фізичного мережному інтерфейсу вузла або залишитися без нього. Міст настроюється без будь-якого фізичного мережевого інтерфейсу не може здійснювати прямий обмін за межами самого вузла. Обмін може здійснюватися тільки між будь-якими віртуальними машинами, підключеними до цього мосту без фізичного інтерфейсу. Наступна схема показує мережеву діаграму моста без фізичного мережевого інтерфейсу:

На попередній діаграмі VM 1, VM 2 і VM 3 безпосередньо пов'язані з мостом vmbr0. Цей міст налаштований з мережевим фізичним інтерфейсом eth0, який підключений до фізичного комутатора. VM 4 налаштований в якості віртуального мережевого доступу, який має два віртуальних мережевих інтерфейсу, net0 і net1. Інтерфейс net0 підключений до мосту vmbr0, а інтерфейс net1 підключений до мосту vmbr1 разом з VM 5 і VM 6. Міст vmbr1 не налаштований на роботу з жодними фізичними інтерфейсами, отже, VM 5 і VM 6 можуть взаємодіяти тільки один з одним і VM 4.

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

Як це зробити...

Наступні кроки необхідні для створення віртуального мосту із застосуванням графічного інтерфейсу Proxmox. Для нашого прикладу ми збираємося створити міст з ім'ям vmbr1 без фізичного мережевого інтерфейсу:

  1. Виберіть вузол в лівому огляді навігації, в якому повинен бути налаштований міст.

  2. Натисніть на закладку меню Network.

  3. Натисніть на Create для відкриття спадаючого меню, потім виберіть Linux Bridge для відкриття блоку діалогу створення моста, як показано на наступному скріншоті:

  4. Для моста без фізичного інтерфейсу ми збираємося залишити все все блоки порожніми за винятком текстового блоку Name. Щоб призначити мосту фізичний інтерфейс просто введіть ім'я інтерфейсу, таке як eth0, eth1 і тому подібних, в текстовому блоці Bridge Ports.

  5. Після введення необхідної інформації клікніть на Create для завершення створення моста vmbr1.

    Наступний екранний знімок показує щойно створений міст з відкладеним перезавантаженням після зроблених в графічному інтерфейсі Proxmox змін:

Наступні кроки необхідні при створенні віртуального мосту за допомогою інтерфейсу командного рядка:

  1. Увійдіть в вузлі Proxmox через SSH або безпосередньо в консолі.

  2. Відкрийте редактором файли мережевий настройки з / etc / network / interfaces.

  3. Додайте новий міст з таким форматом налаштування. У нашому прикладі ми додаємо новий віртуальний міст з ім'ям vmbr1:

    auto vmbr1 iface vmbr1`inet manual bridge_ports none bridge_stp off bridge_fd 0 #ifup vmbr1

  4. Збережіть зміни і покиньте редактор.

  5. Активуйте міст наступною командою:

    #ifup vmbr1

Як це працює...

Налаштування моста є залежною від вузла. Наприклад, якщо існує міст з ім'ям vmbr1 в вузлі node 1, в місці підключення VM 2, то, якщо ми збираємося здійснювати міграцію VM 2 на вузлі node 2, ми повинні створити інший міст vmbr1 на цьому вузлі. Якщо міст приєднаний до фізичного інтерфейсу, який з'єднаний через комутатор з іншими вузлами Proxmox в кластері, то буде можлива взаємодія між віртуальними машинами на безлічі вузлів. Міст без фізичного мережевого інтерфейсу обмежений тільки вузлом, на якому він розміщений.

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

Є дещо ще ...

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

Налаштування VLAN

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

приготування

Щоб віртуальна сть могла працювати, фізичний комутатор в мережевому середовищі повинен підтримувати віртуальні мережі. Майже всі інтелектуальні (smart) і керовані комутатори мають можливості віртуальних мереж (VLAN). Перевірте керівництво вашого комутатора перед налаштуванням віртуальної мережі в Proxmox. Наступний знімок екрана показує панель управління smart, який є 48- портовим гігабітним інтелектуальним комутатором з підтримкою віртуальних мереж:

Кожній віртуальної мережі присвоюється унікальний номер, званий дескриптором віртуальної мережі (VLAN tag). Допускається максимум в 4096 дескрипторів. Дескриптор (тег) є унікальним для логічної мережі або для кожної віртуальної мережі в одній і тій же мережевому середовищі. Будь-яке мережеве пристрій або інтерфейс в мережі настроюються з якимось тегом віртуальної мережі зможуть взаємодіяти тільки з пристроями або інтерфейсами з тим же самим тегом віртуальної мережі, тим самим зберігаючи ізольованість мережевого обміну. Мережеві пакети отримують позначку від комутатора з певним дескриптором (тегом) віртуальної мережі.

Як це зробити...

У Proxmox існує два способи якими ми можемо призначати віртуальні мережі віртуальній машині. Вони такі:

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

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

зауваження

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

Наступні етапи застосовуються при призначенні тегів віртуальної мережі кожному мережному інтерфейсу віртуальної машини окремо через графічний інтерфейс Proxmox:

  1. Виберіть вузол в лівій колонці навігації.

  2. Натисніть на закладку меню Hardware, потім виберіть Network Device.

  3. Натисніть на Edit для відкриття блоку діалогу, як це показано на наступному скріншоті:

  4. Введіть числове значення ідентифікатора віртуальної мережі в текстовому блоці VLAN Tag. У нашому прикладі ми додали ідентифікатор віртуальної мережі 2.

  5. Натисніть OK для завершення.

  6. Виконайте цикл виключенія- включення для активації тега віртуальної мережі.

    Наступний екранний знімок демонструє мережевий інтерфейс віртуальної мережі з доданим тегом VLAN:

Наступні кроки показують як створювати субінтерфейс віртуальної мережі і виділений міст для VLAN із застосуванням інтерфейсу командного рядка:

  1. Увійдіть через SSH або PuTTY як root або з аналогічними правами адміністратора.

  2. Із застосуванням текстового редактора відкрийте файл мережевий настройки хоста Proxmox:

    #nano / etc / network / interfaces

  3. Додайте наступні рядки для створення субінтерфейса віртуальної мережі. Змініть інтерфейс згідно з вашим мережевого оточення. У нашому прикладі використовується інтерфейс eth2 для створення субінтерфейса віртуальної мережі для VLAN з дескриптором 2:

    auto vlan2 iface vlan2 inet manual vlan_raw_device eth2 auto vmbr2 iface vmbr2 inet manual bridge_ports vlan2 bridge_stp off bridge_fd 0

  4. Збережіть зміни і покиньте текстовий редактор.

  5. Виконайте наступні команди для активації субінтерфейса віртуальної мережі і моста без перезавантаження:

    #ifup vlan2 #ifup vmbr2

  6. Призначте даний міст вашої віртуальній машині, як показано на наступному скріншоті :.

Як це працює...

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

При створенні субінтерфейсов віртуальних мереж ми можемо створювати безліч мостів для безлічі віртуальних мереж в одному і тому ж фізичному мережевому інтерфейсі. Далі наводиться зміст мережевих налаштувань в / etc / network / interfaces, в якому створені три субінтерфейса віртуальних мереж поверх одного інтерфейсу фізичної мережі через три виділених моста:

auto vlan10 iface vlan10 inet manual vlan_raw_device eth1 auto vlan20 iface vlan20 inet manual vlan_raw_device eth1 auto vlan30 iface vlan30 inet manual vlan_raw_device eth1 auto vmbr10 iface vmbr10 inet manual bridge_ports vlan10 bridge_stp off bridge_fd 0 auto vmbr20 iface vmbr20 inet manual bridge_ports vlan20 bridge_stp off bridge_fd 0 auto vmbr30 iface vmbr30 inet manual bridge_ports vlan30 bridge_stp off bridge_fd 0

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

Налаштування мережевого зв'язування

Мережеве зв'язування (bonding), освіту груп (trunking) або агрегація зв'язків (link aggregation) є процесом, при якому різні мережеві інтерфейси об'єднуються для створення більшої пропускної здатності або реалізації відмовостійкості для зв'язності мережевий середовища. В даному рецепті ми збираємося розглянути типи зв'язування і того, як створювати зв'язні конфігурації.

приготування

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

Режим Властивість Стійкість до відмов Спеціальний комутатор

0

Round-robin (карусельний): Всі пакети послідовно надсилаються всім учасникам мережевих портів.

Так

немає

1

Active-backup (активне резервування): Тільки один учасник порту активний в певний момент часу.

Так

немає

2

Balance XOR (збалансоване виключає або): Пакети передаються через учасників портів на основі алгоритмів виборчого хеширования.

Так

немає

3

Broadcast (широкомовний): Всі пакети надсилаються всім членам портів.

Так

немає

4

802.3ad or LACP: Пакети надсилаються на підставі специфікації 802.3ad через агреговані групи з однаковими швидкістю і установками.

Так

Так

5

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

Так

немає

6

Balance ALB: Аналогічно режиму 5, але також приймає пакети на всіх портах за допомогою угод по ARP.

Так

немає

Методи зв'язування 2 і 4 застосовують алгоритми хешування для передачі мережевих пакетів. Ось три політики хеширования, доступні при зв'язуванні Proxmox:

Політика хеширования Опис

Layer 2

Ця політика посилає пакети даних в мережеве пристрій на тому ж учаснику порту. Хеш утворюється із застосуванням XOR MAC адрес.

Layer 2 + 3

Ця політика посилає пакети даних в мережеве пристрій на тому ж учаснику порту. Хеш утворюється із застосуванням XOR MAC адрес і IP адрес.

Layer 3 + 4

Ця політика посилає пакети даних в мережеве пристрій охоплюючи всіх учасників портів. Хеш утворюється із застосуванням інформації протоколів верхнього рівня.

Незалежно від різних режимів мережевого зв'язування процес налаштування аналогічний для всіх режимів. Пов'язується інтерфейс може бути створений як в графічному інтерфейсі Proxmox, так і в інтерфейсі командного рядка.

Як це зробити...

Перед тим як зв'язування можна буде застосувати в Proxmox, існують деякі модулі, що підлягають завантаженню в ядро. Вони такі:

  • модуль bonding

  • модуль mii

Ми можемо вставити їх в процесі завантаження шляхом додавання в окремі рядки в / etc / modules. Для перевірки того доступні модулі зв'язування для завантаження чи ні ми можемо виконати в командному рядку наступне:

#modprobe bonding

Якщо модуль не знайдено, то ми повинні встановити ifenslave наступною командою:

# Apt-get install ifenslave-2.6

Наступні кроки показують як створювати пов'язаний інтерфейс через графічний інтерфейс Proxmox:

  1. Виберіть вузол з лівої колонки навігації.

  2. Натисніть на закладку меню Hardware, потім виберіть Network Device.

  3. Натисніть на Edit для відкриття блоку діалогу, як показано в наступному скріншоті:

  4. Введіть в блоці діалогу необхідну інформацію. Всі порти, які передбачається використовувати як частину зв'язку повинні бути введені в текстовому блоці Slaves розділені пропуском. Якщо обраний режим 2 або 4, то виберіть також бажану політику хеширования. У нашому прикладі ми маємо зв'язок з ім'ям bond0, яка включить в себе порти учасників eth3 і eth4. Обрано режим balance-xor з політикою хеширования layer2.

  5. Натисніть на Create для завершення.

  6. Увійдіть або вузол Proxmox для активації зв'язування.

Наступні кроки показують як створювати зв'язування через інтерфейс командного рядка:

  1. Увійдіть через SSH або PuTTY як root або з аналогічними правами адміністратора.

  2. Із застосуванням текстового редактора відкрийте файл мережевий настройки хоста Proxmox:

    #nano / etc / network / interfaces

  3. Додайте наступні рядки для створення пов'язаного інтерфейсу. Змініть імена інтерфейсів відповідно до вашої середовищем У нашому прикладі ми використовуємо для зв'язування інтерфейси eth3 і eth4:

    auto bond0 iface bond0 inet manual slaves eth3 eth4 bond_miimon 100 bond_mode balance-xor bond_xmit_hash_policy layer2

  4. Збережіть зміни і покиньте текстовий редактор.

  5. Виконайте наступну команду для активації пов'язаного інтерфейсу:

    #ifup bond0

зауваження

Пов'язаний інтерфейс може застосовуватися в мосту аналогічно стандартного інтерфейсу. Просто замініть порт моста відповідним пов'язаним інтерфейсом наступним чином:

auto vmbr0 iface vmbr0 inet manual bridge_ports bond0 bridge_stp off bridge_fd 0

Є дещо ще ...

Зв'язування може бути відмінним, економічним способом підвищення загальної пропускної здатності мережі або просто створює надлишковий з'єднання мережі для збільшення часу безвідмовної роботи. Чітке розуміння різних режимів склеювання допоможе у виборі правильного режиму для різних вимог. Наприклад, за допомогою декількох комутаторів і мережевих інтерфейсів, ми можемо легко створити карусельну (round-robin) зв'язок, яка забезпечить надмірність не тільки для мережевих кабелів, а й для мережевих комутаторів. Мережеве середовище може нагадувати таку діаграму:

У попередньому малюнку вузли Proxmox і сховища Ceph з'єднуються двома фізичними комутаторами. Мережеві інтерфейси у всіх вузлах налаштовуються зі зв'язуванням balance-rr. У даному сценарії в разі відмови комутатора 1 всі вузли продовжать свою роботу з комутатором 2.

Хоча вона і працює, тому він не рекомендується для середовищ з критичним промисловим застосуванням. У разі втрати пакетів при цій політиці, пакети часто відсилаються повторно.

Налаштування мережевої трансляції адрес

В даному рецепті ми збираємося розглянути ніж є мережева трансляція адрес (NAT, Network Address Translation) і як її налаштувати в Proxmox.

Приготування

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

Без мережевий трансляції адрес кожному пристрою був би потрібний загальнодоступний IP для з'єднання з інтернетом. При нестачі адрес IPv4 і високу вартість їх отримання Мережева трансляція адрес надає рішення для мережевих середовищ будь-яких розмірів.

У Proxmox настройка мережевий трансляції адрес може виконуватися тільки через інтерфейс командного рядка.

Як це зробити...

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

  1. Застосуйте текстовий редактор для відкриття файлу /etc/sysctl.conf:

    #nano /etc/sysctl.conf

  2. Приберіть коментар наступного рядка:

    net.ipv4.ip_forward = 1

  3. Збережіть зміни файлу і перезавантажитеся для активації зроблених змін.

  4. Відкрийте налаштування мережевого інтерфейсу в текстовому редакторі:

    #nano / etc / network / interfaces

  5. Додайте і видаліть настройки з інтерфейсу як показано далі. Внесені в налаштування зміни показані жирним шрифтом:

    auto vmbr0 iface vmbr0 inet static address 192.168.10.1 netmask 255.255.255.0 bridge_ports none bridge_stp off bridge_fd 0 post-up echo 1> / proc / sys / net / ipv4 / ip_forward post-up iptables -t nat -A POSTROUTING -s '192.168 .10.0 / 24 '-o eth0 -j MASQUERADE post-down iptables -t nat -D POSTROUTING -s' 192.168.10.0/24 '-o eth0 -j MASQUERADE

  6. Збережіть файл настройки і перезавантажити для активації внесених змін.

Як це працює...

На основі налаштувань виконаних в попередньому розділі весь обмін віртуального інтерфейсу vmbr0 проходить через eth0, в той час як вся інформація про IP віртуальної машини залишається прихованою за мостом vmbr0.

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

Налаштування Infiniband

В даному рецепті ми збираємося дізнатися що таке Infiniband і як він може бути налаштований для створення мережевої середовища з високою пропускною здатністю в кластері Proxmox.

Приготування

Володіючи дуже низькою латентністю, Infiniband (IB), конкурує з гігабітним Ethernet, 10 GbE і 100 GbE {Прим. пер .: а також Fibre Channel 1-8GFC / 16GFC / 32GFC / 128GFC}. Створений в 1999 році, Infiniband продовжує надавати кошти для створення високопродуктивних кластерів побивали Ethernet як в латентності, так і за ціною. {Прим. пер .: см. визначення латентності на parallel.ru } IB є відмінним вибором для підключення кластера зберігання до обчислювальному кластеру у віртуальному середовищі. Linux забезпечує повну підтримку для IB. Для застосування IB повинні бути завантажені деякі модулі ядра. Мережева настройка схожа на конфігурацію будь-якого іншого інтерфейсу. Налаштування IB повинна виконуватися через інтерфейс командного рядка. Вона не може бути змінена або виконана через графічний інтерфейс Proxmox.

На наступному малюнку представлений приклад адаптера Infiiband QDR виробництва Mellanox Technlogoies Inc .:

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

Модель

{Прим. пер .: рік випуску}

Пропускна здатність (Gbit / s)

{Прим. пер .: швидкість передачі сигналу однієї шини, Gbit / s}

Латентність (мікросекунди)

Single Data Rate (SDR)

{2001-2003}

10

{2}

5

Double Data Rate (DDR)

{2005}

20

{4}

2.5

Quad Data Rate (QDR)

{2007}

40 {реально 32}

{8}

1.3

Fourteen Data Rate (FDR)

{2011}

56

{14}

0.7

Enhanced Data Rate (EDR)

{2014}

100

{25}

0.5

{High Data Rate (HDR)}

{ 2017? }

200

{50}

?

Як це зробити...

Наведемо кроки, які покажуть як завантажити модулі IB і налаштувати мережеву середу для інтерфейсу Infiniband:

  1. Увійдіть в вузлі Proxmox через SSH або консоль в якості root.

  2. Додайте наступні рядки в / etc / modules для завантаження модулів IB при завантаженні:

    mlx4_ib ib_ipoib

  3. У настройку інтерфейсу в / etc / network / interfaces додайте наведені нижче рядки. Підправте інформацію IP на основі вашої середовища:

    auto ib0 iface ib0 inet static address 192.168.10.1 netmask 255.255.255.0 pre-up echo connected> / sys / class / net / ib0 / mode mtu 65520

  4. Збережіть файл мережевих налаштувань і перезавантажити.

  5. Перевірте стан інтерфейсу IB виконавши команду:

    #ibstat

    Команда повинна відобразити інформацію аналогічну наведеній на наступному екранному знімку:

    Якщо команда ibstat відсутня, встановіть інструментарій IB наступною командою:

    # Apt-get install infiniband-diags

    Наступний знімок екрана показує настройки інтерфейсу IB в GUI Proxmox:

Як це працює...

IB використовує зовсім інший протокол і набір апаратних засобів. Стандартні кабелі Ethernet і комутатори не застосовні до IB. Передтем як почати вкладатися в IB, розгляньте існуючу мережу на місці і те, як радикальна зміна на IB може вплинути на вашу повсякденну роботу. Також IB може бути доданий в існуючу мережу шляхом установки додаткових плат IB в хости.

Для нормального функціонування IB потрібен менеджер підмережі. Менеджер підмережі може бути інтегрований в комутатор IB або він може бути налаштований на одному з вузлів з інтерфейсної платою IB. Установка і робота менеджера підмережі на вузлі є найпростішим і найкращим способом для наявності відмовостійкості. Для операційних систем на базі Linux менеджером підмережі є Opensm. Просто встановіть його на будь-якому вузлі Proxmox, а потім запустіть його з застосуванням наступних команд:

# Apt-get install opensm #opensm

Opensm стартує і просканує підключений комутатор IB, а також інші підключені до комутатора інтерфейси.

У Proxmox VE 3.4 існує можливість настройки віртуальних мереж поверх IB. Він може мати тільки одну підмережу в певний момент времені.К того ж порти IB не можуть зв'язуватися в стані активний-активний. Тільки один порт може бути активним у всіх випадках. Отже, єдиною причиною для зв'язування портів IB буде реалізація відмовостійкості, а не збільшення пропускної здатності.

Налаштування мережевого інтерфейсу віртуальної машини

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

Приготування

У Proxmox VE 3.4 існує чотири моделі віртуальних мережевих інтерфейсів, доступних для віртуальної машини:

  1. Intel E1000

  2. VirtIO (часткова віртуалізація, paravirtualized)

  3. Realtec RTL8139

  4. VMWare vmxnet3

З усіх чотирьох наведених, найбільш широко застосовуються в середовищі Proxmox інтерфейси Intel E1000 і VirtIO. Для досягнення максимальної продуктивності мережі рекомендується застосування VirtIO. Майже всі операційні системи на базі Linux автоматично налаштовують будь-які віртуальні мережеві інтерфейси. Однак носії з установкою операційної системи Windows не поставляються з драйвером VirtIO, який повинен бути завантажений вручну. Для Intel E1000 вбудовані в Windows 7 і Windows Server 2008 драйвери працюють прекрасно. Однак більш ранні версії Windows або, в деяких випадках, драйвери Windows Server 2012, можуть зажадати установку вручну.

Як це зробити...

Нижче наведено етапи вивантаження драйверів VirtIO і Intel E1000 з подальшою їх завантаженням в віртуальну машину на базі Windows:

Налаштування високої доступності

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

Приготування

Існують три попередніх вимоги перед налаштуванням високої доступності:

  • Cluster (кластер): Оскільки основна функція HA полягає в автоматичному перезапуску віртуальної машини з відмовив вузла на іншому вузлі, вона, зрозуміло, може бути налаштована тільки в кластері. Це одне з мінімальних вимог високої доступності Proxmox.

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

    зауваження зауваження

    Для отримання подробиць з налаштування захищає пристрої відвідайте http://pve.proxmox.com/wiki/Fencing .

  • Shared storage (спільно використовується сховище): Кластер Proxmox також повинен мати налаштоване спільно використовується сховище. Для виконання міграції високої доступності віртуальний диск повинен зберігатися в спільно використовуваному сховище.

Як це зробити...

  1. Увійдіть на вузлі Proxmox через SSH або безпосередньо з консолі. Налаштування захищає пристрої повинна бути виконана з інтерфейсу командного рядка. Перед додаванням обгороджувального пристрої настройка кластера в /etc/pve/cluster.conf повинна виглядати в такому форматі:

  2. Додайте ограждаюющее (fencing) пристрій відповідно до документацією http://pve.proxmox.com/wiki/Fencing .

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

  3. Збережіть налаштування і перезавантажте вузол.

  4. Увійдіть в графічному інтерфейсі Proxmox як root після перезавантаження.

  5. Переконайтеся що підлягає настройці віртуальна машина з високою доступністю остаточно виключена. Стан HA на сторінці Summary має бути No перед додаванням цієї віртуальної машини в HA, як це відображено на наступному скріншоті:

  6. Натисніть на Datacenter з лівої панелі навігації, потім клацніть на HA в меню з закладками. Наступний екранний знімок показує сторінку з поточної налаштуванням кластера при доданому пристрої огорожі: HA.

  7. Натисніть на спадаюче меню Add і виберіть HA managed VM / CT для відкриття блоку діалогу, як показано на наступному скріншоті. У нашому прикладі ми додаємо контейнер з ідентифікатором 101 в HA:

  8. Натисніть на кнопку Create для додавання віртуальної машини в HA.

  9. Натисніть на Activate для завершення налаштування або клікніть на Revert changes для повернення настройки до свого попереднього стану.

  10. Перевірте що обрана віртуальна машина тепер налаштована з HA на сторінці Summary. Якщо все добре, стан HA віртуальної машини повинно відображати Yes, як це показано на наступному знімку:

  11. Для перевірки налаштування високої доступності відключіть вузол Proxmox з віртуальною машиною і спостерігайте за його запуском на іншому вузлі в кластері.

Є дещо ще ...

Proxmox HA є відмінним способом збільшення загальної тривалості безвідмовної роботи в разі, коли відбувається відмова вузла і ІТ-персонал не може вирішити проблему в термін. Незважаючи на переваги високої доступності, існує безліч віртуальних середовищ, де ця функція не використовується. Наприклад, у великій середовищі, велике число віртуальних машин на вузол може викликати деякі проблеми при налаштованої високої доступності. У разі відмови вузла в такому середовищі велика кількість віртуальних машин автоматично запуститься на інших вузлах. Якщо ці вузли не мають достатні ресурси, нові віртуальні машини не зможуть перезапуститися.

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

Дополнительная информация

rss
Карта