Skip to content

Instantly share code, notes, and snippets.

@wnsdn1207
Created June 18, 2020 01:18
Show Gist options
  • Select an option

  • Save wnsdn1207/3b9b649aefd6330da816aee29de9a91c to your computer and use it in GitHub Desktop.

Select an option

Save wnsdn1207/3b9b649aefd6330da816aee29de9a91c to your computer and use it in GitHub Desktop.
[docker-swarm] docker compose file for 3 zookeepers and 3 kafka cluster
version: '3.2'
services:
zoo1:
image: zookeeper:latest
hostname: zoo1
ports:
- "2181:2181"
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2182 server.3=zoo3:2888:3888;2183
ZOO_PORT: 2181
zoo2:
image: zookeeper:latest
hostname: zoo2
ports:
- "2182:2182"
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2182 server.3=zoo3:2888:3888;2183
ZOO_PORT: 2182
zoo3:
image: zookeeper:latest
hostname: zoo3
ports:
- "2183:2183"
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2182 server.3=zoo3:2888:3888;2183
ZOO_PORT: 2183
kafka-1:
image: wurstmeister/kafka:latest
hostname: kafka-1
ports:
- target: 9092
published: 9092
protocol: tcp
mode: host
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: "zoo1:2181,zoo2:2182,zoo3:2183"
KAFKA_DEFAULT_REPLICATION_FACTOR: 3
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 3
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 2
KAFKA_MIN_INSYNC_REPLICAS: 2
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 3000
KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE: 'true'
KAFKA_CONTROLLER_SHUTDOWN_ENABLE: 'true'
KAFKA_LISTENERS: INSIDE://:19092,OUTSIDE://:9092
KAFKA_ADVERTISED_LISTENERS: INSIDE://:19092,OUTSIDE://#{HOST_IP(ex.111.111.111.111)}:9092
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
KAFKA_LOG_RETENTION_BYTES: -1
KAFKA_LOG_RETENTION_DAYS: 2
KAFKA_LOG_DIRS: /kafka/kafka-1-logs
KAFKA_CREATE_TOPICS: "AT-PROD-R-IBK:4:3,AT-PROD-D-IBK:4:3,AT-PROD-B-IBK:4:3,AT-PROD-R-COMMON:4:3,AT-PROD-B-COMMON:4:3,AT-PROD-D-COMMON:4:3,AT-PROD-C-COMMON:4:3,KKOTTS:1:3,AT-PROD-B-EWEB:4:3,AT-PROD-R-EWEB:4:3"
volumes:
- /opt/data/kafka:/kafka/kafka-1-logs
depends_on:
- zoo1
- zoo2
- zoo3
kafka-2:
image: wurstmeister/kafka:latest
hostname: kafka-2
ports:
- target: 9093
published: 9093
protocol: tcp
mode: host
environment:
KAFKA_BROKER_ID: 2
KAFKA_ZOOKEEPER_CONNECT: "zoo1:2181,zoo2:2182,zoo3:2183"
KAFKA_DEFAULT_REPLICATION_FACTOR: 3
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 3
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 2
KAFKA_MIN_INSYNC_REPLICAS: 2
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 3000
KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE: 'true'
KAFKA_CONTROLLER_SHUTDOWN_ENABLE: 'true'
KAFKA_LISTENERS: INSIDE://:19093,OUTSIDE://:9093
KAFKA_ADVERTISED_LISTENERS: INSIDE://:19093,OUTSIDE://#{HOST_IP(ex.111.111.111.111)}:9093
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
KAFKA_LOG_RETENTION_BYTES: -1
KAFKA_LOG_RETENTION_DAYS: 2
KAFKA_LOG_DIRS: /kafka/kafka-2-logs
KAFKA_CREATE_TOPICS: "AT-PROD-R-IBK:4:3,AT-PROD-D-IBK:4:3,AT-PROD-B-IBK:4:3,AT-PROD-R-COMMON:4:3,AT-PROD-B-COMMON:4:3,AT-PROD-D-COMMON:4:3,AT-PROD-C-COMMON:4:3,KKOTTS:1:3,AT-PROD-B-EWEB:4:3,AT-PROD-R-EWEB:4:3"
volumes:
- /opt/data/kafka:/kafka/kafka-2-logs
depends_on:
- zoo1
- zoo2
- zoo3
kafka-3:
image: wurstmeister/kafka:latest
hostname: kafka-3
ports:
- target: 9094
published: 9094
protocol: tcp
mode: host
environment:
KAFKA_BROKER_ID: 3
KAFKA_ZOOKEEPER_CONNECT: "zoo1:2181,zoo2:2182,zoo3:2183"
KAFKA_DEFAULT_REPLICATION_FACTOR: 3
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 3
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 2
KAFKA_MIN_INSYNC_REPLICAS: 2
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 3000
KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE: 'true'
KAFKA_CONTROLLER_SHUTDOWN_ENABLE: 'true'
KAFKA_LISTENERS: INSIDE://:19094,OUTSIDE://:9094
KAFKA_ADVERTISED_LISTENERS: INSIDE://:19094,OUTSIDE://#{HOST_IP(ex.111.111.111.111)}:9094
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
KAFKA_LOG_RETENTION_BYTES: -1
KAFKA_LOG_RETENTION_DAYS: 2
KAFKA_LOG_DIRS: /kafka/kafka-3-logs
KAFKA_CREATE_TOPICS: "AT-PROD-R-IBK:4:3,AT-PROD-D-IBK:4:3,AT-PROD-B-IBK:4:3,AT-PROD-R-COMMON:4:3,AT-PROD-B-COMMON:4:3,AT-PROD-D-COMMON:4:3,AT-PROD-C-COMMON:4:3,KKOTTS:1:3,AT-PROD-B-EWEB:4:3,AT-PROD-R-EWEB:4:3"
volumes:
- /opt/data/kafka:/kafka/kafka-3-logs
depends_on:
- zoo1
- zoo2
- zoo3
@wnsdn1207

Copy link
Copy Markdown
Author

[2020-06-18 01:10:10,853] ERROR Fatal error during KafkaServer startup. Prepare to shutdown (kafka.server.KafkaServer)
kafka.common.InconsistentBrokerIdException: Configured broker.id 2 doesn't match stored broker.id 1 in meta.properties. If you moved your data, make sure your configured broker.id matches. If you intend to create a new broker, you should remove all data in your data directories (log.dirs).
at kafka.server.KafkaServer.getOrGenerateBrokerId(KafkaServer.scala:767)
at kafka.server.KafkaServer.startup(KafkaServer.scala:226)
at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:44)
at kafka.Kafka$.main(Kafka.scala:82)
at kafka.Kafka.main(Kafka.scala)

@wnsdn1207

Copy link
Copy Markdown
Author

above is the issue contents using this docker-compose file.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment