13e2dc8164ef8bdf1bb69837b914bff77526fc5a
[demos/kafka/monitoring] / kubernetes / docker-compose.yml
1 version: '3.2'
2
3 services:
4
5   zookeeper:
6     build: bitnami/zookeeper:3.9.0
7     environment:
8       ALLOW_ANONYMOUS_LOGIN: 'yes'
9       ZOO_ENABLE_PROMETHEUS_METRICS: 'yes'
10     volumes:
11       - zookeeper:/bitnami/zookeeper
12     ports:
13       - 2181:2181
14       - 7000:7070
15
16   kafka-1:
17     image: bitnami/kafka:3.4.0
18     environment:
19       KAFKA_ENABLE_KRAFT: 'false'
20       KAFKA_OPTS:
21         -Dcom.sun.management.jmxremote=true
22         -Dcom.sun.management.jmxremote.port=7000
23         -Dcom.sun.management.jmxremote.authenticate=false
24       KAFKA_CFG_ZOOKEEPER_CONNECT: zookeeper:2181
25       KAFKA_CFG_LISTENERS: BROKER://:9092, LOCALHOST://:9081
26       KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, LOCALHOST:PLAINTEXT
27       KAFKA_CFG_ADVERTISED_LISTENERS: BROKER://kafka-1:9092, LOCALHOST://localhost:9081
28       KAFKA_BROKER_ID: 1
29       ALLOW_PLAINTEXT_LISTENER: 'yes'
30       KAFKA_CFG_INTER_BROKER_LISTENER_NAME: BROKER
31       KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
32       KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
33     volumes:
34       - kafka-1:/bitnami/kafka
35     ports:
36       - 9081:9081
37       - 7001:7000
38     depends_on:
39       - zookeeper
40
41   kafka-2:
42     image: bitnami/kafka:3.4.0
43     environment:
44       KAFKA_ENABLE_KRAFT: 'false'
45       KAFKA_OPTS:
46         -Dcom.sun.management.jmxremote=true
47         -Dcom.sun.management.jmxremote.port=7000
48         -Dcom.sun.management.jmxremote.authenticate=false
49       KAFKA_CFG_ZOOKEEPER_CONNECT: zookeeper:2181
50       KAFKA_CFG_LISTENERS: BROKER://:9092, LOCALHOST://:9082
51       KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, LOCALHOST:PLAINTEXT
52       KAFKA_CFG_ADVERTISED_LISTENERS: BROKER://kafka-2:9092, LOCALHOST://localhost:9082
53       KAFKA_BROKER_ID: 2
54       ALLOW_PLAINTEXT_LISTENER: 'yes'
55       KAFKA_CFG_INTER_BROKER_LISTENER_NAME: BROKER
56       KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
57       KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
58     volumes:
59       - kafka-2:/bitnami/kafka
60     ports:
61       - 9092:9082
62       - 9082:9082
63       - 7002:7000
64     networks:
65       default:
66         aliases:
67           - kafka
68     depends_on:
69       - zookeeper
70
71   kafka-3:
72     image: bitnami/kafka:3.4.0
73     environment:
74       KAFKA_ENABLE_KRAFT: 'false'
75       KAFKA_OPTS:
76         -Dcom.sun.management.jmxremote=true
77         -Dcom.sun.management.jmxremote.port=7000
78         -Dcom.sun.management.jmxremote.authenticate=false
79       KAFKA_CFG_ZOOKEEPER_CONNECT: zookeeper:2181
80       KAFKA_CFG_LISTENERS: BROKER://:9092, LOCALHOST://:9083
81       KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, LOCALHOST:PLAINTEXT
82       KAFKA_CFG_ADVERTISED_LISTENERS: BROKER://kafka-3:9092, LOCALHOST://localhost:9083
83       KAFKA_BROKER_ID: 3
84       ALLOW_PLAINTEXT_LISTENER: 'yes'
85       KAFKA_CFG_INTER_BROKER_LISTENER_NAME: BROKER
86       KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
87       KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
88     volumes:
89       - kafka-3:/bitnami/kafka
90     ports:
91       - 9083:9083
92       - 7003:7000
93     depends_on:
94       - zookeeper
95
96   kafka-4:
97     image: bitnami/kafka:3.4.0
98     environment:
99       KAFKA_ENABLE_KRAFT: 'false'
100       KAFKA_OPTS:
101         -Dcom.sun.management.jmxremote=true
102         -Dcom.sun.management.jmxremote.port=7000
103         -Dcom.sun.management.jmxremote.authenticate=false
104       KAFKA_CFG_ZOOKEEPER_CONNECT: zookeeper:2181
105       KAFKA_CFG_LISTENERS: BROKER://:9092, LOCALHOST://:9084
106       KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, LOCALHOST:PLAINTEXT
107       KAFKA_CFG_ADVERTISED_LISTENERS: BROKER://kafka-4:9092, LOCALHOST://localhost:9084
108       KAFKA_BROKER_ID: 4
109       ALLOW_PLAINTEXT_LISTENER: 'yes'
110       KAFKA_CFG_INTER_BROKER_LISTENER_NAME: BROKER
111       KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
112       KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
113     volumes:
114       - kafka-4:/bitnami/kafka
115     ports:
116       - 9084:9084
117       - 7004:7000
118     depends_on:
119       - zookeeper
120
121   kafka-5:
122     image: bitnami/kafka:3.4.0
123     environment:
124       KAFKA_ENABLE_KRAFT: 'false'
125       KAFKA_OPTS:
126         -Dcom.sun.management.jmxremote=true
127         -Dcom.sun.management.jmxremote.port=7000
128         -Dcom.sun.management.jmxremote.authenticate=false
129       KAFKA_CFG_ZOOKEEPER_CONNECT: zookeeper:2181
130       KAFKA_CFG_LISTENERS: BROKER://:9092, LOCALHOST://:9085
131       KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, LOCALHOST:PLAINTEXT
132       KAFKA_CFG_ADVERTISED_LISTENERS: BROKER://kafka-5:9092, LOCALHOST://localhost:9085
133       KAFKA_BROKER_ID: 5
134       ALLOW_PLAINTEXT_LISTENER: 'yes'
135       KAFKA_CFG_INTER_BROKER_LISTENER_NAME: BROKER
136       KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
137       KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
138     volumes:
139       - kafka-5:/bitnami/kafka
140     ports:
141       - 9085:9085
142       - 7005:7000
143     depends_on:
144       - zookeeper
145
146 volumes:
147
148   zookeeper:
149   kafka-1:
150   kafka-2:
151   kafka-3:
152   kafka-4:
153   kafka-5:
154   grafana: