Nutanix: Project Acropolis - KVM Management Tool

image

Наш проект, що носить назву Acropolis (ін-грец. ἀκρόπολις — верхнє місто, зазвичай фортеця на вершині пагорба в грецькому місті, контролююча всі околиці в силу свого положення) було розпочато ще в минулому році, і незабаром вже по-максимуму використовувався для внутрішніх завдань компанії Nutanix. Кращий спосіб розробити щось якісне — самим активно користуватися своїм продуктом. Практично вся внутрішня IT інфраструктура (включаючи «святая святих» — розробку самого продукту) працює на Acropolis вже досить тривалий час.

Протягом минулого року ми вже показували і трохи розповідали про проект, вірніше про його перед-релизной версії. Наприклад, брали участь у конференції HighLoad++ 2014 можливо чули нашу розповідь про те, що це таке і куди планується розвиватися, там же на стенді можна було подивитися на продукт «наживо» (правда, тільки CLI управління). І ось, нарешті, в січні, в одному з оновлень Nutanix OS (NOS 4.1.1) розробники компанії випустили першу публічну версію Acropolis (або як він зараз буде офіційно називатися KVM Management Tool) «апстрім».


Технічно, Acropolis / KVM Management Tool — це служба, яка працює всередині наших CVM (Controller VM), як наслідок — кластеризованная, розподілена, доступна на всіх ноди (серверах) одночасно, лінійно масштабована слідом за зростанням хмари система управління, і на даний момент не має прямих аналогів на ринку система управління відкритим гіпервізором KVM, вбудованим в ядро Linux (у нас — CentOS 6).

KVM Management Tool не має ахіллесової п'яти практично всіх існуючих на сьогодні засобів управління гіпервізорами / хмарами (включаючи OpenStack) — а саме використання SQL-серверів для зберігання конфігурацій VM і кластера, що тягне за собою масу обмежень (наприклад, обмеження розміру кластера, кількості VM в хмарі і т. д.) укупі з проблемами надійності і продуктивності.
Інакше кажучи, замість виділених серверів / сервісів керування кластером, кожен нсд є рівноцінним елементом єдиної системи управління.

Як результат, Acropolis здатний без проблем масштабуватися практично безлімітно (що особливо важливо для Nutanix, так як масштабованість, scale-out — наша ключова фішка рішення), володіє дуже високою швидкістю роботи (сотні тисяч й мільйони VM — не проблема, включаючи повний моніторинг і всі метрики продуктивності на кожну VM) і здатний витримувати множинні відмови обладнання.

Наприклад — всього за 5 вузлах (серверах, ноди) в кластері — будь-які два можуть відмовити одночасно, що є для традиційних рішень аналогом одночасного відмови 2-х SQL і керуючих серверів одночасно. Більш того — при 12 вузлах (3-х блоках) — може відмовити цілком один блок (тобто 4 керуючих сервера).
Іншими словами, ми здатні витримати одночасний відмова двох і більше «vCenter-аналогів» і серверів БД, причому це вбудовано і доступно спочатку, при цьому не вимагаючи жодної додаткової особливої конфігурації.

Не зайвим буде нагадати, що переважна більшість приватних хмар на сьогоднішній день зазвичай мають тільки один SQL сервер (vCenter в тому числі) через складність і дорожнечу резервування баз даних (Oracle RAC або IBM DB2 PureScale — зазвичай мова йде про десятки або сотні тисяч доларів тільки на ліцензії).

Якщо ви роздумуєте про те, що непогано було б перейти з вкрай охочої до ваших грошей vSphere, при всіх плюсах неї як продукту, на щось куди більш вільний — подивіться на Nutanix + KVM + KVM Management Tool.
Особливо це може бути цікаво для компаній, які ризикують потрапити під падаючий сокиру самі знаєте чого і всієї супутньої цього головного болю для IT-відділу.

Версія KVM, яку ми застосовуємо — повністю відкрита (у тому числі для сертифікації в РФ по вищому рівню) і базується на QEMU з Centos 6.x (найближчим часом переходимо на 7.x), що дозволяє говорити про "імпортозаміщення" — точніше переході, в значній мірі, на відкритий код і повністю відкритий (в тому числі документований) формат зберігання всіх даних (Nutanix — одна з небагатьох компаній, яка послідовно і відкрито публікує подробиці внутрішнього устрою свого продукту, (дивіться Nutanix Bible), а автор її — Steven Poitras — один з розробників компанії)
Очевидно, що це є вкрай цінним насамперед для державних органів, корпорацій та інших структур, а в тому числі і для багатьох комерційних компаній.
Наприклад, наш перший великий клієнт, який перейшов на Акрополіс — велика Швейцарська компанія, один з лідерів індустрії в DACH регіоні, здійснили повну міграцію і вкрай задоволені результатом.

Перехід з ESXi при цьому дуже простий і фактично є простим копіюванням VMDK файлу з інсталяцією QEMU-tools замість vmware-tools на ваші VM (що можна зробити до міграції), причому це потрібно тільки для windows машин.

Ви можете скопіювати віртуальний диск (або диски) вашої віртуальної машини c ESXi на Nutanix (подмонтировав по NFS на ESXi хості), безпосередньо його використовувати для створюваної VM у KVM, і прямо з такого диска запуститися.
KVM вміє конвертувати VMDK в raw (це робиться буквально однією командою — qemu-img).
Процес цей може бути автоматизований, і ми збираємося включити повну автоматизацію процесу в недалекому майбутньому в наш Prism UI (графічний інтерфейс адміністрування кластеру Nutanix).

Таким чином, перенести тисячі VM з VMware в KVM за кілька днів — зовсім не проблема.

