Праавки по сервису kafka

This commit is contained in:
Левченко Людмила Алексеевна
2026-04-29 10:22:17 +03:00
parent 9a21a53e11
commit c01886e49b
7 changed files with 298 additions and 46 deletions
+3 -2
View File
@@ -1,5 +1,4 @@
# О сервисе
## Назначение сервиса
# Назначение сервиса
Данный сервис предназначен для команд, которым требуется надёжный и масштабируемый конвейер данных без необходимости самостоятельно разворачивать и обслуживать инфраструктуру Kafka.
@@ -34,6 +33,7 @@
Kafka является стандартным решением для организации связи между микросервисами. В такой архитектуре сервисы обмениваются событиями асинхронно, что повышает надёжность и масштабируемость системы в целом.Преимущества управляемого сервиса
## Преимущества управляемого сервиса
### Администрирование
Клиенту не требуется самостоятельно разворачивать и обслуживать кластер Kafka. Мы берём на себя управление инфраструктурой, обновление версий, масштабирование и поддержку работоспособности.
@@ -75,6 +75,7 @@ Kafka является стандартным решением для орган
- **Работа с transactional ID** - полный цикл управления транзакционными идентификаторами (создание, изменение, удаление). Транзакционный идентификатор присваивается продюсеру Kafka для обеспечения атомарности операций: запись нескольких сообщений или коммит оффсетов выполняются по принципу «всё или ничего», а также предотвращается появление «зомби-продюсеров» при перезапусках.
Инфраструктурное ядро кластера (брокеры, репликация, отказоустойчивость) остаётся под управлением провайдера.
### Full
Тарифный план для тех, кто предпочитает полностью делегировать задачи по администрированию Kafka.
+19 -17
View File
@@ -2,20 +2,24 @@
## О разделе
В данном разделе описаны способы подключения к управляемому кластеру Kafka. Рассматриваются два варианта: незашифрованное подключение (SASL_PLAINTEXT) и зашифрованное подключение с использованием SSL-сертификатов (SASL_SSL). Также приведены примеры работы с клиентскими утилитами и базовые операции администрирования.
Раздел содержит описание способов подключения к управлению кластером Kafka. Поддерживаются два типа подключения:
- `SASL_PLAINTEXT` - незашифрованное;
- `SASL_SSL` - зашифрованное (через SSL-сертификат).
Также в разделе приведены примеры работы с клиентскими утилитами и базовые операции администрирования.
## Предварительные требования
Для работы с кластером Kafka необходимо наличие следующих компонентов:
1. **Установленный клиент Kafka** - скачивается дистрибутив Kafka (например, kafka_2.13-4.2.0) и распаковывается в удобную директорию;
2. **Установленная Java** - для работы с Kafka требуется среда выполнения Java. Установка выполняется командой: **sudo apt install openjdk-17-jre-headless**. Рекомендуется использовать версию OpenJDK 17 или выше;
Для начала работы с кластером Kafka необходимо выполнить предварительную настройку:
1. **Установить клиент Kafka** - скачивается дистрибутив Kafka (например, kafka_2.13-4.2.0) и распаковывается в удобную директорию;
2. **Установить среду выполнения Java** - для работы необходимо установить среду выполнения, с помощью команды: `**sudo apt install openjdk-17-jre-headless**`. Рекомендуется использовать версию OpenJDK 17 или выше;
3. **Доступ к брокерам** - адреса брокеров (bootstrap servers) предоставляются после развертывания кластера;
4. **Учетные данные**:
- Имя пользователя (username) - стандартное значение client;
- Пароль - предоставляется после развертывания кластера.
5. **Корневой сертификат (для SSL-подключения)** - сертификат для зашифрованного подключения предоставляется файлом при заказе сервиса Kafka.
## Структура клиентского дистрибутива 
## Структура клиентского дистрибутива
После распаковки архива Kafka в директории bin доступны основные скрипты для управления:
@@ -27,6 +31,7 @@
| `kafka-consumer-groups.sh` | Управление консьюмер-группами |
| `kafka-configs.sh` | Изменение конфигурации топиков и других объектов |
| `kafka-acls.sh` | Управление списками доступа (ACL) |
В разделе ниже приведены примеры использования скриптов.
Подробное описание операций с данными и другими скриптами приведено в [официальной документации Kafka](https://kafka.apache.org/42/getting-started/introduction/). Дополнительную информацию можно получить, выполнив любой скрипт с флагом --help:
@@ -35,10 +40,9 @@
./kafka-topics.sh --help
```
### Конфигурационные файлы клиента
Для подключения к Kafka используется файл настроек (client.properties), который содержит параметры аутентификации, протокола и его механизмов (рекомендуются SCRAM_SHA_512 и SCRAM_SHA_256).
Для подключения к Kafka используется файл настроек **client.properties**, который содержит параметры аутентификации, протокола и его механизмов (рекомендуются SCRAM_SHA_512 и SCRAM_SHA_256).
### Незашифрованное подключение (SASL_PLAINTEXT)
@@ -56,7 +60,7 @@ sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule require
Для зашифрованного подключения (в production-средах рекомендуется использовать именно его) дополнительно требуется корневой сертификат и хранилище доверенных сертификатов (truststore).
Шаг 1. Создание truststore
#### Шаг 1. Создание truststore
С помощью утилиты **keytool** выполняется импорт сертификата в хранилище:
@@ -72,7 +76,7 @@ keytool -importcert -storetype PKCS12 -keystore /путь/к/трастстор
- **storepass** - пароль для доступа к хранилищу;
- **keypass** - пароль для доступа к ключу.
Шаг 2. Настройка client.properties
#### Шаг 2. Настройка client.properties
В файл **client.properties** добавляются параметры SSL:
@@ -91,7 +95,7 @@ ssl.truststore.password=парольотхранилища
Для незашифрованного подключения (SASL_PLAINTEXT) используется порт 9091;
Для зашифрованного подключения (SASL_SSL) используется порт 9092.
### Создание топиков 
### Создание топиков
```
./kafka-topics.sh --bootstrap-server <IP машины 0>:9092,<IP машины 1>:9092,<IP машины X>:9092 --command-config ../config/client.properties --create --topic <имя топика> --partitions <количество партиций> --replication-factor <значение> --config min.insync.replicas=<значение>
@@ -139,7 +143,8 @@ command-config - путь к файлу с настройками клиент
- **group** - название consumer group, которая создастся автоматически.
## Управление пользователями и доступом
## Рекомендации к паролям
#### Рекомендации к паролям
**Длина пароля (рекомендуемая):**
@@ -213,6 +218,7 @@ sudo ./kafka-acls.sh --bootstrap-server <IP_брокера_0>:9092,<IP_брок
```
## Администрирование кластера
### Изменение объема RAM
Для изменения объема оперативной памяти, выделенной под Kafka, направляется обращение в техническую поддержку с указанием требуемого объема RAM.
@@ -229,10 +235,6 @@ sudo ./kafka-acls.sh --bootstrap-server <IP_брокера_0>:9092,<IP_брок
./kafka-reassign-partitions.sh --bootstrap-server <адреса_брокеров> --generate --topics-to-move-json-file topics.json --broker-list "0,1,2" --execute
```
: : : info
::: info
Операция перераспределения партиций требует времени и может создавать дополнительную нагрузку на кластер. Выполнение рекомендуется в период наименьшей активности.
: : :
:::
+44 -27
View File
@@ -1,35 +1,41 @@
# Рекомендации по настройке топика (тариф Base)
# Настройка топика
## О разделе
## Рекомендации по настройке топика (тариф Base)
В разделе описаны основные параметры топиков Apache Kafka, влияющие на производительность, отказоустойчивость и параллелизм обработки данных.
При настройке топиков в Kafka важно учитывать несколько ключевых параметров для оптимальной работы системы. В данном разделе рассматриваются основные настройки, которые помогут правильно настроить топик.
## Базовые параметры топика
### Имя топика
При задании имени топика необходимо соблюдать следующие правила:
При именовании топика применяются следующие правила:
**Допустимые символы:**
- имя должно начинаться с буквы (латиница), цифры или подчеркивания ( _ );
- далее могут использоваться буквы, цифры, точки ( . ), дефисы ( - ) и подчеркивания;
- длина имени - от 3 до 200 символов;
- следует учитывать, что имя топика не подлежит изменению после создания.
- первый символ — буква (az, AZ), цифра (09) или подчёркивание (_);
- последующие символы — буквы, цифры, точки (.), дефисы (-) или подчёркивания;
- длина имени от 3 до 200 символов.
: : : tip
**Ограничения:**
- имя топика нельзя изменить после создания;
- не рекомендуется использовать имена, различающиеся только точкой и подчёркиванием (например, `topic_1` и `topic.1`): Kafka не различает такие названия;
- имена с двойным подчёркиванием в начале (например, `__consumer_offsets`) зарезервированы для внутренних топиков Kafka.
::: tip
Избегайте использования имен, отличающихся только точкой и подчеркиванием (например, topic_1 и topic.1), так как Kafka не различает такие названия
: : :
:::
: : : tip
::: tip
Не используйте имена, начинающиеся с двойного подчеркивания (__), например, **__consumer_offsets**. Эти имена зарезервированы для внутренних топиков Kafka.
: : :
:::
### Количество партиций (partitions)
Партиции определяют степень параллелизма при обработке данных. Количество партиций выбирается исходя из требуемой пропускной способности.
Партиции определяют уровень параллелизма при чтении и записи данных. Количество партиций выбирается исходя из требуемой пропускной способности.
**Основные правила:**
- количество партиций можно **только увеличивать** (уменьшить нельзя). Это следует учитывать при планировании;
- если в кластере несколько брокеров, желательно, чтобы количество партиций было кратно количеству брокеров - это способствует равномерному распределению данных;
- рекомендуется отслеживать отставание потребителей (consumer lag) и при необходимости увеличивать количество партиций.
**Правила:**
- количество партиций можно только увеличивать (уменьшение невозможно);
- при наличии нескольких брокеров рекомендуется выбирать число партиций, кратное количеству брокеров — для равномерного распределения нагрузки;
- рекомендуется мониторить отставание потребителей (consumer lag) и при необходимости увеличивать число партиций.
**Расчет количества партиций:**
Количество партиций определяется по формуле:
@@ -48,18 +54,29 @@ Partitions = max(NP, NC)
Фактор репликации определяет количество копий данных, хранящихся на разных брокерах.
: : : tip
Для production-сред настоятельно рекомендуется устанавливать значение 3. Это означает, что у каждой партиции будет один лидер и две реплики, что обеспечивает отказоустойчивость при выходе из строя одного брокера.
: : :
## Ключевые параметры конфигурации
### min.insync.replicas (минимальное количество синхронизированных реплик)
> **Рекомендация для production-сред:** установите значение **3**.
> При этом каждая партиция получает одного лидера и две реплики, что обеспечивает отказоустойчивость при выходе одного брокера.
## Дополнительные параметры конфигурации
### `min.insync.replicas` (минимальное количество синхронизированных реплик)
Параметр действует совместно с настройкой продюсера `acks=all`. Определяет минимальное количество синхронизированных реплик (включая лидера), которые должны подтвердить запись для её успешного завершения.
**Рекомендация:** при факторе репликации = 3 установите `min.insync.replicas = 2`.
**Эффекты:**
- **надёжность** — данные записаны минимум на два брокера;
- **доступность** — при отказе одного брокера запись продолжается.
> **Важно:** не устанавливайте значение, равное фактору репликации (например, 3).
> В противном случае при перезагрузке одного брокера запись в топик станет невозможной: система будет ожидать подтверждения от всех трёх реплик.
Параметр работает в связке с настройкой продюсера acks=all. Определяет, сколько реплик (включая лидера) должны подтвердить запись, чтобы она считалась успешной.
При факторе репликации = 3 рекомендуется установить значение **2**. Это обеспечивает:
- надежность: данные записаны минимум на два брокера;
- доступность: при отказе одного брокера запись продолжается.
- **надежность**: данные записаны минимум на два брокера;
- **доступность**: при отказе одного брокера запись продолжается.
: : : tip
::: tip
Не рекомендуется устанавливать значение равным фактору репликации (например, 3). В этом случае при перезагрузке одного брокера запись в топик станет невозможной, так как для подтверждения потребуется подтверждение от всех трех реплик.
: : :
:::
+19
View File
@@ -0,0 +1,19 @@
---
section_links:
- title: Обзор сервиса
link: /security/Cloud-MDM/about.md
description:
- title: Порядок платежей
link: /security/Cloud-MDM/payments.md
description:
- title: Качественные характеристики сервиса
link: /security/Cloud-MDM/characteristics.md
description:
- title: Сроки и условия предоставления сервиса
link: /security/Cloud-MDM/provision.md
description:
---
# Cloud Multifactor Authentication (MFA)
Сервис предназначен для настройки процесса подключения к системе. Процесс состоит из нескольких шагов и требует от пользователя указать дополнительные данные, а не только пароль.
+34
View File
@@ -0,0 +1,34 @@
# Cloud Multifactor Authentication (MFA)
## Основа сервиса
Сервис **Cloud Multifactor Authentication (MFA)** используется для настройки процесса входа в систему. Процесс состоит из нескольких шагов и требует от пользователя указать больше информации, а не только пароль. Сервис может быть как отдельным, так и опцией к уже существующим. Сервис реализован на базе российского решения Multifactor.
## Задачи сервиса
- Защита информационных систем от несанкционированного доступа и компрометации учетных данных.
- Усиленный контроль доступа к данным и приложениям.
- Выполнение требований стандартов в сфере информационной безопасности:
- PCI-DSS;
- HIPAA;
- SOX;
- NERC;
- FISMA;
- ISO;
- GLBA;
- GPG13 и т.д.
## Особенности и конкурентные преимущества сервиса
- Сервис работает по принципу zero trust: Multifactor не получает пароли пользователей.
- Пользователи могут самостоятельно настроить аутентификацию при первом входе, без регистрации. Функционал работает в браузере без установки плагинов, драйверов и сторонних приложений.
- Сервис поддерживает следующие факторы:
- бот в Telegram;
- биометрия;
- U2F;
- FIDO;
- OTP;
- Google Authenticator;
- Яндекс.Ключ;
- Звонки;
- SMS.
@@ -0,0 +1,96 @@
# Компоненты сервиса
## Виды компонентов
В зависимости от решаемой задачи и архитектуры защищаемых систем используется один или несколько технических компонентов сервиса **Cloud Multifactor Authentication (MFA)**:
- личный кабинет администратора;
- radius adapter;
- ldap adapter;
- портал самообслуживания.
Все перечисленные компоненты разрабатываются и поддерживаются компанией Мультифактор.
## 1. Личный кабинет администратора
**Личный кабинет администратора** — это веб-приложение, доступное через интернет. С его помощью ИТ-специалисты управляют четырьмя категориями объектов:
- пользователями;
- группами пользователей;
- интеграцией с защищаемыми информационными системами;
- списком доступных вторых факторов.
## 2. Radius Adapter
**Radius Adapter** — это RADIUS-сервер, обеспечивающий двухфакторную аутентификацию пользователей при удалённом доступе. Компонент поставляется с исходным кодом и работает под управлением Linux.
::: warning Важно
Пароль пользователя не передаётся в облако Multifactor и не покидает периметр сети. В облако передаётся только логин — для идентификации пользователя и доставки ему второго фактора.
:::
### Возможности
- приём запросов на аутентификацию по протоколу RADIUS;
- проверка первого фактора (логина и пароля) в Active Directory (включая AD LDS) или Network Policy Server;
- проверка второго фактора на устройстве пользователя;
- настройка второго фактора в режиме диалога с пользователем;
- управление доступом на основе членства пользователя в группе AD;
- выборочное включение второго фактора в зависимости от членства пользователя в группе AD;
- настройка атрибутов RADIUS-ответа на основе членства пользователя в группе AD;
- проксирование запросов и ответов Network Policy Server;
- отправка журналов событий в Syslog-сервер или SIEM-систему;
- режим bypass: при недоступности сервера система может пропускать пользователя без второго фактора или блокировать доступ.
## 3. LDAP Adapter
**LDAP Adapter** — это LDAP proxy-сервер, разработанный и поддерживаемый компанией Мультифактор для двухфакторной аутентификации пользователей в приложениях, использующих LDAP-аутентификацию. Компонент поставляется с исходным кодом и работает под управлением Linux.
::: warning Важно
Компонент не влияет на проверку имени и пароля пользователя. Второй фактор включается только после успешной проверки учётной записи в Active Directory или другом LDAP-каталоге.
:::
### Возможности
- проксирование сетевого трафика по протоколу LDAP;
- поиск запросов на аутентификацию и подтверждение вторым фактором на устройстве пользователя;
- работа по протоколам LDAP и LDAPS (шифрованный TLS-канал);
- перехват запросов на аутентификацию, использующих механизмы Simple, Digital, NTLM;
- пропуск запросов от служебных учётных записей (Bind DN) без второго фактора;
- настройка доступа на основе принадлежности пользователя к группе AD;
- выборочное включение второго фактора в зависимости от принадлежности пользователя к группе AD;
- отправка журналов событий в Syslog-сервер или SIEM-систему;
- режим bypass: при недоступности API система может пропускать пользователя без второго фактора или блокировать доступ.
## 4. Портал самообслуживания
**SelfService Portal (Портал самообслуживания)** — это веб-сайт, разработанный и поддерживаемый компанией Мультифактор для самостоятельной регистрации второго фактора аутентификации пользователями с учётными записями из Active Directory или других LDAP-каталогов. Компонент поставляется с исходным кодом. В рамках сервиса применяются Linux-версия и Windows-версия.
### Возможности
Портал предназначен для установки и работы внутри корпоративной сети. Также портал может быть опубликован для доступа из сети интернет.
- проверка логина и пароля пользователя в LDAP-каталоге или домене Active Directory (Windows-версия может осуществлять проверку в нескольких доменах, если между ними настроены доверительные отношения);
- настройка второго фактора аутентификации;
- смена пароля пользователя после подтверждения второго фактора;
- смена просроченного или требующего замены пароля;
- единая точка входа (Single Sign-On) для корпоративных приложений с поддержкой протоколов SAML, OpenID Connect / OAuth;
- выборочное включение второго фактора на основе принадлежности пользователя к группе в AD при Single Sign-On входе;
- управление ActiveSync-устройствами для доступа к почте Exchange;
- поддержка проверки CAPTCHA на странице входа в портал.
## Соответствие тарифов и адаптеров
|Подключаемый сервис | Тип адаптера |
|--------------------|-----------------|
|NGAF ra VPN | LDAP |
|UserGate ra VPN | LDAP |
|Pfsense ra VPN | RADIUS |
|OWA | Модуль для OWA |
|ADFS | Модуль для ADFS |
|Vmware horizon VDI | RADIUS |
Дополнительно прочтите про [настройку двухфакторной аутентификации в VPN на основе межсетевого экрана UserGate](https://multifactor.ru/docs/vpn/usergate-2fa-vpn/).
@@ -0,0 +1,83 @@
# Состав сервиса
## Варианты услуги
Сервис **Cloud Multifactor Authentication (MFA)** предлагает два варианта:
Self-Service,
Managed Service.
Beeline cloud тарифицирует дополнительные работы по фактическим трудозатратам.
## Личный кабинет администратора
Личный кабинет администратора — веб-приложение, доступное из сети интернет. Через приложение ИТ-специалисты управляют четыреми элементами:
- пользователями,
- группами пользователей,
- интеграцией с защищаемыми информационными системами,
- списком доступных вторых факторов.
## Radius Adapter
Radius Adapter — RADIUS-сервер, который используется для двухфакторной аутентификации пользователей при использовании удаленного доступа. Компонент доступен вместе с исходным кодом. Radius Adapter использует Linux-версию.
Radius adapter не передает пароль пользователя в облако Multifactor. Пароль не покидает периметр сети. Передается только логин для идентификации пользователя и доставки ему второго фактора.
### Возможности
- Прием запросов на аутентификацию по протоколу RADIUS.
- Проверка первого фактора аутентификации — логина и пароля пользователя в Active Directory (в том числе AD LDS) или Network Policy Server.
- Проверка второго фактора аутентификации на телефоне пользователя.
- Настройка второго фактора в режиме диалога с пользователем.
- Настройка доступа на основе принадлежности пользователя к группе в AD.
- Избирательное включение второго фактора на основе принадлежности пользователя к группе AD.
- Настройка атрибутов ответа RADIUS на основе принадлежности пользователя к группе AD.
- Проксирование запросов и ответов Network Policy Server.
- Запись журналов в Syslog сервер или SIEM-систему.
- Режим bypass. В случае недоступности API система предлагает возможность пропускать пользователя без второго фактора или блокировать.
## LDAP Adapter
LDAP Adapter — LDAP proxy-сервер, разработанный и поддерживаемый компанией Мультифактор для двухфакторной аутентификации пользователей в приложениях, использующих LDAP аутентификацию. Компонент доступен вместе с исходным кодом. LDAP Adapter использует Linux-версию.
Компонент не влияет на проверку имени и пароля пользователя. Второй фактор включается только, после успешной проверки учетной записи в Active Directory или другом LDAP каталоге.
### Возможности
- Проксирование сетевого трафика по протоколу LDAP.
- Поиск запросов на аутентификацию и подтверждение вторым фактором на телефоне пользователя.
- Работа по протоколам LDAP и LDAPS (шифрованный TLS канал).
- Перехват запросов на аутентификацию, использующих механизмы Simple, Digital, NTLM.
- Пропуск запросов от сервисных учетных записей (Bind DN) без второго фактора.
- Настройка доступа на основе принадлежности пользователя к группе AD.
- Избирательное включение второго фактора на основе принадлежности пользователя к группе AD.
- Звпись журналов в Syslog сервер или SIEM-систему.
- Режим bypass. В случае недоступности API система предлагает возможность пропускать пользователя без второго фактора или блокировать.
## Портал самообслуживания
SelfService Portal (Портал самообслуживания) — веб-сайт, разработанный и поддерживаемый компанией Мультифактор для самостоятельной регистрации второго фактора аутентификации пользователями с учётными записями из Active Directory или других LDAP каталогов. Компонент доступен вместе с исходным кодом. В рамках сервиса применяется Linux-версия и Windows-версии.
### Возможности
Портал предназначен для установки и работы внутри корпоративной сети. Портал может быть опубликован для доступа из сети интернет.
- Проверка логина и пароля пользователя в LDAP-каталоге или домене Active Directory. Windows-версия может осуществлять проверку в нескольких доменах, если между ними настроены доверительные отношения.
- Настройка второго фактора аутентификации.
- Смена пароля пользователя после подтверждения второго фактора.
- Смена просроченного или требующего замены пароля.
- Единая точка входа (Single Sign-On) для корпоративных приложений с поддержкой протоколов SAML, OpenID Connect / Oauth.
- Избирательное включение второго фактора на основе принадлежности пользователя к группе в AD при Single Sign-On входе.
- Управление ActiveSync устройствами для доступа к почте Exchange.
- Поддержка проверки CAPTCHA на странице входа в портал.
## Соответствие тарифов и адаптеров
Подключаемый сервис Тип адаптера
NGAF ra VPN LDAP
UserGate ra VPN LDAP
Pfsense ra VPN RADIUS
OWA Модуль для OWA
ADFS Модуль для ADFS
Vmware horizon VDI RADIUS