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

Модуль 2.3: GCP Compute Engine

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

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

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

У грудні 2022 року популярний e-commerce магазин запустив святковий розпродаж. Їхня архітектура була простою: набір віртуальних машин Compute Engine за балансувальником навантаження. О 9 ранку у Чорну п’ятницю трафік зріс у 15 разів. Команда підготувала 24 потужні сервери, але вони завантажилися на 100% за лічені хвилини. Поки інженери вручну запускали нові машини, встановлювали софт та додавали їх у балансувальник, минуло півгодини. За цей час компанія втратила $1.8 мільйона через покинуті кошики.

Цей випадок доводить: Compute Engine — це не просто “віртуалки”. Це програмована фабрика обчислень. Якщо ви правильно оберете сімейство машин, налаштуєте шаблони та Managed Instance Groups (MIG) з автомасшабуванням, ваша система буде сама “дихати” разом із трафіком, заощаджуючи гроші вночі та витримуючи піки вдень.

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


Сімейства машин: Обираємо правильне залізо

Розділ «Сімейства машин: Обираємо правильне залізо»

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

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

Розділ «Основні сімейства:»
  1. General Purpose (E2, N2, N2D): Робочі конячки. Найкращий баланс ціни та швидкості. E2 — найдешевші, підходять для веб-серверів та розробки. N2 — потужніші, для продакшн-баз даних.
  2. Compute Optimized (C2, C3): Максимальна потужність процесора. Для ігор, кодування відео та наукових розрахунків.
  3. Memory Optimized (M1, M2, M3): Величезні обсяги RAM (до 12 ТБ!). Для SAP HANA та аналітики в пам’яті.
  4. Accelerator Optimized (A2, G2): З вбудованими відеокартами (NVIDIA GPU). Для навчання нейромереж та рендерингу.

Spot VMs: Економія до 91%

Розділ «Spot VMs: Економія до 91%»

Spot-машини — це вільні потужності Google, які вони віддають за безцінь. Головний нюанс: Google може забрати таку машину в будь-який момент, попередивши за 30 секунд.

  • On-Demand: Повна ціна, працює завжди.
  • Spot: Знижка 60-91%, може вимкнутися. Ідеально для пакетної обробки даних, CI/CD ранерів та відмовостійких мікросервісів.

Managed Instance Groups (MIG): Автоматизація та надійність

Розділ «Managed Instance Groups (MIG): Автоматизація та надійність»

Ви майже ніколи не повинні запускати окремі віртуальні машини в продакшні. Використовуйте MIG.

Що дає MIG?

  • Автомасшабування: додає сервери, коли CPU > 60%, і видаляє, коли навантаження спадає.
  • Самовідновлення: якщо сервер “завис” або видалений, MIG автоматично запустить новий такий самий.
  • Оновлення без простоїв: MIG може замінювати сервери по черзі (Rolling Update), щоб ваш сайт не відключався під час деплою.

Cloud Load Balancing: Глобальний Anycast

Розділ «Cloud Load Balancing: Глобальний Anycast»

Балансувальник GCP унікальний. Він дає вам одну IP-адресу на весь світ. Коли користувач у Токіо заходить на ваш сайт, Google направляє його в найближчий до нього дата-центр за допомогою Anycast-маршрутизації. Вам не потрібно налаштовувати складний Geo-DNS.


ПомилкаЧому це стаєтьсяЯк виправити
Використання старих машин N1Вони перші в списку, але дорожчіПереходьте на N2 або E2 — вони швидші і дешевші за ту саму ціну
Ручна зміна серверів”Зайду по SSH і підправлю конфиг”Будь-яка ручна зміна зникне, якщо MIG перезапустить сервер. Використовуйте Startup Scripts
Публічні IP на всіх серверахПростіше підключатисяЦе небезпечно. Використовуйте Identity-Aware Proxy (IAP) для доступу без публічних IP
Відсутність лімітів автомасшабування”Хай росте, скільки треба”Завжди ставте “Max instances”, щоб помилка в коді не витратила весь ваш бюджет за ніч

1. У чому різниця між Spot VM та звичайною машиною?

Spot VM коштує до 90% менше, але Google може її вимкнути будь-коли. Звичайна машина гарантовано працює, доки ви її не видалите.

2. Що таке "Самовідновлення" (Self-healing) у MIG?

Це функція, яка постійно перевіряє здоров’я серверів (напр. чи відповідає сайт на порту 80). Якщо сервер не відповідає, MIG автоматично його видаляє і запускає новий із того самого шаблону.


Практична вправа: Створення групи з автомасшабуванням

Розділ «Практична вправа: Створення групи з автомасшабуванням»
  1. Створіть шаблон (Instance Template), вказавши образ ОС та скрипт запуску (встановіть nginx).
  2. Створіть групу (MIG) на основі цього шаблону.
  3. Налаштуйте автомасшабування:
    • Мінімальна кількість: 1.
    • Максимальна: 3.
    • Цільове завантаження CPU: 60%.
  4. Створіть здорову перевірку (Health Check) для порту 80.

Переходьте до Модуля 2.4: Cloud Storage (GCS) — ви навчитеся зберігати файли, керувати їхнім життєвим циклом та налаштовувати безпечний доступ через підписані посилання.