У KVM можуть працювати різні OS (не тільки Linux). — практично всі Windows, зрозуміло Linux, різні *nix (включаючи FreeBSD і Solaris). Список підтримуваних OS тут.

Серед важливих і зручних вбудованих «фішок» — управління мережею (розподіленим комутатором) і вбудований IPAM (IP Address Management).
Фактично у вас є безкоштовний розподілений віртуальний комутатор (який у інших вендорів доступний зазвичай тільки в Enterprise-редакціях з відповідними рівню ліцензії цінами), з управлінням VLAN, інтерфейсами, призначенням IP адрес для VM (статичних або динамічних).

Картинки завжди краще тисяч слів, тому постараюся замість довгого і стомлюючого розповіді показати скріншотами все те, що сьогоднішня версія вміє.

Після оновлення Nutanix OS, внутрішньої OS кластера і CVM, Controller VM, до версії 4.1.1 (відбувається це, до речі, без переривання доступності ваших VM) сервіс KVM Management Tool, при використанні KVM як встановленого гіпервізора, автоматично запущений і доступний.

Стартова сторінка Prism UI, админского інтерфейсу Nutanix Cluster, виглядає приблизно як на скріншоті. У лівому верхньому куті ми бачимо, що використовується гіпервізор KVM, ліворуч внизу — що працює він на 4-нодовом NX-3460 (2U стойко-місця, 1.3 kW споживання, його вистачає для роботи сотні VM).

prism-01

Перейдемо в панель керування віртуальними машинами (VM). Праворуч вгорі ми бачимо два розділу — створення мережі (віртуального мережевого комутатора) і створення VM.

Почнемо з налаштувань розподіленого комутатора (підтримується Open vSwitch). Створимо VLAN для нашої VM.

acropolis-gui-create-vlan-01

acropolis-gui-create-vlan-02

acropolis-gui-create-vlan-03

Коли мережевий комутатор і VLAN налаштовані, можна приступати до створення VM.

Натиснемо на "+ Create VM".

acropolis-gui-clone-vm-01

У простій панелі задамо бажані параметри VM: Число vCPU, пам'яті, дисків, і мережевих адаптерів. Крім vCPU і пам'яті в подальшому ці параметри можна поміняти «на гарячу».

Зазначимо бажаний VLAN (L2 або L3 у разі managed мережі з IPAM) і потрібне число дисків і CDROM.

acropolis-gui-create-disk-01

acropolis-gui-create-nic-01

Майже готово. Запускаємо на створення.

acropolis-gui-create-vm-03

acropolis-gui-create-vm-04

Наша машина створена і знаходиться у вимкненому стані. Включимо її.

acropolis-gui-manage-vm-01

Звідси ж можна зробити з VM різні дії. Смигрировать VM на певний хост, зробити снепшот увімкнути-вимкнути, перезавантажити, а також скопіювати дану VM в її клон-копію.

acropolis-gui-update-vm-01

acropolis-gui-manage-vm-03

acropolis-gui-manage-vm-02

Як отримати доступ до консолі нашої VM?
Для цього можна клацнути на посилання Launch Console. При цьому запуститься VNC viewer під назвою noVNC, написаний на чистому HTML5 (не потрібні звичні Flash / Java), і працює прямо у вікні браузера. Нагадаю, ми тут все ще в браузері, в якому відкрили Prism UI, ніякого стороннього «VM Client» нам не треба, все в простому web-браузері. У мене, як бачите, IE11, але звичайно працює в будь-якому сучасному браузері з поддержой HTML5, хоч в Firefox, хоч в Chrome, хоч в Safari на Mac.

Зверніть увагу, що з'єднання криптуется, а також, що досить унікально для клієнтів VNC, підтримуються безліч расскладок клавіатури (включаючи російську).

Якщо б у мене був VM змонтований ISO з дистрибутивом, почалася б установка, а без нього…

acropolis-vm-console-01

Крім цього, в Prism UI є безліч багатих можливостей з моніторингу та алертам, корисним у нашій адмінської службі.

acropolis-gui-manage-vm-04

acropolis-gui-manage-vm-05

acropolis-gui-manage-storage-01

acropolis-gui-analytics-01

acropolis-gui-alerts-01

acropolis-gui-alerts-02

acropolis-gui-manage-vm-06

Але що робити, якщо ви олдскул адмін, полюбляє командний рядок всієї цієї «мишачої метушні»?
Відмінні новини: є повнофункціональний командлайн інтерфейс, що викликається з консолі будь-якого CVM командою acli.
Неймспейсы, онлайн-підказки, доповнення по табу — є. Всі можливості управління доступні як з CLI, так і з GUI. Хтось із клієнтів каже що дуже нагадує старий-добрий Cisco IOS, швидко для освоєння і дуже зручно.

acropolis-cli-01

acropolis-cli-06

acropolis-cli-05

А якщо ви плануєте вбудувати KVM з Acropolis у вашу зовнішню систему управління «хмарою», то вам стане в нагоді наявність повноцінного RESTful API, з якого VM / хмарою можна керувати також, як і всім іншим Nutanix.

acropolis-restapi-01

acropolis-restapi-02

acropolis-restapi-03

acropolis-restapi-04

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

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

Q: Ви взагалі хто?
A: Ми — компанія Nutanix, розробник і виробник гиперконвергентной платформи (сервер+сторадж) для роботи різних гіпервізора, VM і додатків під ними. Пишемо тут свій блог за адресою: http://habrahabr.ru/company/nutanix/

Q: Це все працює тільки на вашій платформі?
A: Це софтверное рішення, але поки воно працює тільки всередині нашого продукту — Nutanix OS

Q: А буде відкрите рішення, доступне окремо, для всіх бажаючих?
A: Така можливість зовсім не виключено, як кажуть у таких випадках «стежте за рекламою».

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

0 коментарів

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