Відмовостійка кластеризація – загальні відомості. Створення відмовостійкого кластера високої доступності на Windows

Прес-центр

Створення кластера з урахуванням Windows 2000/2003. Крок за кроком

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

Microsoft Windows 2000/2003 підтримує дві технології кластеризації: кластери з балансуванням навантаження (Network Load Balancing) та кластери серверів.

У першому випадку (кластери з балансуванням навантаження) служба Network Load Balancing надає службам та додаткам властивості високого рівня надійності та масштабованості за рахунок об'єднання до 32 серверів у єдиний кластер. Запити від клієнтів у разі розподіляються серед вузлів кластера прозорим чином. При відмові вузла кластер автоматично змінює свою конфігурацію та перемикає клієнта на будь-який з доступних вузлів. Цей режим конфігурації кластера також називається active-active режимом, коли одна програма працює на кількох вузлах.

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

Кластерний підхід до організації внутрішньої мережі дає такі переваги:

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

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

Вимоги до програмного забезпечення

  • Microsoft Windows 2000 Advanced (Datacenter) Server або Microsoft Windows 2003 Server Enterprise Edition, встановлені на всіх серверах кластера.
  • Встановлена ​​служба DNS. Трохи поясню. Якщо ви будуєте кластер на основі двох контролерів домену, то набагато зручніше використовувати службу DNS, яку ви в будь-якому випадку встановлюєте під час створення Active Directory. Якщо ви створюєте кластер на основі двох серверів, членів Windows NT домену, вам доведеться використовувати або службу WINS, або заносити відповідність імен і адрес машин у файл hosts.
  • Terminal Services для віддаленого керуваннясерверами. Не обов'язково, але за наявності Terminal Services зручно керувати серверами зі свого робочого місця.

Вимоги до апаратного забезпечення

  • Апаратне забезпечення для вузла кластера краще підбирати, ґрунтуючись на Cluster Service Hardware Compatible List (HCL). за рекомендаціям Microsoft апаратне забезпеченнямає бути протестовано на сумісність із Cluster Services.
  • Відповідно вам знадобляться два сервери, що мають по два мережеві адаптери; SCSI-адаптер має зовнішній інтерфейс для підключення зовнішнього масиву даних.
  • Зовнішній масив, що має два зовнішні інтерфейси. Кожен із вузлів кластера підключається до одного з інтерфейсів.

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

Вимоги до мережних налаштувань

  • Унікальне NetBIOS ім'я кластера.
  • П'ять унікальних статичних IP-адрес. Два для мережних адаптерів на кластерну мережу, два для мережних адаптерів на загальну мережу та один для кластера.
  • Доменний обліковий запис для кластерного сервісу (Cluster Service).
  • Усі вузли кластера мають бути або member server в домені, або контролерами домену.
  • Кожен сервер повинен мати два мережеві адаптери. Один для підключення до спільної мережі (Public Network), другий для обміну даними між вузлами кластера (Private Network).

Примітка:за рекомендаціями Microsoft ваш сервер повинен мати два мережеві адаптери, один для спільної мережі, другий для обміну даними всередині кластера. Чи можна будувати кластер на одному інтерфейсі – напевно, так, але я не пробував.

Встановлення кластера

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

У разі побудови двовузлового кластера один комутатор використовується спільною мережею. Два сервери кластера можна зв'язати між собою крос-кабелем безпосередньо, як показано на малюнку.

Установка двовузлового кластера може бути розділена на 5 кроків

  • Встановлення та налаштування вузлів у кластері.
  • Встановлення та налаштування ресурсу, що розділяється.
  • Перевірка дискової конфігурації.
  • Налаштування першого вузла кластера.
  • Конфігурування другого вузла у кластері.

Це покрокове керівництво дозволить вам уникнути помилок під час встановлення та заощадити масу часу. Тож почнемо.

Встановлення та налаштування вузлів

Ми трохи спростимо завдання. Оскільки всі вузли кластера повинні бути учасниками домену, або контролерами домену, то кореневим власником каталогу AD (Active Directory) зробимо 1-й вузол кластера, на ньому буде працювати DNS-служба. Другий вузол кластера буде повноправним контролером домену.

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

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

Перед встановленням кластера та Active Directory необхідно виконати мережні налаштування. Усі налаштування мережі хочеться розділити на 4 етапи. Для розпізнавання імен у мережі бажано мати DNS-сервер із вже існуючими записами про сервери кластера.

Кожен сервер має дві мережні карти. Одна мережна карта буде служити для обміну даними між вузлами кластера, друга працюватиме на клієнтів у нашій мережі. Відповідно, перший назвемо Private Cluster Connection, другий назвемо Public Cluster Connection.

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

  • My Network Places → Properties
  • Private Cluster Connection → Properties → Configure → Advanced

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

  • Internet Protocol (TCP/IP) → Properties → Use the following IP: 192.168.30.1

    (Для другого вузла використовуйте адресу 192.168.30.2). Введіть маску підмережі 255.255.255.252. В якості адреси DNS-сервера для обох вузлів використовуйте адресу 192.168.100.1.

  • Додатково на вкладці Advanced → WINS виберіть Disabled NetBIOS over TCP/IP . Для налаштувань мережевих адаптерів загальної (Public) мережі цей пункт опустіть.
  • Виконайте те саме з мережевою карткою для локальної мережі Public Cluster Connection. Використовуйте адреси, наведені у таблиці. Єдина різниця у конфігурації двох мережевих платполягає в тому, що для Public Cluster Connection не потрібно вимкнення режиму WINS - NetBIOS over TCP/IP.

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

Вузол Мережеве ім'я IP address MASK DNS Server
1 Public Cluster Connection 192.168.100.1 255.255.255.0 192.168.100.1
1 Private Cluster Connection 192.168.30.1 255.255.255.252 192.168.100.1
2 Public Cluster Connection 192.168.100.2 255.255.255.0 192.168.100.1
3 Private Cluster Connection 192.168.30.2 255.255.255.252 192.168.100.1

Встановлення Active Directory

Оскільки моя стаття не має на меті розповісти про установці Active Directory, то цей пункт я опущу. Різних рекомендацій, книг про це написано чимало. Ви берете доменне ім'я, на зразок mycompany.ru, встановіть Active Directory на першому вузлі, додайте другий вузол в домен як контролер домену. Коли все зробите, перевірте конфігурацію серверів Active Directory.

Встановлення Cluster User Account

  • Start → Programs → Administrative Tools → Active Directory Users and Computers
  • Додайте нового користувача, наприклад, ClusterService.
  • Встановіть прапорці на: User Cannot Change Password та Password Never Expires .
  • Також додайте цього користувача до групи адміністраторів та дайте йому права Log on as a service (права призначаються в Local Security Policy та Domain Controller Security Policy).

