1.下载文件

[root@k8s-master01 ~]# git clone https://gitee.com/jeckjohn/chart-rabbitmq.git
[root@k8s-master01 ~]# cd chart-rabbitmq/
[root@k8s-master01 chart-rabbitmq]# ls
Chart.yaml  templates  values.yaml

上面文件说明:

Chart.yaml 文件包含了该chart的描述。你可以从模板中访问它

  • apiVersion:Chart的apiVersion,目前默认都是v2
  • name:Chart的名称
  • description:Chart描述信息
  • type:图表的类型
  • version:Chart自己的版本号
  • appVersion:Chart内应用的版本号

templates/ 目录:包括了模板文件。当Helm评估chart时,会通过模板渲染引擎将所有文件发送到templates/目录中。 然后收集模板的结果并发送给Kubernetes

values.yaml 文件也导入到了模板。这个文件包含了chart的默认值。这些值会在用户执行helm installhelm upgrade时被覆盖,一般配置全局变量或者一些参数,其中优先级为values.yaml最低,--set参数最高

2.开始安装

[root@k8s-master01 ~]# cd chart-rabbitmq/
[root@k8s-master01 rabbitmq-cluster]# helm install rabbitmq . -n public-service

3.查看pod及svc

[root@k8s-master01 ~]# kubectl get po -n public-service
NAME         READY   STATUS    RESTARTS   AGE
rabbitmq-0   1/1     Running   0          4m8s
rabbitmq-1   1/1     Running   0          2m46s
rabbitmq-2   1/1     Running   0          85s

[root@k8s-master01 ~]# kubectl get svc  -n public-service
NAME                       TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)                          AGE
rmq-cluster-headless       ClusterIP   None           <none>        5672/TCP                         4m10s
rmq-cluster-loadbalancer   NodePort    10.0.213.185   <none>        15672:32470/TCP,5672:31664/TCP   4m10s

4.打开浏览器输入节点IP:32470页面测试访问,其中用户名是user,用户密码是pass

编写Chart一键安装RabbitMQ集群-1

5.卸载安装的集群

[root@k8s-master01 ~]# cd chart-rabbitmq/
[root@k8s-master01 rabbitmq-cluster]# helm uninstall rabbitmq  -n public-service