Хмарний сервер для Docker Swarm у Європі
Docker Swarm - це вбудований режим кластеризації для Docker Engine. Він простіший за Kubernetes, працює зі стандартними файлами docker-compose після незначних змін і є практичним шляхом для команд, які вже використовують Docker, але хочуть запускати навантаження на кількох хостах.
Якщо ваша команда переходить від docker-compose на одному сервері до багатохостової конфігурації, Docker Swarm варто оцінити перед тим, як зобов’язатися до складності Kubernetes.
Чому хостинг у ЄС важливий для Docker Swarm
Docker Swarm розподіляє контейнери між менеджером і робочими вузлами за допомогою оверлейної мережі. Затримка між вузлами впливає на швидкість комунікації сервісів і надійність протоколу консенсусу Raft для синхронізації вузлів-менеджерів.
Розміщення всіх вузлів Swarm в одному центрі обробки даних ЄС забезпечує затримку між вузлами менше мілісекунди. Хмарні інстанції DCXV в одному центрі обробки даних мають спільну приватну мережу, що ідеально підходить для оверлейної мережі Swarm.
Відповідність GDPR - інша причина розміщувати хостинг в ЄС. Якщо ваші сервіси Swarm обробляють або зберігають персональні дані європейських користувачів, ці дані повинні залишатися в межах юрисдикції ЄС.
Мінімальні вимоги до сервера
Docker Swarm легший за Kubernetes.
Для вузлів-менеджерів:
- Оперативна пам’ять: мінімум 2 ГБ
- Процесор: мінімум 1 ядро (рекомендовано 2 ядра)
- Диск: 20 ГБ SSD
- Docker Engine: версія 24 або новіша
Для робочих вузлів:
- Оперативна пам’ять: мінімум 2 ГБ на вузол
- Процесор: мінімум 1-2 ядра на вузол
- Диск: 20 ГБ SSD на вузол
Базовий кластер Swarm потребує щонайменше одного менеджера та одного робочого вузла. Для відмовостійкості використовуйте 3 вузли-менеджери та стільки робочих вузлів, скільки вимагає навантаження.
Рекомендована конфігурація DCXV
Хмарні інстанції DCXV на https://dcxv.com/data-center#cloud починаються від 15 EUR/місяць. Мінімальне налаштування Docker Swarm з 3 менеджерами і 2 робочими вузлами добре працює на п’яти інстанціях 2 ГБ RAM / 2 vCPU.
Всі хмарні інстанції DCXV в одному центрі обробки даних підключені через приватну мережу з низькою затримкою. Цілодобова підтримка інженерів включена без додаткових витрат.
Для більших флотів виділені сервери DCXV починаються від 49 EUR/місяць.
Інструкція з налаштування
Ініціалізація кластера Docker Swarm на інстанціях DCXV:
# На першому вузлі-менеджері: ініціалізуйте swarm
docker swarm init --advertise-addr <manager-private-ip>
# Отримайте токен для робочого вузла
docker swarm join-token worker
# Отримайте токен для менеджера
docker swarm join-token manager
# На кожному додатковому менеджері: приєднайтесь як менеджер
docker swarm join --token <manager-token> <first-manager-ip>:2377
# На кожному робочому вузлі: приєднайтесь до swarm
docker swarm join --token <worker-token> <first-manager-ip>:2377 Очікувані показники продуктивності
На 5-вузловому кластері Docker Swarm з інстанціями DCXV 2 ГБ / 2 vCPU:
- Час запуску сервісу 5-15 секунд для типових образів контейнерів
- Пропускна здатність оверлейної мережі 500 Мбіт/с - 2 Гбіт/с між вузлами
- Оновлення консенсусу Raft поширюються між менеджерами менш ніж за 50 мс
- Rolling updates без простою для сервісів з 2 і більше репліками
- Кластер такого розміру обробляє 50-200 одночасних сервісів




