Які вимоги до сервера для розміщення ConnectiveOne?
Специфікація вимог до сервера описує технічні вимоги до інфраструктури для розгортання платформи ConnectiveOne. Вимоги залежать від обраної архітектури та очікуваного навантаження.
Коли знадобиться
- Потрібно підготувати інфраструктуру для розгортання ConnectiveOne.
- Треба визначити необхідні серверні потужності.
- Потрібно обрати архітектуру розгортання (монолітна, розподілена, хмарна).
- Треба перевірити відповідність існуючої інфраструктури вимогам.
Що важливо знати
- Архітектура — платформа може бути розгорнута на різних типах інфраструктури.
- Масштабованість — вимоги залежать від кількості користувачів, обсягу повідомлень та інтеграцій.
- Гнучкість — можна використовувати монолітну, розподілену або хмарну архітектуру.
- Рекомендується консультація з технічною підтримкою для визначення оптимальних параметрів.
Перед початком
Ви знаєте очікуване навантаження на систему. Ви маєте доступ до технічної підтримки для консультації. Ви визначили тип архітектури (монолітна, розподілена, хмарна).
Загальний підхід
Платформа ConnectiveOne являє собою сервіси, які взаємодіють між собою. Самі сервіси обгорнуті в докери та можуть поставлятися як ізольовані контейнери або нативні сервіси якщо це необхідно.
Архітектурою передбачено розгортання платформи на:
- Bare metal — фізичні сервери
- Cloud (AWS переважно) — хмарна інфраструктура
- Інші dedicated сервери — виділені сервери
- Віртуалізація — віртуальні машини
Архітектурні варіанти
Архітектурно може являти собою:
- Монолітний сервер — всі сервіси на одному сервері
- Роздроблені сервіси — декілька серверів для різних сервісів
- Мікросервіси в хмарній інфраструктурі — розподілена архітектура
Платформу можна оркеструвати з допомогою відомих інструментів (Kubernetes, Docker Swarm) або самописних систем керування.
Пропускна здатність
Пропускна здатність навантаження платформи ConnectiveOne не має обмежень на рівні функціоналу або інфраструктури. Один із умовних лімітів є ліміт на рівні месенджерів (Telegram, Viber, WhatsApp тощо).
Рекомендовані потужності закладені з врахуванням додаткових інтеграцій або взаємодій з іншими модулями/сервісами.
Серверні потужності
Монолітна архітектура на одному сервері
Мінімальні вимоги:
- CPU: 4 ядра
- RAM: 8 GB
- Диск: 100 GB SSD
- Мережа: 100 Mbps
Рекомендовані вимоги:
- CPU: 8+ ядер
- RAM: 16+ GB
- Диск: 500+ GB SSD
- Мережа: 1 Gbps
Для високого навантаження:
- CPU: 16+ ядер
- RAM: 32+ GB
- Диск: 1 TB+ SSD
- Мережа: 10 Gbps
⚠️ Важливо: Конкретні вимоги залежать від кількості користувачів, обсягу повідомлень та інтеграцій. Рекомендується консультація з технічною підтримкою для визначення оптимальних параметрів.
Варіанти інфраструктури
Монолітна схема (приклад реалізації)
Всі сервіси розгорнуті на одному сервері:
- База даних
- Backend сервіси
- Frontend
- Redis
- Інші залежності
Переваги:
- Простота розгортання
- Менші витрати на інфраструктуру
- Легше управління
Недоліки:
- Обмежена масштабованість
- Єдина точка відмови
Розподілена схема (приклад реалізації)
Сервіси розподілені між кількома серверами:
- Окремий сервер для бази даних
- Окремий сервер для backend
- Окремий сервер для Redis
- Load balancer
Переваги:
- Краща масштабованість
- Вища доступність
- Можливість масштабування окремих компонентів
Недоліки:
- Складніше управління
- Вищі витрати на інфраструктуру
Cloud AWS схема (приклад реалізації)
Розгортання в хмарній інфраструктурі AWS:
- RDS для бази даних
- EC2 для сервісів
- ElastiCache для Redis
- CloudFront для CDN
- Load Balancer
Переваги:
- Автоматичне масштабування
- Висока доступність
- Гнучкість в управлінні ресурсами
Недоліки:
- Вищі витрати при високому навантаженні
- Залежність від провайдера
Програмне забезпечення
Необхідне ПЗ
- Docker — для контейнеризації сервісів
- Docker Compose — для оркестрації (опціонально)
- Node.js — для backend сервісів
- PostgreSQL — база даних
- Redis — кешування та черги
- Nginx — веб-сервер та reverse proxy (опціонально)
Мережеві вимоги
- Відкриті порти для HTTP/HTTPS (80, 443)
- Доступ до зовнішніх API (месенджери, інтеграції)
- Можливість налаштування firewall правил
- SSL/TLS сертифікати для HTTPS
Безпека
- Регулярні оновлення безпеки
- Налаштування firewall
- SSL/TLS шифрування
- Резервне копіювання даних
- Моніторинг та логування
Обмеження
- Конкретні вимоги залежать від навантаження
- Необхідна консультація з технічною підтримкою
- Можливі додаткові вимоги для специфічних інтеграцій
Що відбувається після
Після перевірки вимог та підготовки інфраструктури можна розпочати розгортання ConnectiveOne. Рекомендується консультація з технічною підтримкою для визначення оптимальної конфігурації.
Як переконатися, що все вдалось
- Перевірте, що сервер відповідає мінімальним вимогам.
- Переконайтеся, що всі необхідні компоненти ПЗ встановлені.
- Перевірте мережеві налаштування та доступ до зовнішніх API.
- Протестуйте розгортання на тестовому середовищі.