1.添加Chart仓库
[root@master ~]# helm repo add bitnami https://charts.bitnami.com/bitnami
[root@master ~]# helm repo update
[root@master ~]# helm search repo bitnami/kafka -l
2.下载安装包
[root@master kafka]# helm pull bitnami/kafka
[root@master kafka]# tar -zxvf kafka-21.4.0.tgz
[root@master kafka]# cd kafka/
3.自定义配置
1.zookeeper
zookeeper有两种使用方式:
1.在kafka的同一个配置文件(values.yaml)中打开zookeeper开关,并进行配置部署;
2.在kafka的同一个配置文件(values.yaml)中关闭zookeeper开关,使用charts/zookeeper/values.yaml
进行配置部署
1.全局配置:存储
global:
storageClass: "nfs-stroage"
2.节点数量
默认为1
zookeeper:
replicaCount: 1
2.kafka
1.版本
image:
registry: docker.io
repository: bitnami/kafka
tag: 3.4.0-debian-11-r6
appVersion: 3.4.0
2.节点数量
默认为:1
replicaCount: 1
管理系统:kafka manager
- k8s
apiVersion: apps/v1
kind: Deployment
metadata:
name: kafka-manager
namespace: kafka
labels:
k8s-app: kafka-manager
spec:
replicas: 1
selector:
matchLabels:
k8s-app: kafka-manager
template:
metadata:
labels:
k8s-app: kafka-manager
spec:
containers:
- name: kafka-manager
image: docker.io/sheepkiller/kafka-manager:latest
env:
- name: ZK_HOSTS
value: "kafka-zookeeper:2181"
- name: APPLICATION_SECRET
value: letmein
resources:
# need more cpu upon initialization, therefore burstable class
limits:
memory: 4096Mi
cpu: 2000m
requests:
cpu: 1000m
memory: 2048Mi
ports:
- containerPort: 9000
name: kafka-manager
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: kafka-manager
namespace: kafka
labels:
k8s-app: kafka-manager
spec:
#type: NodePort
ports:
- port: 9000
name: kafka-manager
protocol: TCP
targetPort: 9000
# nodePort: 30900
selector:
k8s-app: kafka-manager
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: kafka-manager-http
namespace: kafka
spec:
entryPoints:
- web
routes:
- match: Host(`kafka-manager.test.com`) && PathPrefix(`/`)
kind: Rule
services:
- name: kafka-manager
port: 9000
- docker
docker run -d -p 9000:9000 -e ZK_HOSTS="172.31.108.163:2181,172.31.108.127:2181,172.31.108.105:2181" -e APPLICATION_SECRET=letmein sheepkiller/kafka-manager