Перейти до вмісту

Модуль 3.3: ВМ та VM Scale Sets

Складність: [MEDIUM] | Час на виконання: 2 год | Передумови: Модуль 3.2 (Віртуальні мережі)

Чому цей модуль важливий

Розділ «Чому цей модуль важливий»

У листопаді 2020 року SaaS-компанія, яка запускала весь свій сервіс на одній віртуальній машині в регіоні East US, пережила 9-годинний збій. На фізичному сервері в дата-центрі Microsoft сталося апаратне пошкодження. Оскільки у компанії не було резервної копії машини в іншій зоні та не було налаштовано балансувальник навантаження, їхні клієнти не могли користуватися платформою цілий робочий день. Вартість другої машини склала б $165 на місяць, тоді як збитки від простою оцінили у $420 000.

Віртуальні машини (ВМ) залишаються основою хмарних обчислень. Навіть контейнери та безсерверні функції зазвичай працюють на базі ВМ “за лаштунками”. Розуміння того, як обирати розмір машини, як захистити її від збоїв заліза та як автоматично масштабувати флот серверів — це база для будь-якого DevOps інженера в Azure.

У цьому модулі ви навчитеся розрізняти сімейства машин, зрозумієте різницю між Availability Zones та Availability Sets, опануєте роботу з керованими дисками та налаштуєте VM Scale Sets — систему, яка сама додає сервери при зростанні навантаження.


Azure пропонує сотні варіантів розмірів, згрупованих у сімейства.

Основні сімейства:

Розділ «Основні сімейства:»
  • B (Burstable): Дешеві машини для розробки. Вони накопичують “кредити”, поки ви ними не користуєтеся, і витрачають їх під час навантаження.
  • D (General Purpose): Збалансовані машини для веб-серверів та невеликих баз даних.
  • F (Compute Optimized): Потужні процесори. Для обробки відео або математичних розрахунків.
  • E (Memory Optimized): Багато оперативної пам’яті. Для великих БД та кешів (напр. Redis).

Схема іменування: Standard_D4s_v5

  • D: сімейство.
  • 4: кількість ядер (vCPU).
  • s: підтримує швидкі диски Premium SSD.
  • v5: покоління (чим вище, тим новіше залізо).

Висока доступність: Zones vs Sets

Розділ «Висока доступність: Zones vs Sets»

Azure дає два способи захисту від збоїв:

  1. Availability Zones (AZ): Ви запускаєте дві машини в різних дата-центрах одного регіону. Якщо один дата-центр згорить — інший працюватиме. Це стандарт для продакшну (99.99% SLA).
  2. Availability Sets: Ви запускаєте машини в одному дата-центрі, але на різних стійках із незалежним живленням. Захищає тільки від дрібних поломок (99.95% SLA).

Managed Disks: Диски для ваших ВМ

Розділ «Managed Disks: Диски для ваших ВМ»
  • Standard HDD: Найдешевші, для рідкісного доступу.
  • Standard SSD: Гарний вибір для легких веб-серверів.
  • Premium SSD: Мінімум для продуктових баз даних.
  • Ultra Disk: Максимальна швидкість для найважчих навантажень.

VM Scale Sets (VMSS): Автомасшабування

Розділ «VM Scale Sets (VMSS): Автомасшабування»

Це група ідентичних віртуальних машин. Ви не керуєте кожною машиною окремо, ви керуєте всією групою.

Можливості VMSS:

  • Автомасшабування: якщо CPU > 75%, система сама додає нові сервери.
  • Інтеграція з балансувальником: нові машини автоматично отримують трафік.
  • Оновлення: можна оновити код на всіх серверах по черзі.

ПомилкаЧому це стаєтьсяЯк виправити
Продакшн на одній ВМ”Поки що вистачає”Завжди використовуйте мінімум 2 екземпляри в різних AZ
Використання HDD для ОСЕкономія пари доларівHDD занадто повільні; система “гальмуватиме”. Використовуйте хоча б Standard SSD
Забуті диски після видалення ВМПри видаленні машини диски часто залишаютьсяЗавжди перевіряйте і видаляйте “осиротілі” диски, бо ви продовжуєте за них платити
Масштабування “вгору” замість “вшир”Простіше змінити розмір однієї машиниБільша машина — це все одно одна точка відмови. Використовуйте VMSS для горизонтального масштабування

1. Що таке "Burstable" машини (серія B) і для чого вони найкраще підходять?

Це машини, які коштують значно дешевше, але мають обмежену базову потужність. Вони ідеальні для задач, де навантаження не постійне: сервери розробки, бастіон-хости або невеликі внутрішні інструменти.

2. У чому різниця між зупинкою (Stop) та деалокацією (Stop/Deallocate) віртуальної машини?

Проста зупинка зберігає за вами залізо, і ви продовжуєте за нього платити. Деалокація звільняє ресурси Microsoft, і ви перестаєте платити за CPU/RAM (але все ще платите за диски). Завжди використовуйте Deallocate для економії.


Практична вправа: Створення веб-флоту

Розділ «Практична вправа: Створення веб-флоту»
  1. Створіть VM Scale Set на основі образу Ubuntu.
  2. Оберіть розмір Standard_B2s.
  3. Налаштуйте зони: розподіліть машини між 1 та 2 зонами доступності.
  4. Додайте правило автомасшабування: додавати 1 машину, якщо CPU > 70%.
  5. Підключіть стандартний Load Balancer.

Переходьте до Модуля 3.4: Blob Storage та Data Lake — ви навчитеся зберігати масиви неструктурованих даних, від активних файлів до глибоких архівів, та налаштовувати безпечний доступ до них.