-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathkafka-example.yaml
111 lines (97 loc) · 2.23 KB
/
kafka-example.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
---
apiVersion: stable.opencore.com/v1
kind: Kafka
metadata:
name: kafka-prod
labels:
environment: production
spec:
broker:
zooKeeperRef: ...
# TODO: We are unsure if we actually need a min node count here
nodeSelector:
...
listener:
- type: unauthenticated
port: 9092
- type: kerberos
tls_encryption: true
...
- type: tls
tls_encryption: true
...
- type: kerberos
tls_encryiption: false
advertisedListener: ...
...
config:
linger.ms: 500
...
configMapRef:
name: special-config
priority: 1
roleConfig:
- selector:
diskType: ssd
config:
...
configMapRef:
- selector:
hostName: server-01.opencore.io
config:
...
configMapRef: ...
# TODO: Filter and redaction rules(for example: DEBUG to Elastic cluster A, ERROR to Elastic cluster B)
logging:
retention: ...
rollingInterval: ...
defaultExternalLogStorageRef: prod-elk
# TODO: Refactor these definitions to separate objects to make them re-useable
brokerLog:
collect: true
externalLogStorageRef: prod-audit-elk
logLevel:
...
brokerStdout:
collect: true
metrics:
metricsStorageRef: ...
blacklist: ... # Metriken, die nicht reported werden sollen
whitelist: ...
# TODO: Add the concept of an external client - 10.0.0.5 should always be running a kafka consumer,
# we would grab the jmx metrics as well and export them
# "ExternanConsumer" -> unmanaged but known
# How to treat broker-ids?
# MirrorMaker2
# TODO: This is far removed from being complete
---
apiVersion: stable.opencore.com/v1
kind: MirrorMaker
metadata:
name: mirrormaker-prod
labels:
environment: production
spec:
# [standalone, legacy, connect, cluster]
mode: standalone
nodeSelector:
...
kafkaClusters:
- kafka-prod
- kafka-dev
- edge-kafka-unmanaged
---
apiVersion: stable.opencore.com/v1
kind: KafkaReplication
...
sourceCluster: kafka-prod
targetCluster: kafka-dev
sourceTopic: foobar
topicSetRef:
targetTopic: barfoo
offsets: true
config: false
---
apiVersion: stable.opencore.com/v1
kind: KafkaTopicSet
...