Разом, за мотивами попередніх частин даної епопеї: раз, два, три, ми маємо парочку хостів ESXi і vCenter Server, який цими хостами вміє керувати.
Наступне обов'язкова умова для побудови кластера - загальне сховище з кластерної файлової системою VMware - VMFS (або NFS ресурс). Дане сховище повинне бути доступно одночасно всім вузлам майбутнього кластера і на ньому будуть зберігатися файли віртуальних машин. У двох словах про ці самі файли.
Кожна віртуальна машина для гапервізора ESXi, це з одного боку - набір файлів на диску, з іншого боку - процес, або набір процесів в яке загорнуті процеси гостьовий операційної системи. Нижче на картинці - приблизний список файлів типовою віртуальної машини:
В даному прикладі машина називається w73D, це ім'я фігурує в назвах її файлів, в більшості файлів відрізняється тільки розширення.
w73D. vmx - містить параметри конфігурації віртуальної машини, такі як розмір ОЗУ, кількість ядер процесора, конфігурацію пристроїв введення-виведення і безліч інших параметрів
w73D. vmdk - файл віртуального диска, який бачить гостьова операційна система як фізичний вінчестер. Якщо додати ще парочку дисків в віртуальну машину - файлів з розширенням * .vmdk теж буде кілька
w73D. nvram - файл стану BIOS віртуальної машини
w73D-bf967e3a. vswp - swap файл віртуальної машини, який створюється під час запуску ВМ і його розмір дорівнює розміру незарезервірованних оперативної пам'яті віртуальної машини (в даному прикладі вся пам'ять ВМ зарезервована) і використовується в разі конкуренції за оперативну пам'ять між віртуальними машинами
Це основні файли, і яких складається ВМ. Є також додаткові файли, які використовуються для системних потреб, деякі з них:
vmware. log - тут і так зрозуміло: лог системних подій, пов'язаних з віртуальною машиною
w73D. vmsd - інформація про снапшотов віртуальної машини
w73D. vmx.lck - використовується для блокування ВМ від запуску одночасно на двох вузлах
І т.д ... лізти в нетрі і перераховувати все не буду, стаття ознайомча.
У кластерної конфігурації VMware vSphere всі файли віртуальних машин, які передбачається захищати за допомогою VMware HA і рухати за допомогою VMware DRS і vMotion передбачається зберігати на спільному сховищі (в контексті VMware - Datastore) яке доступне всім вузлам кластера одночасно.
Для цих цілей можна використовувати звичайно ж Fibre Channel, FCoE, iSCSI або навіть NFS сховище. Звичайно, добре якщо у вас є модна СГД з підключенням по FC або FCoE, там питань практично не виникає, але це дорого (якщо говорити про ДЕМО-стенд), і навіть круті компанії не завжди можуть собі дозволити юзати дорогущий сторедж як «пісочниці ».
Тому розглянемо iSCSI і NFS як варіант загальної хранілкі «для бідних», хоча б тому, що для демонстрації його можна зібрати на коліні за півгодини (але фірмова СГД з підключенням по iSCSI або NFS теж варто хороших грошей, дружно згадаємо про NetApp;))
Якщо вибирати між iSCSI і NFS то тут теж є невелика дилема, у кожного варіанту є недоліки, якщо в двох словах, то iSCSI більш глючний, а NFS більше загальмувати (задо надійніше і простіше). Так, безумовно є любителі айсказі, які закидають мене помідорами і скажуть що все глюки від кривих ручок, але в контексті ESXi є кілька офіційно визнаних багів, при роботі з iSCSI, особливо при використанні Software iSCSI адаптера з боку ESXi, хоча є конторки, пользующие таку конфігурацію в продуктивний, відловити і поборовшись все глюки, кожному, як то кажуть, своє.
Карочє, для даної демонстрації я вибираю NFS, не дивлячись на його тормознутость, а ви дивіться самі. NFS сервером може прикинутися в принципі будь-який лінукс, але ще простіше - готове рішення на подобі Open-E або Openfiler.
суть:
- викачуємо готовий модуль у вигляді ISO або OVA / OVF
- розгортаємо на фізичному або віртуальному машині підминаючи під себе побільше дискового простору
- прибиваємо айпішник
- створюємо через веб-морду (для любителів порнушкі - через командний рядок)
- ????????
- PROFIT!
Описувати детально установку і настройку NFS ресурсу не буду, бо:
- лінь
- там все інтуїтивно зрозуміло
- не охота черговий раз відходити від теми
Припустимо, NFS ми розгорнули, тепер потрібно прімаппіть його до вузлів майбутнього кластера.
Для цього: наступаємо на вузол -> ліземо в Configuration -> Storage -> Add Storage (див. Картинко нижче)
У вікні вибираємо «Network File System» і слідуючи інструкціям вказуємо:
- Адреса або ім'я вузла NFS сервера
- Шлях до папки на сервері
- Ім'я сховища, яке буде відображатися в списку датасторов
Якщо ми все зробили правильно, то у нас з'явиться на вкладці «Datastores«. Повторюємо дії для всіх вузлів майбутнього кластера, при цьому ім'я сховища у всіх вузлів повинно бути однакове.
У випадку з блоковим сховищем FC або FCoE, перш за все, LUN повинен бути презентований всіх вузлів майбутнього кластера, після цього, створюємо на ньому файлову систему VMFS за допомогою «Add Storage» на одному з вузлів, а на інших - УВАГА !! - робимо правою кнопкою -> «Rescan for Datastores». Якщо даний LUN додати повторно на іншому вузлі, поки він не встиг отсканніться - вийде какашка.
Що з цим усім робити? - можна створити на новоспеченому сховище одну або кілька віртуальних машин. Вміст сховища можна подивитися тицнув на ньому правою і вибравши «Browse Datastore«. У випадку з NFS - можна підключити його з інших серверів або юзерскій машинкам, навіть з виндой, тому що NFS це універсальна мережева файлова система, чого не можна сказати про VMFS, яку вміє читати тільки ESXi.
На сьогодні все, в наступній статті сподіваюся завершити історію зі створенням кластеру, спробую розповісти про налаштування кластерних фич і тестуванні їх роботи.
Я намагався розписувати максимально докладно і доступно, але якщо по даній, або попереднім статтям є питання - задавайте, постараюся відповісти.
Всім миру і любові :)
Наступна стаття по сабжу:
Будуємо кластер VMware: Частина 5 - створення та налаштування кластера
Що з цим усім робити?