Налаштування зовнішнього масиву даних

Для налаштування зовнішнього масиву даних у кластері необхідно пам'ятати, що перед встановленням Cluster Service на вузлах ви повинні спочатку налаштувати диски на зовнішньому масиві, лише потім установлювати службу кластера спочатку на першому вузлі, а потім на другому. У разі порушення порядку встановлення у вас станеться збій, і ви не досягнете мети. Чи можна буде виправити – мабуть, так. Коли з'явиться помилка, у вас буде час, щоб виправити налаштування. Але Microsoft така загадкова штука, що зовсім не знаєш, на які граблі наступиш. Простіше мати перед очима покрокову інструкцію та не забувати натискати на кнопки. За кроками конфігурування зовнішнього масиву виглядає так:

  1. Обидва сервери повинні бути вимкнені, зовнішній масив увімкнений, приєднаний до обох серверів.
  2. Вмикаємо перший сервер. Отримуємо доступ до дискового масиву.
  3. Перевіряємо, щоб зовнішній дисковий масив було створено як Basic. Якщо це не так, то переведемо диск за допомогою опції Revert to Basic Disk.
  4. Створюємо на зовнішньому диску через Computer Management → Disk Managementневеликий розділ. За рекомендаціями Microsoft, він повинен бути не менше 50 Мб. Я рекомендую створити розділ на 500 Мб. чи трохи більше. Для розміщення кластерних даних цього цілком достатньо. Розділ має бути відформатований у NTFS.
  5. На обох вузлах кластера цей розділ буде названий однією літерою, наприклад Q. Відповідно при створенні розділу на першому сервері виберемо пункт Assign the following drive letter - Q.
  6. Решту диска ви можете розмітити за своїм бажанням. Звісно, ​​дуже бажано використовувати файлову систему NTFS. Наприклад, при налаштуванні служб DNS, WINS основні бази служб будуть перенесені на загальний диск (не системний том Q, а другий створений вами). І з міркувань безпеки вам буде зручніше використовувати саме NTFS-томи.
  7. Закриваємо Disk Management та перевіряємо доступ до новоствореного розділу. Наприклад, можна створити на ньому текстовий файл test.txt, записати та видалити. Якщо все пройшло нормально, то зі зміною зовнішнього масиву першому вузлі ми закінчили.
  8. Тепер вимикаємо перший сервер. Зовнішній масив має бути включений. Включаємо другий сервер та перевіряємо доступ до створеного розділу. Також перевіримо, щоб літера, призначена першому розділу, була ідентична обраної нами, тобто Q.

На цьому конфігурацію зовнішнього масиву завершено.

Встановлення Cluster Service Software

Конфігурація першого вузла кластера

Перед початком встановлення Cluster Service Software усі вузли кластера повинні бути вимкнені, всі зовнішні масиви мають бути увімкнені. Перейдемо конфігурації першого вузла. Зовнішній масив увімкнено, перший сервер увімкнено. Весь процес установки відбувається за допомогою Cluster Service Configuration Wizard:


Конфігурація другого вузла кластера

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

  1. У діалоговому вікні Create or Join a Cluster виберіть The second or next node у clusterта натисніть далі.
  2. Введіть ім'я кластера, яке ми задали раніше (наприклад, MyCluster), і натисніть далі.
  3. Після підключення другого вузла до кластера Cluster Service Configuration Wizard автоматично забере всі установки з основного вузла. Для запуску служби Cluster Service використовуйте ім'я, яке ми створювали раніше.
  4. Введіть пароль вашого облікового запису та натисніть далі.
  5. У наступному діалоговому вікні натисніть Finish, щоб завершити інсталяцію.
  6. Cluster service буде запущено на другому вузлі.
  7. Закрийте вікно Add/Remove Programs.

Для встановлення додаткових вузлів кластера використовуйте цю інструкцію.

Постскриптум, подяки

Щоб не заплутатися з усіма етапами установки кластера, наведу невелику табличку, у якій відбито всі основні етапи.

Крок Вузол 1 Вузол 2 Зовнішній масив
Після кількох років мовчання вирішив поділитися досвідом з розгортання відмовостійкого кластерана основі Windows Server 2012.
Постановка задачі:Розгорнути відмовостійкий кластер для розміщення на ньому віртуальних машин, з можливістю виділення віртуальних машин на окремі віртуальні підмережі (VLAN), забезпечити високу надійність, можливість поперемінного обслуговування серверів, забезпечити доступність сервісів. Забезпечити спокійний сон відділу ІТ.

Для виконання вище поставленого завдання нам удалося вибити собі таке обладнання:

  1. Сервер HP ProLiant DL 560 Gen8 4x Xeon 8 core 64 GB RAM 2 шт.
  2. SAS Сховище HP P2000 на 24 2,5 дисків 1 шт.
  3. Диски для сховища 300 Gb 24 шт. //З обсягом не густо, але, на жаль, бюджети такі бюджети…
  4. Контролер для підключення SAS виробництва HP 2шт.
  5. Мережевий адаптер на 4 1Gb порти 2 шт. //Можна було взяти модуль під 4 SFP, але ми не маємо обладнання з підтримкою 10 Gb, гігабітного з'єднання цілком достатньо.
Звичайно оновлюємо BIOS і Firmware з офіційного сайту.
Організація підключень:


У нас насправді підключено до 2 різних комутаторів. Можна підключити до 4 різних. Я вважаю, що достатньо 2-х.
На портах комутаторів, куди підключені сервери, необхідно змінити режим інтерфейсу з access на trunk, для можливості рознесення по віртуальних підмережах.

Поки качаються оновлення на нову Windows Server 2012, налаштуємо дискове сховище. Ми плануємо розгорнути сервер баз даних, тому вирішили 600 Гб використовувати під бази даних, інше під інші віртуальні машини, така ось тавтологія.

Створюємо віртуальні диски:

  • Диск raid10 на основі Raid 1+0 із 4 дисків +1 spare
  • Диск raid5 на основі Raid 5 із 16 дисків +1 spare
  • 2 диски - ЗІП
Раджу в імені диска вказувати модель масиву, відразу буде зрозумілий функціонал. Також HP рекомендує використовувати невелику кількість віртуальних дисків, в яких буде велика кількість фізичних, тобто. не варто плодити купу дрібних віртуальних дисків.

Тепер потрібно створити розділи.

  • raid5_quorum – так званий диск-свідок (witness). Необхідний для організації кластера з 2 нід.
  • raid5_store - Тут ми зберігатимемо віртуальні машини та їх жорсткі диски
  • raid10_db - Тут зберігається жорсткий диск віртуальної машини MS SQL сервера
