Files
com-jbl/kafka/kafka-controller.yaml
2025-12-10 21:07:43 +08:00

70 lines
1.8 KiB
YAML

apiVersion: apps/v1
kind: StatefulSet
metadata:
name: kafka-controller
namespace: kafka
labels:
app: kafka-controller
spec:
serviceName: kafka-controller-headless
replicas: 3
selector:
matchLabels:
app: kafka-controller
template:
metadata:
labels:
app: kafka-controller
spec:
containers:
- name: kafka-controller
image: xxx.xuanyuan.run/apache/kafka:latest
ports:
- containerPort: 9093
name: controller
env:
- name: KAFKA_NODE_ID
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: KAFKA_PROCESS_ROLES
value: "controller"
- name: KAFKA_LISTENERS
value: "CONTROLLER://:9093"
- name: KAFKA_INTER_BROKER_LISTENER_NAME
value: "PLAINTEXT"
- name: KAFKA_CONTROLLER_LISTENER_NAMES
value: "CONTROLLER"
- name: KAFKA_CONTROLLER_QUORUM_VOTERS
value: "1@kafka-controller-0.kafka-controller-headless.kafka.svc.cluster.local:9093,2@kafka-controller-1.kafka-controller-headless.kafka.svc.cluster.local:9093,3@kafka-controller-2.kafka-controller-headless.kafka.svc.cluster.local:9093"
- name: KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS
value: "0"
readinessProbe:
tcpSocket:
port: 9093
initialDelaySeconds: 15
periodSeconds: 10
livenessProbe:
tcpSocket:
port: 9093
initialDelaySeconds: 30
periodSeconds: 10
volumeClaimTemplates: []
---
apiVersion: v1
kind: Service
metadata:
name: kafka-controller-headless
namespace: kafka
labels:
app: kafka-controller
spec:
ports:
- port: 9093
name: controller
clusterIP: None
selector:
app: kafka-controller