Модуль 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 пропонує кілька сімейств машин, оптимізованих під різні навантаження.
Основні сімейства:
Розділ «Основні сімейства:»- General Purpose (E2, N2, N2D): Робочі конячки. Найкращий баланс ціни та швидкості. E2 — найдешевші, підходять для веб-серверів та розробки. N2 — потужніші, для продакшн-баз даних.
- Compute Optimized (C2, C3): Максимальна потужність процесора. Для ігор, кодування відео та наукових розрахунків.
- Memory Optimized (M1, M2, M3): Величезні обсяги RAM (до 12 ТБ!). Для SAP HANA та аналітики в пам’яті.
- 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 автоматично його видаляє і запускає новий із того самого шаблону.
Практична вправа: Створення групи з автомасшабуванням
Розділ «Практична вправа: Створення групи з автомасшабуванням»- Створіть шаблон (Instance Template), вказавши образ ОС та скрипт запуску (встановіть nginx).
- Створіть групу (MIG) на основі цього шаблону.
- Налаштуйте автомасшабування:
- Мінімальна кількість: 1.
- Максимальна: 3.
- Цільове завантаження CPU: 60%.
- Створіть здорову перевірку (Health Check) для порту 80.
Наступний модуль
Розділ «Наступний модуль»Переходьте до Модуля 2.4: Cloud Storage (GCS) — ви навчитеся зберігати файли, керувати їхнім життєвим циклом та налаштовувати безпечний доступ через підписані посилання.