Призначаємо наші розділи на порти sas контролерів сховища.
Обов'язково необхідно включити feature Microsoft Multipath IO, інакше при сервері до обох контролерів сховища в системі буде 6 дисків, замість 3х, і кластер не збереться, видаючи помилку, мовляв, у вас присутні диски з однаковими серійними номерами, і цей візард буде правий, хочу я вам сказати.

Підключати сервери до сховища раджу по черзі:

  1. Підключили 1 сервер до 1 контролера сховища
  2. У сховищі з'явиться 1 підключений хост – дайте йому ім'я. Раджу називати так: ім'я сервера_номер контролера (A або B)
  3. І так, поки не підключіть обидва сервери до обох контролерів.

На комутаторах, до яких підключені сервери, необхідно створити 3 віртуальних підмережі (VLAN):

  1. ClusterNetwork - тут ходить службова інформація кластера (хертбіт, регулювання запису на сховище)
  2. LiveMigration - тут думаю все ясно
  3. Management - мережа для керування

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

Заводимо сервер у домен. Встановлюємо роль Hyper-V, Failover Cluster.
У налаштуваннях Multipath IO включаємо підтримку SAS пристроїв.
Обов'язково перезавантажуємо.

Наступні параметри необхідно виконати на обох серверах.

Перейменуйте всі 4 мережеві інтерфейси відповідно до їх фізичних портів (у нас це 1,2,3,4).
Налаштовуємо NIC Teaming - Додаємо всі 4 адаптери до команди, Режим (Teaming-Mode) - Switch Independent, Балансування навантаження (Load Balancing) - Hyper-V Port. Даємо ім'я команді, я назвав Team.
Тепер потрібно підняти віртуальний комутатор.
Відкриваємо powershell і пишемо:

New-VMSwitch "VSwitch" -MinimumBandwidthMode Weight -NetAdapterName "Team" -AllowManagementOS 0

Створюємо 3 віртуальних мережевих адаптери.
У тому ж PowerShell:
Add-VMNetworkAdapter -ManagementOS -Name "Management" Add-VMNetworkAdapter -ManagementOS -Name "ClusterNetwork"Add-VMNetworkAdapter -ManagementOS -Name "Live Migration"

Ці віртуальні комутатори з'являться в центрі управління мережами та загальним доступом, саме по них і ходитиме трафік наших серверів.

Налаштуйте адресацію відповідно до ваших планів.

Перекладаємо наші адапетри у відповідні VLAN'и.
У улюбленому powershell:

Set-VMNetworkAdapterVlan -ManagementOS -Access -VlanId 2 -VMNetworkAdapterName "Management" -Confirm Set-VMNetworkAdapterVlan -ManagementOS -Access -VlanId 3 -VMNetworkAdapterName "ClusterNetwork" -Confirm Set-VMNetworkAdapterVlan -ManagementOS -ManagementOS -Confirm

Тепер потрібно настроїти QoS.

При налаштування QoS by weight (за вагою), що є best practice, за заявою Microsoft, раджу розставити вагу так, щоб у загальній сумі вийшло 100, тоді можна вважати, що значення вказане в налаштуванні є гарантованим відсотком смуги пропускання. У будь-якому випадку вважається відсоток за формулою:

Відсоток смуги пропускання = встановлена ​​вага * 100 / сума всіх встановлених значеньваги
Set-VMSwitch “VSwitch” -DefaultFlowMinimumBandwidthWeight 15

Для службової інформації кластер.

Set-VMNetworkAdapter -ManagementOS -Name “Cluster” -MinimumBandwidthWeight 30

Для керування.
Set-VMNetworkAdapter -ManagementOS -Name "Management" -MinimumBandwidthWeight 5

Для Live Migration.
Set-VMNetworkAdapter -ManagementOS -Name “Live Migration” -MinimumBandwidthWeight 50

Щоб трафік ходив по мережах правильно, потрібно правильно розставити метрики.
Трафік службової інформації кластера буде ходити по мережі з найменшою метрикою. За наступною за величиною метрики мережі ходитиме Live Migration.

Давайте так і зробимо.
У нашому ненаглядному:

$n = Get-ClusterNetwork "ClusterNetwork" $n.Metric = 1000 $n = Get-ClusterNetwork "LiveMigration" $n.Metric = 1050$n = Get-ClusterNetwork "Management"

Монтуємо наш диск-свідок на ноді, з якої збиратимемо кластер, форматуємо в ntfs.

У оснастці Failover Clustering у розділі Networks перейменуйте мережі відповідно до наших адаптерів.

Все готове до збирання кластера.

У оснащенні Failover Clustering тиснемо validate. Проходимо перевірку. Після чого створюємо кластер (create cluster) і вибираємо конфігурацію кворуму (quorum configuration) Node and Disk majority, що також вважається найкращим вибором для кластерів з парною кількістю нід, а враховуючи, що у нас їх лише дві - це єдиний вибір.

У розділі Storage оснастки Failover Clustering, додайте диски. А потім по черзі додавайте їх як Cluster Shared Volume (правий клік на диску). Після додавання до папки C:\ClusterStorageз'явиться символічне посилання на диск, перейменуйте його відповідно до назви диска, доданого як Cluster Shared Volume.

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

Прошу повідомляти про помилки у ПМ.

Раджу прочитати: Microsoft Windows Server 2012 Повний посібник. Ренд Морімото, Майкл Ноел, Гай Ярдені, Омар Драубі, Ендрю Аббейт, Кріс Амаріс.

PS: Окреме спасибі пану Салахову, Загорському та Розборнову, які ганебно були забуті мною при написанні цього посту. Каюсь >_< XD

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

У Windows Server 2012 з'явилося так багато нововведень, що за всіма важко встежити. Частина найважливіших будівельних блоків нової ІТ-інфраструктури пов'язана з поліпшеннями у відмовостійкій кластеризації. Відмовостійка кластеризація зародилася як технологія захисту найважливіших додатків, необхідних для виробничої діяльності, таких як Microsoft SQL Serverта Microsoft Exchange. Але згодом стійка до відмови кластеризація перетворилася на платформу високої доступності для низки служб і додатків Windows. Відмовостійка кластеризація - частина фундаменту Dynamic Datacenter та таких технологій, як динамічна міграція. Завдяки Server 2012 та удосконаленням нового протоколу Server Message Block (SMB) 3.0 область дії відмовостійкої кластеризації стала збільшуватися, забезпечуючи безперервно доступні файлові ресурси із загальним доступом. Огляд функціональності кластеризації відмови від кластеризації в Server 2012 наведено в опублікованій в цьому ж номері журналу статті «Нові можливості кластеризації відмови кластеризації Windows Server 2012».

