Мы используем одноузловое базовое развертывание в Docker, которое включает следующие службы
kafka
schemaregistry
zookeeper
пример:
# docker-compose ps
Name Command State Ports
-------------------------------------------------------------------------------------------------------------------
control-center /etc/confluent/docker/run Up 0.0.0.0:9021->9021/tcp
kafka-single-node_kafka_1 /etc/confluent/docker/run Up 0.0.0.0:9092->9092/tcp
kafka-single-node_schemaregistry_1 /etc/confluent/docker/run Up 0.0.0.0:8081->8081/tcp
kafka-single-node_zookeeper_1 /etc/confluent/docker/run Up 0.0.0.0:2181->2181/tcp, 2888/tcp, 3888/tcp
Мы создали службы для контейнеров в соответствии с - https://docs.confluent.io/5.0.0/installation/docker/docs/installation/single-node-client.html
Мы создаем темы на машине kafka и намереваемся внедрить данные в разделы тем
Темы будут создаваться на машине контейнера kafka docker по пути - /var/lib/kafka/data
Так как/var
на этой машине докера kafka всего 100G, и мы хотим использовать размер как минимум 1T
Поэтому мы планируем добавить новый диск в ОС с байтом 1T (1000G)
Как только мы добавим диск Huge, второе действие - подключить диск к /var/lib/kafka/data
(поэтому папка данных будет размером 1T)
Но вопрос в том, какая конфигурация докераФайл / ы и параметры должны быть установлены?
Мы используем docker-compose.yml
, который включает следующий раздел для kafka
kafka:
image: confluentinc/cp-kafka:latest
depends_on:
- zookeeper
ports:
- 9092:9092
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1