106 lines
9.4 KiB
Markdown
106 lines
9.4 KiB
Markdown
# О сервисе
|
||
|
||
## Назначение сервиса
|
||
|
||
Данный сервис предназначен для команд, которым требуется надёжный и масштабируемый конвейер данных без необходимости самостоятельно разворачивать и обслуживать инфраструктуру Kafka.
|
||
|
||
**Apache Kafka** - это распределённая система для потоковой передачи данных в реальном времени. Сервис обеспечивает надёжную и масштабируемую доставку сообщений между компонентами приложений, гарантируя отказоустойчивость и высокую производительность.
|
||
|
||
В архитектуре современных информационных систем Kafka выполняет роль централизованного конвейера данных: одни сервисы (продюсеры) публикуют сообщения, а другие (консьюмеры) получают эти сообщения по мере необходимости.
|
||
|
||
## Основные понятия
|
||
|
||
### Продюсер (Producer)
|
||
|
||
Программный компонент, который отправляет данные в Kafka. Продюсером может выступать любой сервис, генерирующий события: модуль приложения, система логирования, датчик IoT-устройства.
|
||
|
||
### Консьюмер (Consumer)
|
||
|
||
Программный компонент, который получает данные из Kafka. Консьюмер подписывается на интересующие его события и обрабатывает поступающие сообщения.
|
||
|
||
### Топик (Topic)
|
||
|
||
Именованный канал для хранения сообщений определённого типа. Топики организуют потоки данных по смыслу: например, "заказы", "ошибки", "события авторизации". Консьюмеры подписываются на один или несколько топиков для получения релевантных данных.
|
||
|
||
### Партиция (Partition)
|
||
|
||
Каждый топик разделяется на партиции - логические сегменты, распределяемые между серверами кластера. Партиции обеспечивают параллельную обработку данных: различные части одного топика могут обрабатываться одновременно несколькими консьюмерами.
|
||
|
||
### Репликация (Replication)
|
||
|
||
Для обеспечения отказоустойчивости партиции копируются на несколько серверов (брокеров). При выходе одного сервера из строя данные остаются доступными на других узлах кластера.
|
||
|
||
### Микросервисная архитектура
|
||
|
||
Kafka является стандартным решением для организации связи между микросервисами. В такой архитектуре сервисы обмениваются событиями асинхронно, что повышает надёжность и масштабируемость системы в целом.
|
||
|
||
## Преимущества управляемого сервиса
|
||
|
||
### Администрирование
|
||
|
||
Клиенту не требуется самостоятельно разворачивать и обслуживать кластер Kafka. Мы берём на себя управление инфраструктурой, обновление версий, масштабирование и поддержку работоспособности.
|
||
|
||
### Мониторинг
|
||
|
||
Предоставляются готовые дашборды в Grafana с визуализацией ключевых метрик:
|
||
|
||
- состояние брокеров;
|
||
- нагрузка на кластер;
|
||
- настроенная система оповещений о критических событиях;
|
||
- заполнение дискового пространства.
|
||
### Безопасность
|
||
|
||
Поддерживается шифрованное подключение к кластеру с использованием SSL/TLS-сертификатов, что гарантирует защиту данных при передаче.
|
||
### Экспертная поддержка
|
||
|
||
Мы обладаем практическим опытом администрирования более 500 кластеров Kafka. Накопленная экспертиза позволяет обеспечивать стабильность работы, своевременно выявлять и устранять потенциальные проблемы, оптимизировать конфигурации под конкретные задачи.
|
||
## Тарифные планы
|
||
|
||
### Base
|
||
|
||
Тарифный план для тех, кто имеет собственную экспертизу в работе с Kafka и желает самостоятельно управлять объектами верхнего уровня.
|
||
|
||
**Обязательства провайдера:**
|
||
- поддержка инсталляции кластера;
|
||
- своевременное обновление версий Kafka;
|
||
- расширение вычислительных ресурсов кластера по запросу клиента.
|
||
|
||
**Возможности:**
|
||
- **Управление учетными записями и правами доступа** - создание пользователей и настройка их прав для работы с Kafka;
|
||
- **Администрирование топиков** - полный цикл управления: создание, конфигурирование, настройка параметров и удаление;
|
||
- **Управление консьюмер-группами (Consumer Groups)** - возможность создавать, изменять и удалять логические объединения консьюмеров, которые совместно читают сообщения из топиков. Это обеспечивает высокую производительность и отказоустойчивость при обработке данных;
|
||
- **Работа с transactional ID** - полный цикл управления транзакционными идентификаторами (создание, изменение, удаление). Транзакционный идентификатор присваивается продюсеру Kafka для обеспечения атомарности операций: запись нескольких сообщений или коммит оффсетов выполняются по принципу "всё или ничего", а также предотвращается появление "зомби-продюсеров" при перезапусках.
|
||
|
||
Инфраструктурное ядро кластера (брокеры, репликация, отказоустойчивость) остаётся под управлением провайдера.
|
||
|
||
### Full
|
||
|
||
Тарифный план для тех, кто предпочитает полностью делегировать задачи по администрированию Kafka.
|
||
|
||
**Обязательства провайдера:**
|
||
- полное управление кластером;
|
||
- администрирование топиков;
|
||
- управление консьюмер-группами;
|
||
- работа с transactional id.
|
||
|
||
Kafka используется как готовый сервис, не вовлекаясь в вопросы настройки и обслуживания.
|
||
|
||
## Рекомендации для сервиса
|
||
|
||
Использовать TLS-защищённые протоколы для подключения к сервису.
|
||
|
||
### Пароли
|
||
|
||
1. **Длина пароля (рекомендуемая):**
|
||
|
||
- для учётной записи пользователя - не менее 12 знаков;
|
||
- для учётных записей администраторов, технических и служебных УЗ - не менее 16 знаков.
|
||
|
||
2. Использовать уникальный пароль, содержащий символы как минимум трёх из четырёх указанных ниже групп (при отсутствии технических ограничений):
|
||
|
||
- буквы латинского алфавита в верхнем регистре (A-Z);
|
||
- буквы латинского алфавита в нижнем регистре (a-z);
|
||
- цифры (0–9);
|
||
- специальные символы и знаки пунктуации (например, !@#$%^&*(),.?).
|
||
|
||
3. Рекомендуемая периодичность смены пароля - не реже 1 раза в год. |