一、查看Zookeeper包版本

执行helm search repo zookeeper命令查看Zookeeper包版本

[root@k8s-master01 ~]# helm search repo zookeeper
NAME                        CHART VERSION   APP VERSION DESCRIPTION
bitnami/zookeeper           11.4.3          3.8.1       Apache ZooKeeper provides a reliable, centraliz...
bitnami/dataplatform-bp2    12.0.5          1.0.1       DEPRECATED This Helm chart can be used for the ...
bitnami/kafka               23.0.1          3.5.0       Apache Kafka is a distributed streaming platfor...
bitnami/schema-registry     12.1.0          7.4.0       Confluent Schema Registry provides a RESTful in...
bitnami/solr                7.5.1           9.2.1       Apache Solr is an extremely powerful, open sour...
stable/kafka-manager        2.3.5           1.3.3.22    DEPRECATED - A tool for managing Apache Kafka.

二、下载最新版Zookeeper

执行helm pull bitnami/zookeeper命令查看Zookeeper包版本

[root@k8s-master01 ~]#  helm pull bitnami/zookeeper
[root@k8s-master01 ~]# ls zookeeper-11.4.3.tgz
zookeeper-11.4.3.tgz

执行tar -xf zookeeper-11.4.3.tgz命令解压最新版的zookeeper

[root@k8s-master01 ~]# tar -xf zookeeper-11.4.3.tgz

三、修改values.yaml配置

需要修改replicaCount的值为3

$ cd /root/zookeeper
$ vim values.yaml

修改values.yaml相应配置-1

根据自己需要修改image

$ cd /root/zookeeper
$ vim values.yaml
...
...
  image:
    registry: registry.cn-hangzhou.aliyuncs.com
    repository: abroad_images/zookeeper
    tag: 3.8.1-debian-11-r46

  image:
    registry: registry.cn-hangzhou.aliyuncs.com
    repository: abroad_images/bitnami-shell
    tag: 11-debian-11-r127
...
...

修改values.yaml相应配置-2-1

修改values.yaml相应配置-2-2

根据自己需要修改持久化配置,这里因为是测试环境没有使用持久化(生产必须要使用持久化)。其中修改内容如下:

  • enabled修改为false
  • 注释existingClaim
  • 注释storageClass
$ cd /root/zookeeper
$ vim values.yaml

修改values.yaml相应配置-3

四、安装Zookeeper集群

开始安装

$ cd /root/zookeeper
$ kubectl  create ns public-service
$ helm install -n public-service zookeeper .

进行检查,观察到zookeeper集群已经安装完成

[root@k8s-master01 ~]# kubectl get po -n public-service
NAME                        READY   STATUS    RESTARTS   AGE
zookeeper-0                 1/1     Running   0          4m31s
zookeeper-1                 1/1     Running   0          4m31s
zookeeper-2                 1/1     Running   0          4m31s

进行zk容器,创建一个名为 /test 的节点并设置数据为 mydata,观察到成功执行并返回预期的结果,表示连接和基本功能正常。

[root@k8s-master01 kafka]# kubectl exec -it -n public-service         zookeeper-0  -- bash
I have no name!@zookeeper-0:/$ cd bin/
I have no name!@zookeeper-0:/bin$ zkCli.sh -server 127.0.0.1:2181
[zk: 127.0.0.1:2181(CONNECTED) 1] create /test mydata
Created /test