Kafka
Ссылки
https://kafka.apache.org/ | Quickstart | Documentation
Encrypt and Authenticate with TLS
Securing Kafka with Mutual TLS and ACLs
Установка и запуск
Один сервер
Устанавливаем Java
apt update apt install default-jre java -version
Скачиваем архив по ссылке https://dlcdn.apache.org/kafka/, например kafka_2.12-3.6.0.tgz.
wget https://dlcdn.apache.org/kafka/3.6.0/kafka_2.12-3.6.0.tgz tar -zxvf kafka_2.12-3.6.0.tgz cp -r kafka_2.12-3.6.0 /usr/local/kafka cd /usr/local/kafka
Запускаем и проверяем
# --- запускаем сервис zookeper bin/zookeeper-server-start.sh -daemon config/zookeeper.properties # --- запускаем сервис kafka bin/kafka-server-start.sh -daemon config/server.properties # --- запускаем консьюмера bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092 # ожидание сообщений... # --- запускаем продюсера (в другой консоле) bin/kafka-console-producer.sh --topic quickstart-events --bootstrap-server localhost:9092 >hello world # наблюдаем "hello world" в консьюмере
Остановка сервисов
bin/kafka-server-stop.sh bin/zookeeper-server-stop.sh
Несколько серверов
ToDo
TLS
Инструкции по генерации новых сертификатов для обмена по протоколу TLS можно легко найти в сети, например - Securing Kafka with Mutual TLS and ACLs. Статья содержит подробное описание и ссылку на проект в github.
В случае, если сертификаты сгенерированы ранее в формате PEM, то действия будут немного отличаться. Нам потребуется выполнить ряд действий по преобразования PEM в JKS.
Согласно документации Kafka умеет работать с PEM-сертификатами. Однако рабочие варианты использования данной возможности пока не найдены. Имеет смысл проработать этот вопрос в перспективе.
Входные данные - набор сертификатов: корневой, серверный и клиентский. Выходные жанные - хранилища в формате JKS: серверное, клиентское
}}}
REST Proxy
ToDo