Обов'язкові умови відмовостійкої кластеризації

Для побудови двовузлового відмовостійкого кластера Server 2012 необхідні два комп'ютери, що працюють із версіями Server 2012 Datacenter або Standard. Це можуть бути фізичні комп'ютеричи віртуальні машини. Кластери з віртуальними вузлами можна побудувати з допомогою Microsoft Hyper-V або VMware vSphere. У цій статті використовуються два фізичних сервера, але етапи налаштування кластера для фізичних і віртуальних вузлів одні й самі. Ключова особливістьполягає в тому, що вузли повинні бути налаштовані однаково, щоб резервний вузол міг виконувати робочі навантаження у разі аварійного перемикання або динамічної міграції. Компоненти, використані в тестовому стійкому до відмови кластері Server 2012 представлені на малюнку.

Для відмовостійкого кластера Server 2012 необхідно загальне сховище даних типу iSCSI, Serially Attached SCSI або Fibre Channel SAN. У прикладі використовується iSCSI SAN. Слід пам'ятати про наступних особливостяхсховищ цього типу.

  • Кожен сервер повинен розташовувати по Крайній мірітрьома мережевими адаптерами: одним для підключення сховища iSCSI, одним для зв'язку із вузлом кластера та одним для зв'язку із зовнішньою мережею. Якщо передбачається задіяти кластер динамічної міграції, то корисно мати четвертий мережевий адаптер. Однак динамічну міграцію можна виконати і через зовнішнє мережне з'єднання - вона просто виконуватиметься повільніше. Якщо сервери використовуються для віртуалізації на основі Hyper-V та консолідації серверів, то потрібні додаткові адаптери для передачі мережного трафіку віртуальних машин.
  • У швидких мережахпрацювати завжди краще, тому швидкодія каналу зв'язку iSCSI має бути не менше ніж 1 ГГц.
  • Ціль iSCSI повинна відповідати специфікації iSCSI-3, зокрема забезпечувати постійне резервування. Це обов'язкова вимога динамічної міграції. Обладнання багатьох постачальників систем зберігання даних відповідає стандарту iSCSI 3. Якщо потрібно організувати кластер у лабораторному середовищі з невеликими витратами, обов'язково переконайтеся, що програмне забезпечення мети iSCSI відповідає iSCSI 3 та вимогам постійного резервування. Старі версії Openfiler не підтримують цей стандарт на відміну від нової версії Openfiler з модулем Advanced iSCSI Target Plugin (http://www.openfiler.com/products/advanced-iscsi-plugin). Крім того, безкоштовна версія StarWind iSCSI SAN Free Editionкомпанії StarWind Software (http://www.starwindsoftware.com/starwind-free) повністю сумісна з Hyper-V та динамічною міграцією. Деякі версії Microsoft Windows Server також можуть функціонувати як ціль iSCSI, сумісний зі стандартами iSCSI 3. До складу Server 2012 входить мета iSCSI. Windows Storage Server 2008 R2 підтримує програмне забезпечення мети iSCSI. Крім того, можна завантажити програму Microsoft iSCSI Software Target 3.3 (http://www.microsoft.com/en-us/download/details.aspx?id=19867), яка працює з Windows Server 2008 R2.

Додаткові відомості про налаштування сховища iSCSI для кластеру відмови від наведено у розділі «Приклад налаштування сховища iSCSI». Більш докладно про вимоги до відмовостійкої кластеризації наведено у статті «Failover Clustering Hardware Requirements and Storage Options» (http://technet.microsoft.com/en-us/library/jj612869.aspx).

Додавання функцій відмовостійкої кластеризації

Перший крок до створення двовузлового відмовостійкого кластера Server 2012 - додавання компонента відмовостійкого кластера з використанням диспетчера сервера. Диспетчер сервера автоматично відкривається під час реєстрації в Server 2012. Щоб додати компонент кластеру відмови, виберіть Local Server («Локальний сервер») і прокрутіть список вниз до розділу ROLES AND FEATURES. З розкривного списку TASKS виберіть Add Roles and Features, як показано на екрані 1. У результаті буде запущено майстер додавання ролей та компонентів.

Першим після запуску майстра відкриється сторінка привітання Before you begin. Натисніть кнопку Next, щоб перейти до сторінки вибору типу установки, на якій задається питання, чи потрібно встановити компонент на локальному комп'ютеріабо у службі Remote Desktop. Для даного прикладу виберіть варіант Role-based або feature-based installation і натисніть кнопку Next.

На сторінці Select destination server виберіть сервер, на якому слід встановити функції кластеру відмов. У моєму випадку це локальний сервер із ім'ям WS2012-N1. Вибравши локальний сервер, натисніть кнопку Next, щоб перейти до сторінки Select server roles. У даному прикладіроль сервера не встановлюється, тому натисніть кнопку Next. Або можна натиснути посилання Features у лівому меню.

На сторінці Select features перейдіть до Failover Clustering. Клацніть на полі перед Failover Clustering і побачте діалогове вікно зі списком різних компонентів, які будуть встановлені як частини цього компонента. Як показано на екрані 2, за замовчуванням майстер встановить засоби керування відмовостійкими кластерами та модуль відмовостійкого кластеру для Windows PowerShell. Натисніть кнопку Add Features, щоб повернутися до сторінки вибору компонентів. Натисніть кнопку Next.

На сторінці Confirm installation selections буде показана функція кластеру відмов поряд з інструментами управління і модулем PowerShell. З цієї сторінки можна повернутися та внести будь-які зміни. При натисканні кнопки Install розпочнеться власне встановлення компонентів. Після завершення інсталяції робота майстра буде завершена і функція відмовостійкого кластера з'явиться в розділі ROLES AND FEATURES диспетчера сервера. Цей процес необхідно виконати на обох вузлах.

Перевірка відмовостійкого кластера

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

Щоб відкрити диспетчер кластеру відмови, виберіть параметр Failover Cluster Manager в меню Tools в диспетчері сервера. У області Management клацніть Validate Configuration, як показано на екрані 3, щоб запустити майстер перевірки налаштувань.


Екран 3. Запуск майстра перевірки конфігурації

Спочатку виводиться сторінка привітання майстра. Натисніть кнопку Next, щоб перейти до вибору серверів або на сторінці Cluster. На цій сторінці введіть імена вузлів кластера, які потрібно перевірити. Я вказав WS2012-N1 та WS2012-N2. Натисніть кнопку Next, щоб показати сторінку Testing Options, де можна вибрати конкретні набори тестів або запустити всі тести. Принаймні, вперше я рекомендую запустити всі тести. Натисніть кнопку Next, щоб перейти на сторінку підтвердження, на якій показані тести. Натисніть кнопку Next, щоб розпочати тестування кластера. Під час тестування перевіряється версія операційної системи, налаштування мережі та сховища всіх вузлів кластера. Зведення результатів відображається після завершення тесту.

Якщо тести перевірки виконані успішно, можна створити кластер. На екрані 4 показаний екран зведення успішно перевіреного кластера. Якщо при перевірці виявлено помилки, звіт буде позначений жовтим трикутником (попередження) або червоним значком "X" у разі серйозних помилок. З попередженнями слід ознайомитись, але їх можна ігнорувати. Серйозні помилки потрібно виправити перед створенням кластера.

В результаті буде запущено майстер створення кластера, робота якого починається зі сторінки привітання. Натисніть кнопку Next, щоб перейти на сторінку вибору серверів на екрані 6. На цій сторінці введіть імена всіх вузлів кластера, а потім натисніть кнопку Next.

На сторінці Access Point for Administering the Cluster слід вказати ім'я та IP-адресу кластера, які мають бути унікальними в мережі. На екрані 7 видно, що ім'я мого кластера WS2012-CL01, а IP-адреса – 192.168.100.200. При використанні Server 2012 IP-адреса кластера може бути призначена через DHCP, але я віддаю перевагу для своїх серверів статично призначається IP-адресу.

Після введення імені та IP-адреси натисніть кнопку Next, щоб побачити сторінку підтвердження (екран 8). На цій сторінці можна перевірити налаштування, зроблені під час створення кластера. За потреби можна повернутися та внести зміни.

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

Майстер створення кластера автоматично вибирає сховище для кворуму, але часто він вибирає не той диск кворуму, який хотілося б адміністратору. Щоб перевірити, який диск використовується для кворуму, відкрийте диспетчер кластеру відмови та розгорніть кластер. Потім відкрийте вузол Storage та клацніть вузол Disks. Диски, доступні у кластері, будуть показані на панелі Disks. Диск, вибраний майстром для кворуму кластера, буде вказаний у розділі Disk Witness in Quorum.

У цьому прикладі для кворуму був використаний Cluster Disk 4. Його розмір 520 Мбайт трохи більше мінімального значеннядля кворуму 512 Мбайт. Якщо потрібно використовувати інший диск для кворуму кластера, можна змінити налаштування кластера, клацнувши правою кнопкою миші ім'я кластера в диспетчері кластеру відмови, вибравши пункт More Actions і Configure Cluster Quorum Settings. В результаті з'явиться майстер вибору конфігурації кворуму, за допомогою якого можна змінити настройки кворуму кластера.

Налаштування загальних томів кластера та ролі віртуальних машин

Обидва вузли в моєму кластері мають роль Hyper-V, оскільки кластер призначений для віртуальних машин з високою доступністю, що забезпечують динамічну міграцію. Щоб спростити динамічну міграцію, потрібно налаштувати загальні томи кластера Cluster Shared Volumes (CSV). На відміну від Server 2008 R2, у Server 2012 загальні томи кластера включені за замовчуванням. Однак все ж таки потрібно вказати, яке сховище слід використовувати для загальних томів кластера. Щоб увімкнути CSV на доступному диску, розгорніть вузол Storage та виберіть вузол Disks. Потім оберіть диск кластера, який потрібно використовувати як CSV, і клацніть посилання Add to Cluster Shared Volumes на панелі Actions диспетчера кластеру відмови (екран 9). Поле Assigned To цього кластерного диска зміниться з Available Storage на Cluster Shared Volume (загальний том кластера), як показано на екрані 9.

У цей час диспетчер відмовостійкого кластера налаштовує сховище диска кластера для CSV, зокрема додає точку підключення системному диску. У цьому прикладі загальні томи кластера включаються як на Cluster Disk 1, так і на Cluster Disk 3 з додаванням наступних точок підключення:

* C:ClusterStorageVolume1 * C:ClusterStorageVolume2

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

Щоб додати нову роль, виберіть ім'я кластера на панелі навігації диспетчера кластеру відмови та клацніть посилання Configure Roles на панелі Actions, щоб запустити майстер високої готовності. Натисніть кнопку Next на сторінці привітання, щоб перейти до сторінки вибору ролі. Перейдіть до списку ролей, доки не побачите роль віртуальної машини, як показано на екрані 10. Виберіть роль і натисніть кнопку Next.

На сторінці вибору віртуальної машини будуть перераховані всі VM на всіх вузлах кластера, як показано на екрані 11. Прокрутіть список та виберіть віртуальні машини, яким необхідно забезпечити високу готовність. Натисніть кнопку Next. Підтвердивши свій вибір, натисніть Next, щоб додати ролі віртуальної машини диспетчеру відмовостійкого кластера.

Приклад налаштування сховища iSCSI

Для відмовостійкого кластера Windows Server 2012 вимагає загальне сховище, яке може бути типу iSCSI, Serially Attached SCSI або Fibre Channel SAN. У цьому кластері відмов використовується Channel SAN.

Спочатку в мережі iSCSI SAN було створено три логічні пристрої LUN. Один LUN створено для диска кворуму кластера (520 Мбайт). Інший LUN призначений для 10 віртуальних машин та має розмір 375 Гбайт. Третій LUN виділено для невеликої віртуальної тестової машини. Усі три LUN представлені у форматі NTFS.

Після того, як було створено LUN, було виконано налаштування iSCSI Initiator на обох вузлах Server 2012. Щоб додати цілі iSCSI, було вибрано iSCSI Initiator у меню Tools у диспетчері сервера. На вкладці Discovery я натиснув кнопку Discover Portal. В результаті з'явилося діалогове вікно Discover Portal, куди було введено IP-адресу (192.168.0.1) та порт iSCSI (3260) мережі SAN.

Потім я перейшов на вкладку Targets та натиснув кнопку Connect. У діалоговому вікні Connect To Target ("Підключення до цільового сервера") я ввів цільове ім'я iSCSI SAN. Воно було отримано із властивостей SAN. Ім'я залежить від постачальника SAN, імені домену та імен створених LUN. Крім цільового імені я встановив режим Add this connection to the list of Favorite Targets.

Після встановлення iSCSI ці LUN з'явилися на вкладці Targets iSCSI Initiator. Щоб автоматично підключати LUN під час запуску Server 2012, я переконався, що вони перераховані на вкладці Favorite Targets, як показано на екрані A.

Екран A. Налаштування iSCSI Initiator

Нарешті, було призначено буквене позначення пристроям LUN за допомогою оснащення Disk Management консолі управління Microsoft(MMC). Я вибрав Q для диска кворуму та W для диска, який використовується для віртуальних машин та загальних томів кластера (CSV). При призначенні літерних позначень необхідно спочатку призначити їх на одному вузлі. Потім потрібно перевести диски в автономний режимта зробити аналогічні призначення на другому вузлі. Результати призначення літер для дисків для одного вузла наведені на екрані B. Під час створення кластера диски будуть показані як доступне сховище.



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

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

Розробка обчислювальних кластерів не є сильною стороною Microsoft. Про це свідчить, у тому числі, той факт, що розробки компанії не потрапили до списку Top-500 суперкомп'ютерів. Тому цілком логічно, що в лінійці Windows Server 2012 відсутня редакція HPC (High-performance computing – високопродуктивні обчислення).

Крім того, враховуючи особливості високопродуктивних обчислень, платформа Windows Azure здається перспективнішою. Тому компанія Microsoft зосередила увагу на кластерах високої доступності.

Кластери у Windows.

Вперше підтримка кластерів була реалізована компанією Microsoft ще в операційній системі Windows NT 4 Server Enterprise Edition у вигляді технології Microsoft Cluster Service (MSCS). В операційній системі Windows Server 2008 вона перетворилася на компонент Failover Clustering. По суті, це кластери з обробкою відмови або високодоступні кластери, хоча іноді їх не цілком коректно називають стійкими до відмови.

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

Кластер високої доступності на Windows включає як мінімум два вузли з встановленими операційними системами і відповідними ролями. Вузли мають бути підключені до зовнішньої мережіта внутрішньої мережі, необхідної для обміну службовими повідомленнямидо загального сховища службових ресурсів (наприклад, диск-свідок для кворуму). Крім того, в систему входять і дані додатків, що кластеризуються. У ситуації, коли послуги виконуються тільки одному з вузлів, реалізується схема Active-Passive, тобто послуги виконуються однією вузлі, а другий працює у черговому режимі. Коли обидва вузли несуть корисне навантаження, реалізується схема Active-Active.

З першої реалізації, підтримка кластерів у Windows істотно змінилася. Була реалізована підтримка файлових та мережевих служб, пізніше SQL Server (в операційній системі Windows Server 2000), Exchange Server (в Windows Server 2003) та інші стандартні служби та ролі, включаючи Hyper-V (в операційній системі Windows Server 2008). Було покращено масштабованість (до 64 вузлів у Windows Server 2012), список сервісів, що кластеризуються, був розширений.

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

В операційній системі Windows Server 2008 R2 реалізовані загальні томи кластера Hyper-V (CSV), що дозволяють вузлам одночасно звертатися до однієї файлової системи NTFS. В результаті кілька кластерних віртуальних машин можуть використовувати одну адресу LUN та мігрувати з вузла на вузол незалежно.

У Windows Server 2012 кластерну підтримку Hyper-V було вдосконалено. Було додано можливість керування лише на рівні цілого кластера пріоритетами віртуальних машин, визначальних порядок перерозподілу пам'яті, відновлення віртуальних машин у разі виходу з ладу вузлів чи запланованої масової міграції. Було розширено можливості моніторингу - у разі збою контрольованої служби з'явилася можливість перезапуску не лише самої служби, а й усієї віртуальної машини. Є можливість здійснення міграції на інший, менш завантажений вузол. Реалізовано й інші, не менш цікаві нововведення щодо кластеризації.

Кластери в Windows Server 2012

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

SMB 3.0

Нова версія SMB 3.0 використовується для мережного обміну даними. Цей протокол затребуваний під час читання, запису та інших файлових операцій на віддалених ресурсах. У новій версії реалізовано велику кількість удосконалень, які дозволяють оптимізувати роботу SQL Server, Hyper-V та файлових кластерів. Звернімо увагу на такі оновлення:

  • прозора відмовостійкість. Ця новація забезпечує безперервність виконання операцій. Під час збою одного з вузлів файлового кластера поточні операції автоматично передаються іншому вузлу. Завдяки цьому нововведенню стала можливою реалізація схеми Active-Activeза допомогою до 8 вузлів.
  • масштабування.Завдяки нової реалізаціїзагальних томів кластера (версія 2.0) існує можливість одночасного доступу до файлів через всі вузли кластера, за рахунок чого досягається агрегація пропускної спроможності та здійснюється балансування навантаження.
  • SMB Direct.Реалізовано підтримку мережевих адаптерів з технологією RDMA. Технологія RDMA (Віддалений прямий доступ до пам'яті) дозволяє передавати дані безпосередньо в пам'ять програми, істотно звільняючи центральний процесор.
  • SMB Multichannel.Дозволяє агрегувати пропускну здатність і підвищує стійкість до відмов за наявності декількох мережевих шляхівміж сервером з підтримкою SMB 3.0 та клієнтом.

Необхідно сказати, що для використання цих можливостей підтримка SMB 3.0 повинна бути присутня на обох кінцях з'єднання. Компанія Microsoft рекомендує використання серверів та клієнтів одного покоління (у випадку з Windows Server 2012 такою клієнтською платформою є Windows 8). На жаль, сьогодні Windows 7 підтримує тільки SMB версії 2.1.

Storage Spaces.

Технологія Storage Spaces реалізована вперше в операційних системах Windows Server 2012 та Windows 8. Реалізовано підтримку нової файлової системи ReFS, яка забезпечує функції підвищення стійкості до відмов. Є можливість призначення дисків у пулі для гарячої заміни (у разі відмови інших носіїв або для швидкої замінивичерпав свій ресурс SSD). Крім того, розширені можливості тонкого налаштуванняза допомогою PowerShell.

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

  • простий (є аналогом RAID 0);
  • дзеркало (двостороннє дзеркало є аналогом RAID1, тристороннє дзеркало є більш складну схемуна кшталт RAID 1E)
  • з контролем парності (є аналогом RAID 5. Даний варіант забезпечує мінімальний перевитрату простору при мінімальній відмовостійкості).

Технологія Storage Spaces є абсолютним нововведенням. Схожі можливості були давно реалізовані в Windows Server, наприклад, у формі динамічних дисків. Технологія Storage Spaces дозволяє зробити використання цих можливостей більш зручними і забезпечити новий рівень використання. Серед інших переваг Storage Spaces необхідно відзначити тонку ініціалізацію (thin provisioning), яка дає можливість призначати віртуальним дискам розміри понад доступні насправді з розрахунку на додавання до відповідного пулу нових накопичувачів згодом.

Одне з найбільш непростих питань, пов'язаних із технологією Storage Spaces – це продуктивність. Як правило, програмні реалізації RAIDпоступаються за продуктивністю апаратним варіантам. Однак, якщо йдеться про файловий сервер, то Storage Spaces отримує у своє розпорядження великий обсяг оперативної пам'яті та потужний процесортому необхідно тестування з урахуванням різних видівнавантаження. З цієї точки зору особливої ​​цінності набувають можливості тонкого налаштування з використанням PowerShell.

Технологія Storage Spaces пропонує відмову від RAID-контролерів та дорогих системзберігання, перенісши з логіку до рівня операційної системи. Ця ідея розкриває всі свої переваги і виявляється досить привабливою разом із ще одним нововведенням.

Scale-Out File Server (SOFS).

Ще одним нововведенням є режим кластеризованої ролі File Server у Windows Server 2012, який отримав назву Scale-Out File Server. Тепер реалізовано підтримку двох типів кластеризації, назви яких повністю звучать як File Sever for General Use та Scale-Out File Server (SOFS) for application data. Кожна з технологій має свої сфери застосування, а також свої переваги та недоліки.

Всецільовий файловий сервер є добре відомим типом кластера Active-Passive. У свою чергу SOFS являє собою кластер Active-Active, будучи дійсно стійкою до відмови конфігурацією. Для спільного доступу до відповідних папок використовується опція Continuously Available.

Крім відмінних характеристиквідмовостійкості це забезпечує підвищення пропускної спроможності за умови раціонального проектування мережевої архітектури. Проксіруюча файлова система CSV 2.0 (CSVFS) дозволяє зменшити вплив CHKDSK, дозволяючи утиліті виконувати необхідні операції, зберігаючи при цьому можливість роботи з томом активних програм. Реалізовано кешування читання із CSV. Використання CSV забезпечує простоту та зручність розгортання та управління. Користувачеві потрібно створити звичайний кластер, налаштувати том CSV і активувати роль файлового сервера як Scale-Out File Server for application data.

Завдяки простоті та функціональності запропонованого рішення сформувався новий клас обладнання «кластер-у-коробці» (Сluster-in-a-Box, CiB). Як правило, це шасі з двома блейд-серверами та дисковим масивом SAS JBOD з підтримкою Storage Spaces. Тут важливо, щоб SAS JBOD були двопортовими і був SAS HBA для реалізації перехресного підключення.

Така організація системи спрямована саме на підтримку SOFS. Враховуючи, що iSCSI target стандартно інтегрований у Windows Server 2012 і може бути кластеризована, таким чином може реалізувати «саморобну» систему зберігання даних на базі всецільової операційної системи.

Однак слід мати на увазі, що власником CSV, як і раніше, є один з вузлів, який відповідає за всі операції з метаданими. При велику кількістьметаданих може спостерігатися зниження продуктивності, тому для SOFS не рекомендується використовувати сценарій Information Worker, тоді як Hyper-V і SQL Server ідеально підходять для цього, зокрема завдяки функціям агрегації пропускної спроможності.

Інші нововведення технологій кластеризації Windows.

Вище ми перерахували лише найважливіші та великі нововведення в області кластеризації у Windows Server 2012. Інші менші нововведення, однак, теж з'явилися не випадково.

Було розширено підтримку віртуалізації з допомогою істотного спрощення створення гостьових кластерів (з віртуальних машин). На відміну від Windows Server 2008 R2, де для цього потрібно було надати iSCSI Target загальне користуванняВ операційних системах Windows Server 2012 з'явилася функція, що дозволяє віртуалізувати FC-контролер (за аналогією з мережевими адаптерами), за рахунок чого віртуальні машини отримують можливість безпосереднього доступу до LUN. Реалізовано і простіший варіант із використанням загальної мережевий папки SMB 3.0 для гостьових Windows Server 2012 року.

Однією з важливих, але нетривіальних завданьє установка програмних оновленьу кластері. При цьому може знадобитися перезавантаження вузлів, тому процедура має контролюватись. В операційній системі Windows Server 2012 пропонується інструмент Cluster-Aware Updating, який працює наступним чином: один із вузлів призначається координатором і стежить за наявністю оновлень, завантажує їх на інші вузли та виконує почергове оновлення вузлів, починаючи з тих, що завантажені найменше. Завдяки цьому доступність кластера зберігається на максимально можливому рівні протягом усього процесу оновлення.

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

Нововведення у Windows Server 2012 R2.

Операційна система Windows Server 2012 R2 не є простою оновленням Windows Server 2012, а є повноцінною новою операційною системою. Нововведення, реалізовані в Windows Server 2012 R2, перекладають деякі можливості серверної платформина якісно новий рівень. Насамперед це стосується SOFC та Hyper-V.

Високодоступні віртуальні машини.

Спрощено процедуру створення гостьових кластерів, оскільки тепер з'явилася можливість використовувати як спільне сховище звичайні VHDX, які всередині віртуальної машини будуть представлені як Shared SAS-диски. При цьому самі VHDX повинні бути розміщені на CSV або спільних папках SMB 3.0. При цьому у віртуальних машинах можна використовувати як Windows Server 2012 R2, так і Windows Server 2012 (з оновленими інтеграційними компонентами).

Опція DrainOnShutdown покликана позбавити системних адміністраторів помилок і зайвої роботи. Функція активована за замовчуванням і при планових перезавантаженнях або вимкненнях заздалегідь переводить вузол у режим обслуговування при якому евакуюються всі кластеризовані ролі. У цьому відбувається міграція активних віртуальних машин інші вузли кластера Hyper-V.

Також у новій операційній системі Windows Server 2012 R2 Hyper-V здійснює моніторинг мережевих інтерфейсів у віртуальних машинах і у разі виникнення проблеми запускає процес їх міграції на вузол, де доступна зовнішня мережа.

Кворум.

Окрім динамічного кворуму у Windows Server 2012 R2 реалізовано ще й динамічний диск-свідок (witness). При зміні числа вузлів його голос може бути автоматично врахований так, щоб загальна кількість голосів залишалася непарною. У випадку, якщо диск недоступний, його голос буде просто обнулений. Така схема дозволяє повністю покластися на автоматичні механізми відмовившись від моделей кворуму.

Збільшено надійність роботи кластерів, розміщених на двох майданчиках. Часто при такій реалізації на кожному майданчику знаходиться половина вузлів, тому порушення комунікації між майданчиками може виникнути проблема з формуванням кворуму. Хоча з більшістю подібних ситуацій успішно справляється механізм динамічного кворуму, Windows Server 2012 R2 має можливість призначити одному з майданчиків низький пріоритет, щоб у разі збою кластер завжди функціонував на основному майданчику. Якщо кластер був запущений з примусовим кворумом, то при відновленні зв'язку з віддаленим майданчиком служби кластера будуть перезапущені в автоматичному режимі і весь кластер буде знову об'єднаний.

CSV 2.1

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

Ціла низка нововведень у CSV забезпечує більш ефективне використання SOFC і Storage Spaces. Додана підтримка файлової системи ReFS, яка має більш досконалу, ніж NTFS внутрішню організацію. Швидше за все, поступово ця файлова система займе провідне положення в продуктах компанії Microsoft. Також у Windows Server 2012 R2 реалізовано механізм дедуплікації, який раніше був прерогативою всецільового файлового сервера. Активація дедуплікації призводить до вимкнення CSV Block Cache, однак у деяких випадках вона може бути досить ефективною. Тому CSV можуть створюватися на дискових просторах з контролем парності.

У Windows Server 2012 R2 можливість комбінувати накопичувачі різних типів набула особливого значення з багаторівневими просторами. З'явилася можливість формувати два рівні швидкий (на основі SSD) та ємний (на основі жорстких дисках) та при створенні віртуального диска виділяти певний обсяг з кожного з них. Далі відповідно до деякого розкладу вміст віртуального диска аналізуватиметься і розміщуватиметься блоками по 1 МБ на більш швидких або повільних носіях залежно від затребуваності. Іншим застосуванням багаторівневих просторів є реалізація кешу зі зворотним записом SSD. У моменти пікових навантажень запис складає швидкі твердотільні накопичувачі, і потім холодні дані переміщаються більш повільні жорсткі диски.

Нововведення щодо CSV і Storage Spaces є найбільш суттєвими у Windows Server 2012 R2. На їх основі можна розгортати не просто надійні файлові сервери, а потужні та гнучкі системи зберігання даних із чудовими можливостями масштабування та відмінною відмовостійкістю, що надають у розпорядження користувача широкий спектр сучасних інструментів.

Основне завдання статті наочно показати, як розгорнути відмовостійкий кластер MS SQL Server 2012. Матеріал написаний і буде цікавим для новачків. Досвідчені гуру і всі, хто вже знайомий з цим питанням, навряд чи знайдуть щось нове і корисне для себе особисто.

Завдання, яке стоїть перед нами - забезпечити безперебійну роботута високу доступність бази даних у клієнт-серверному варіантірозгортання.

Етап 1 - Підготовка

Основні вимоги до апаратного та програмного забезпечення:

  • Наявність мінімум 2-х вузлів (фізичних/віртуальних), СГД
  • MS Windows Server, MS SQL ServerСХД
  • СГД
    1. Доступний iSCSI диск для баз даних
    2. Доступний iSCSI диск для MSDTC
    3. Quorum диск

Тестовий стенд:

  • Windows Server 2012R2 з ролями AD DS, DNS, DHCP (WS2012R2AD)
  • Сховище iSCSI*
  • 2xWindows Server 2012R2(для кластера WS2012R2C1 та WS2012R2C2)
  • Windows Server 2012R2 із піднятою службою сервера 1С (WS2012R2AC)

*як варіант можна використовувати Роль сховища на Windows Server 2012R2, софтверне рішення від StarWind або реальний мережний пристрій iSCSI

Технічно можна обійтися 3 серверами, сумісивши всі необхідні ролі на домен контролері, але в польових умовах так чинити не рекомендується.

Спочатку вводимо в домен сервера WS2012R2C1 та WS2012R2C2 на кожному з них встановлюємо роль "Отлакостійка кластеризація"
Після встановлення ролі запускаємо оснастку "Диспетчер відмовостійкості кластерів" і переходимо в Майстер створення кластерів, де конфігуруємо наш відмовостійкий кластер: створюємо Quorum (загальний ресурс) та MSDTC(iSCSI).

Етап 2 - Встановлення MS SQL Server

Для встановлення нам знадобиться настановний дистрибутив MS SQL Server. Запустимо майстер установки та виберемо варіант встановлення нового екземпляра кластера:

Уважно читаємо та приймаємо ліцензійну угоду:

Отримуємо доступні оновлення:

Проходимо перевірку конфігурації (Warning MSCS пропускаємо):

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

Вибираємо компоненти, які нам необхідні (для поставленого завдання досить основних):

Ще одна перевірка настановної конфігурації:

Перевірка доступного простору:

Вибираємо диск для розташування баз даних кластера:

Конфігурація мережевого інтерфейсу кластера (рекомендується вказати адресу вручну):

Вказуємо дані адміністратора (можна завести окремого користувачадля MSSQL):

Один з важливих етапів- цей вибір порядку сортування (Collation) після інсталяції змінити вкрай проблематично:

Параметри автентифікації на сервері (у нашому випадку вибрано змішаний варіант, хоча безпечніше використовувати лише доменну автентифікацію):

Вибір директорій зберігання загальних файлів кластера (у версіях MS SQL Server 2012 та старших TempDB можна зберігати на кожній ноді і не виносити в загальне сховище):

Ще кілька перевірок:



Нарешті приступаємо до установки (процес може тривати тривалий час):

Налаштування та встановлення базової ноди закінчено, про що нам повідомляє "зелений" рапорт

Етап 3 - додавання другої ноди до кластера MSSQL

Далі необхідно додати до кластера другу ноду, т.к. без неї про стійкість до відмови не доводиться.
Налаштування та встановлення в рази простіше. На другому сервері (ВМ) запускаємо майстер установки MS SQL Server:

  • Проходимо стартовий тест
  • Вводимо ліцензійний ключ:
  • Читаємо та приймаємо ліцензійну угоду:
  • Отримуємо оновлення:
  • Проходимо тести щодо виконання вимог для встановлення ноди (MSCS warning - пропускаємо):

Вибираємо в який кластер додавати ноду:

Переглядаємо та приймаємо мережеві настройки екземпляра кластера:

Вказуємо користувача та пароль (теж що і на першому етапі):

Знову тести та процес встановлення:

По завершенню ми маємо отримати таку картину:

Вітаю установку закінчено.

Етап 4 – перевірка працездатності

Переконаємося, що все працює як слід. Для цього перейдемо в оснастку "Диспетчер відмовостійкого кластера":

На даний момент у нас використовується друга нода (WS2012R2C2) у разі збою відбудеться перемикання на першу ноду (WS2012R2C1).
Спробуємо підключитися безпосередньо до кластера сервера MSSQL, для цього нам знадобиться будь-який комп'ютер у доменній мережі із встановленою Management Studio MSSQL. При запуску вказуємо ім'я нашого кластера та користувача (або залишаємо доменну авторизацію).