Різниця між віртуалізацією на рівні ОС (контейнерами) і апаратної віртуалізацією (віртуальними машинами) в InfoboxCloud

При створенні віртуального сервера InfoboxCloud користувач може встановити прапор «Я буду керувати ядром ОС». Якщо прапорець не встановлений — використовується віртуалізація на рівні ОС (за замовчуванням). Якщо прапорець встановлений — використовується апаратна віртуалізація.



У цій статті ми відповімо на часто задається питання: в чому різниця в типах віртуалізації InfoboxCloud і яку віртуалізацію вибрати.

Віртуалізація на рівні ОС

Віртуалізація на рівні ОС дозволяє виртуализовывать фізичні сервери на рівні ядра операційної системи.



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

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


Особливості контейнерів в InfoboxCloud
З точки зору додатки кожен контейнер — незалежна система. Незалежність надається рівнем віртуалізації операційної системи Parallels Cloud Server. На віртуалізацію витрачається мінімальна кількість ресурсів CPU: 1-2%.

Основні особливості:
  • Контейнери виглядають як звичайна Linux-система. Вони включають в себе звичайні стартап-скрипти. Сторонні програми можуть запускатися в контейнерах без необхідності модифікації.
  • Користувач може змінювати будь-які конфігураційні файли та встановлювати будь-яке додаткове програмне забезпечення в контейнери.
  • Контейнери повністю ізольовані один від одного (файлова система, процеси, змінні sysctl) і віртуальних машин Parallels.
  • Контейнери поділяють динамічні бібліотеки, що значно економить пам'ять.
  • Процеси в контейнерах плануються для виконання на всіх доступних CPU. Контейнери не обмежені одним CPU і можуть використовувати всю міць CPU хоста.
Також цікаво, що файли образу віртуального сервера зберігаються в єдиному файлі.hdd), що дозволяє простіше виконувати міграцію і резервне копіювання за послідовного доступу до єдиного файлу замість окремих файлів контейнера.

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

Контейнери використовують нативні журналируемые квоти диска і в разі краху фізичного сервера не потрібно перерахунок квот.

Апаратна віртуалізація

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



Основні переваги апаратної віртуалізації
  • Можливість створення безлічі віртуальних машин з різними операційними системами (включаючи Windows). Немає залежності від єдиного ядра ОС. Користувач може встановлювати власні патчі на ядро при необхідності отримання розширеної функціональності віртуального сервера.
  • Віртуальні машини виглядають як звичайний комп'ютер. Вони містять власне віртуальне обладнання та програмне забезпечення, яке може запускати у віртуальних машинах без необхідності модифікації.
  • Віртуальні машини повністю ізольовані один від одного і від ОС сервера, де відбувається запуск віртуальних машин (ізоляція на рівні файлової системи, процесів, змінних sysctl).
  • Завдяки використанню технологій віртуалізації Intel і AMD продуктивність віртуальних серверів дуже висока і наближена до продуктивності реального обладнання.
Кожен віртуальний сервер зберігається як мінімум у двох файлах: файл конфігурації і файл жорсткого диска.

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

Яку віртуалізацію вибрати?

Якщо ви ніколи не думали над цим — використовуйте контейнерну віртуалізацію. Вона відмінно підходить для більшості завдань на віртуальному Linux-сервері. Ви отримаєте максимально швидке час створення сервера і перезавантаження (що дуже важливо при міграції сервера). Також при використанні віртуалізації на рівні ОС доступно автомасштабування оперативної пам'яті.

Якщо вам необхідна установка Windows, розширень ядра ОС (наприклад, для VPN), повний контроль над ядром ОС, можливість використання Docker, ручної апгрейд самої ОС — використовуйте апаратну віртуалізацію.

Успішного використання InfoboxCloud!

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.