Apache Kafka

Материал из ALT Linux Wiki

Предварительные требования: 1. Не меньше 4GB RAM на сервере. Инсталляция с меньшим количеством ОЗУ может закончиться с ошибкой "out of memory" от JVM при старте.

Так как сервер Kafka обрабатывает запросы, получаемые из сети Интернет, он создаст специального пользователя. Это сведёт к минимуму ущерб, нанесённый серверу Kafka, в случае компроментации.

При установке Kafka автоматически установится нужная версия Java.

Установку, настройку и тестирование сервера нужно делать от суперпользователя.

Установка

# apt-repo test 350191
# systemctl enable --now kafka

Файлы сервера располагаются в /usr/lib/kafka

Конфигурирование сервера Kafka

Файлы конфигурации сервера располагаются в /etc/kafka

По умолчанию сервер Kafka не позволяет нам удалить тему, категории, группы, или имя канала в котором могут публиковаться сообщения. Для исправления такого поведения предлагается отредактировать конфигурационный файл server.properties. Необходимо добавить в конец этого файла настройки, которые позволят удалить темы Kafka:

 $ echo "delete.topic.enable = true" >> /etc/kafka/kraft/server.properties 

Тестирование инсталляции

  • Создание топика
/usr/lib/kafka/bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092
  • Вывод списка созданных топиков
/usr/lib/kafka/bin/kafka-topics.sh --describe --topic quickstart-events --bootstrap-server localhost:9092
Topic: quickstart-events        TopicId: NPmZHyhbR9y00wMglMH2sg PartitionCount: 1       ReplicationFactor: 1    Configs:
    Topic: quickstart-events Partition: 0    Leader: 0   Replicas: 0 Isr: 0
  • Создание события
/usr/lib/kafka/bin/kafka-console-producer.sh --topic quickstart-events --bootstrap-server localhost:9092
This is my first event
This is my second event
Примечание: Введите нужное количество строчек, нажимая Enter и потом завершите, нажав Ctrl+D.
  • Вывод созданных событий:
/usr/lib/kafka/bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092
This is my first event
This is my second event