75 lines
8.4 KiB
Markdown
75 lines
8.4 KiB
Markdown
# Назначение сервиса
|
||
|
||
Данный сервис предназначен для команд, которым требуется надёжный и масштабируемый конвейер данных без необходимости самостоятельно разворачивать и обслуживать инфраструктуру Kafka.
|
||
|
||
**Apache Kafka** - это распределённая система для потоковой передачи данных в реальном времени. Сервис обеспечивает надёжную и масштабируемую доставку сообщений между компонентами приложений, гарантируя отказоустойчивость и высокую производительность.
|
||
|
||
В архитектуре современных информационных систем Kafka выполняет роль централизованного конвейера данных: одни сервисы (продюсеры) публикуют сообщения, а другие (консьюмеры) получают эти сообщения по мере необходимости.
|
||
|
||
## Основные понятия
|
||
|
||
| Термин | Описание |
|
||
|--------------------------------|----------|
|
||
| **Продюсер (Producer)** | Программный компонент, который отправляет данные в Kafka. Продюсером может выступать любой сервис, генерирующий события: модуль приложения, система логирования, датчик IoT-устройства. |
|
||
| **Консьюмер (Consumer)** | Программный компонент, который получает данные из Kafka. Консьюмер подписывается на интересующие его события и обрабатывает поступающие сообщения. |
|
||
| **Топик (Topic)** | Именованный канал для хранения сообщений определённого типа. Топики организуют потоки данных по смыслу: например, «заказы», «ошибки», «события авторизации». Консьюмеры подписываются на один или несколько топиков для получения релевантных данных. |
|
||
| **Партиция (Partition)** | Каждый топик разделяется на партиции - логические сегменты, распределяемые между серверами кластера. Партиции обеспечивают параллельную обработку данных: различные части одного топика могут обрабатываться одновременно несколькими консьюмерами. |
|
||
| **Репликация (Replication)** | Для обеспечения отказоустойчивости партиции копируются на несколько серверов (брокеров). При выходе одного сервера из строя данные остаются доступными на других узлах кластера. |
|
||
| **Микросервисная архитектура** | Kafka является стандартным решением для организации связи между микросервисами. В такой архитектуре сервисы обмениваются событиями асинхронно, что повышает надёжность и масштабируемость системы в целом. |
|
||
|
||
## Преимущества управляемого сервиса
|
||
|
||
#### Администрирование
|
||
|
||
Клиенту не требуется самостоятельно разворачивать и обслуживать кластер Kafka. Сервис включает в себя управление инфраструктурой, обновление версий, масштабирование и поддержку работоспособности.
|
||
|
||
#### Мониторинг
|
||
|
||
Предоставляются готовые дашборды в Grafana с визуализацией ключевых метрик:
|
||
|
||
- состояние брокеров;
|
||
- нагрузка на кластер;
|
||
- настроенная система оповещений о критических событиях;
|
||
- заполнение дискового пространства.
|
||
|
||
#### Безопасность
|
||
|
||
Поддерживается шифрованное подключение к кластеру с использованием SSL/TLS-сертификатов, что гарантирует защиту данных при передаче.
|
||
|
||
#### Экспертная поддержка
|
||
|
||
Сервис создан с учётом практического опыта администрирования более 500 кластеров Kafka. Накопленная экспертиза позволяет обеспечивать стабильность работы, своевременно выявлять и устранять потенциальные проблемы, оптимизировать конфигурации под конкретные задачи.
|
||
|
||
## Тарифные планы
|
||
|
||
### 1. Тариф "Base"
|
||
|
||
Тарифный план для тех, кто имеет собственную экспертизу в работе с Kafka и желает самостоятельно управлять объектами верхнего уровня.
|
||
|
||
**Обязательства провайдера:**
|
||
|
||
- поддержка инсталляции кластера;
|
||
- своевременное обновление версий Kafka;
|
||
- расширение вычислительных ресурсов кластера по запросу клиента.
|
||
|
||
**Возможности:**
|
||
|
||
- **Управление учетными записями и правами доступа** – создание пользователей и настройка их прав для работы с Kafka;
|
||
- **Администрирование топиков** - полный цикл управления: создание, конфигурирование, настройка параметров и удаление;
|
||
- **Управление консьюмер-группами (Consumer Groups)** – возможность создавать, изменять и удалять логические объединения консьюмеров, которые совместно читают сообщения из топиков. Это обеспечивает высокую производительность и отказоустойчивость при обработке данных;
|
||
- **Работа с transactional ID** – полный цикл управления транзакционными идентификаторами (создание, изменение, удаление). Транзакционный идентификатор присваивается продюсеру Kafka для обеспечения атомарности операций: запись нескольких сообщений или коммит оффсетов выполняются по принципу «всё или ничего», а также предотвращается появление «зомби-продюсеров» при перезапусках.
|
||
|
||
Инфраструктурное ядро кластера (брокеры, репликация, отказоустойчивость) остаётся под управлением провайдера.
|
||
|
||
### 2. Тариф "Full"
|
||
|
||
Тарифный план для тех, кто предпочитает полностью делегировать задачи по администрированию Kafka.
|
||
|
||
**Обязательства провайдера:**
|
||
|
||
- полное управление кластером;
|
||
- администрирование топиков;
|
||
- управление консьюмер-группами;
|
||
- работа с transactional id.
|
||
|
||
Kafka используется как готовый сервис, не вовлекаясь в вопросы настройки и обслуживания. |