92 lines
2.2 KiB
YAML
92 lines
2.2 KiB
YAML
---
|
|
|
|
instance: kafka
|
|
|
|
vault:
|
|
pki:
|
|
path: "[[ .vault.root ]]pki/kafka"
|
|
ou: Kafka Cluster ([[ .instance ]])
|
|
|
|
kafka:
|
|
broker:
|
|
count: 3
|
|
version: 3.7.0
|
|
image: '[[ .docker.repo ]]kafka-broker:[[ .kafka.broker.version ]]-4'
|
|
env: {}
|
|
resources:
|
|
cpu: 100
|
|
memory: 1024
|
|
prometheus:
|
|
enabled: '[[ .prometheus.available ]]'
|
|
metrics_url: http://127.0.0.1:9404/metrics
|
|
# static_client_port: 9092
|
|
# static_broker_port: 9095
|
|
nomad:
|
|
constraints:
|
|
- operator: distinct_hosts
|
|
value: true
|
|
consul:
|
|
meta:
|
|
broker: 'broker-${NOMAD_ALLOC_INDEX}.[[ .instance ]]-broker[[ .consul.suffix ]].service.[[ .consul.domain ]]'
|
|
connect:
|
|
upstreams:
|
|
- destination_name: zookeeper[[ .consul.suffix ]]
|
|
local_bind_port: 2181
|
|
vault:
|
|
policies:
|
|
- '[[ .instance ]]-broker[[ .consul.suffix ]]'
|
|
wait_for:
|
|
- service: zookeeper[[ .consul.suffix ]]
|
|
count: 2
|
|
zookeeper:
|
|
servers:
|
|
- 127.0.0.1:2181
|
|
# path: /kafka
|
|
user: ""
|
|
password: ""
|
|
use_acl: true
|
|
super_users:
|
|
- '[[ .instance ]]-jikkou'
|
|
settings:
|
|
log.retention.hours: 168
|
|
compression.type: zstd
|
|
zookeeper.connection.timeout.ms: 600
|
|
zookeeper.set.acl: true
|
|
message.max.bytes: 1073741824
|
|
auto.create.topics.enable: false
|
|
transactional.id.expiration.ms: 2147483647
|
|
offsets.retention.minutes: 13140
|
|
volumes:
|
|
data:
|
|
type: csi
|
|
source: '[[ .instance ]]-broker-data'
|
|
per_alloc: true
|
|
|
|
jikkou:
|
|
version: 0.33.3
|
|
image: '[[ .docker.repo ]]jikkou:[[ .kafka.jikkou.version ]]-1'
|
|
env: {}
|
|
resources:
|
|
cpu: 10
|
|
memory: 256
|
|
vault:
|
|
policies:
|
|
- '[[ .instance ]]-jikkou[[ .consul.suffix ]]'
|
|
topics: ""
|
|
acls: ""
|
|
|
|
exporter:
|
|
version: 1.7.0
|
|
image: '[[ .docker.repo ]]kafka-exporter:[[ .kafka.exporter.version ]]-1'
|
|
env: {}
|
|
wait_for:
|
|
- service: '[[ .instance ]]-broker[[ .consul.suffix ]]'
|
|
count: '[[ .kafka.broker.count | mul 0.5 | add 1 | math.Floor ]]'
|
|
vault:
|
|
policies:
|
|
- '[[ .instance ]]-exporter[[ .consul.suffix ]]'
|
|
- metrics[[ .consul.suffix ]]
|
|
resources:
|
|
cpu: 10
|
|
memory: 50
|