单机k8s启动kafka和zookeeper的yaml
时间: 2023-11-04 16:21:31 浏览: 44
以下是在单机 Kubernetes 中启动 Kafka 和 ZooKeeper 的 YAML 配置文件示例:
ZooKeeper YAML 配置文件:
```yaml
apiVersion: v1
kind: Service
metadata:
name: zookeeper
labels:
app: zookeeper
spec:
ports:
- name: client
port: 2181
protocol: TCP
targetPort: 2181
selector:
app: zookeeper
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: zookeeper
spec:
serviceName: "zookeeper"
replicas: 1
selector:
matchLabels:
app: zookeeper
template:
metadata:
labels:
app: zookeeper
spec:
containers:
- name: zookeeper
image: confluentinc/cp-zookeeper:6.2.0
env:
- name: ZOOKEEPER_CLIENT_PORT
value: "2181"
- name: ZOOKEEPER_TICK_TIME
value: "2000"
ports:
- name: client
containerPort: 2181
- name: follower
containerPort: 2888
- name: leader
containerPort: 3888
volumeMounts:
- name: datadir
mountPath: /var/lib/zookeeper/data
- name: logdir
mountPath: /var/lib/zookeeper/log
volumes:
- name: datadir
emptyDir: {}
- name: logdir
emptyDir: {}
```
Kafka YAML 配置文件:
```yaml
apiVersion: v1
kind: Service
metadata:
name: kafka
labels:
app: kafka
spec:
ports:
- name: kafka
port: 9092
protocol: TCP
targetPort: 9092
selector:
app: kafka
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: kafka
spec:
serviceName: "kafka"
replicas: 3
selector:
matchLabels:
app: kafka
template:
metadata:
labels:
app: kafka
spec:
containers:
- name: kafka
image: confluentinc/cp-kafka:6.2.0
env:
- name: KAFKA_BROKER_ID
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: KAFKA_ZOOKEEPER_CONNECT
value: "zookeeper:2181"
- name: KAFKA_ADVERTISED_LISTENERS
value: "PLAINTEXT://$(hostname -f):9092"
- name: KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR
value: "3"
ports:
- name: kafka
containerPort: 9092
volumeMounts:
- name: datadir
mountPath: /var/lib/kafka/data
volumes:
- name: datadir
emptyDir: {}
```
你可以将以上两个 YAML 配置文件分别保存为 `zookeeper.yaml` 和 `kafka.yaml`,并使用 `kubectl apply -f zookeeper.yaml` 和 `kubectl apply -f kafka.yaml` 命令来创建它们。