Доступ к приложению#

Настройки#

Настройки подключения UI к кластеру#

В данном примере рассматривается подключение графической утилиты посредством локально развернутого кластера без SSL со следующими параметрами: ZooKeeper — на порту 2181, брокер Kafka — на порту 9092.

Укажите актуальные настройки подключения в файле KAFKA_DIR/config/kafka-ui.properties.

Пример файла:

##########################[ MAIN ]#########################
server.port=9090

kafka.clusters[0].name=KafkaCluster
kafka.clusters[0].bootstrapServers=localhost:9092
kafka.clusters[0].zookeeper=localhost:2181
kafka.clusters[0].metrics.port=7010
kafka.clusters[0].metrics.type=JMX
kafka.clusters[0].metrics.username=admin
kafka.clusters[0].metrics.password=pass

spring.jmx.enabled=true

#############[ AUTHENTICATION AND AUTHORIZATION ]############
auth.type=DISABLED

Клиентские параметры для производителя и потребителя#

Для производителя и потребителя в конкретном кластере можно задать параметры:

##################### [ PRODUCER PROPERTIES ] #####################
# максимальный период ожидания продюсером ответа от брокера (в миллисекундах)
kafka.clusters[0].producerProperties.request.timeout.ms=30000

##################### [ CONSUMER PROPERTIES ] #####################
# уровень изоляции потребителей:
# - read_uncommitted — потребителю доступны все записи, включая незавершенные транзакционные записи;
# - read_committed — потребитель доступны только завершенные транзакционные записи.
kafka.clusters[0].consumerProperties.isolation.level=read_committed

Порядок доступа#

В зависимости от настроек auth.type и server.ssl.enabled доступ к UI интерфейсу осуществляется либо по HTTP либо по HTTPS:

auth.type

server.ssl.enabled

Протокол подключения

Комментарий

DISABLED

false (по умолчанию)

HTTP

Доступ без аутентификации, например http://localhost:9090

DISABLED

true

HTTPS

Доступ без аутентификации по защищенному каналу, например https://localhost:9090

FILE / CRX_LDAP

true

HTTPS

Аутентификация из файла или через LDAP (обязательно), например https://localhost:9090

FILE / CRX_LDAP

false

Запуск невозможен: ошибка Enabled auth requires server SSL

Аутентификация, авторизация, аудит событий в UI#

В UI есть возможность включить аутентификацию, авторизацию по ролям, аудит событий в компонент «Единый коллектор телеметрии» (COTE) продукта Platform V Monitor и локальный лог-файл.

Подключение к кластеру без SSL#

Примечание

В этом сценарии подключение между UI и Kafka-кластером происходит без шифрования, но доступ к веб-интерфейсу — по HTTPS (т.к. авторизация требует SSL веб-сервера). Подходит для тестовых сред.

  1. Укажите актуальные данные для пользователей в файле kafka-ui-users.properties (присутствует в поставке по умолчанию) в формате login=encryptedPassword,ROLE_NAME.

    Пример заполнения данных пользователя admin с ролью ADMIN и пользователя user с ролью USER:

    admin=wP2vIQtovE7feRRz2TbhGw==,ROLE_ADMIN
    user=wP2vIQtovE7feRRz2TbhGw==,ROLE_USER
    
  2. Проверьте перечень доступных прав для указанных выше ролей в файле kafka-ui-acls.json (присутствует в поставке по умолчанию): роль ADMIN обладает максимальными правами, роль USER — правами только на чтение.

    Пример файла kafka-ui-acls.json с предоставленными правами для ролей.

  3. Задайте тип авторизации auth.type=FILE и добавьте настройки в файл KAFKA_DIR/config/kafka-ui.properties. Пример файла.

    auth.type=FILE
    corax.ui.auth.file=config/kafka-ui-users.properties
    corax.ui.security.acl.file=config/kafka-ui-acls.json
    

    Обязательно включите SSL веб-сервера (server.ssl.enabled=true) — без этого UI не запустится.

  4. Запустите приложение UI. Проверьте доступность, пройдя аутентификацию под учетной записью пользователя admin либо user (пароль для обоих пользователей — qwe123).

В этом случае доступ к UI осуществляется по HTTPS.

Подключение к кластеру с SSL#

Настройте UI по шагам из предыдущего подраздела. Дополнительно добавьте в kafka-ui.properties параметры подключения к Kafka-кластеру с SSL. Пример файла.

Примечание

В этом сценарии как доступ к веб-интерфейсу, так и подключение к Kafka-кластеру защищены шифрованием.

Роли пользователей#

В составе дистрибутива идут предустановленные роли:

  • ADMIN;

  • DEVELOPER;

  • USER;

  • VIEWER.

Пользователь может менять предустановленные по умолчанию роли и добавлять новые при необходимости.

Запуск приложения#

  1. Запустите приложение Kafka UI, выполнив команду в корневой директории KAFKA_DIR:

    ./bin/crx-ui-start.sh config/kafka-ui.properties

  2. Проверьте доступность Kafka UI (порт по умолчанию 9090):

    • при отключенной авторизации (auth.type=DISABLED) — http://localhost:9090;

    • при включенной авторизации (auth.type равен FILE или CRX_LDAP) — https://localhost:9090.

При попытке запустить UI с включенной авторизацией и отключенным SSL веб-сервера возникает ошибка Enabled auth requires server SSL.

Примечание

Для работы графической утилиты требуется 13 версия Java или выше.

Минимальные аппаратные требования:

  • CPU: 2-4 ядра

  • Memory: 4-8 ГБ RAM

  • Storage: 200 ГБ HDD

Вход и выход#

Для авторизации:

  1. Перейдите по url-адресу графической утилиты. Откроется окно авторизации:

  2. Введите авторизационные данные.

Для выхода нажмите на аватар пользователя и выберите пункт Log out.