0


Helm部署服务前自定义Chart包默认的配置参数(四)

Helm安装服务前自定义Chart默认配置项

文章目录

1.修改Chart默认配置项的两种方式

在前面使用helm部署的mysql,不管使用什么仓库的chart包,都不会顺利的直接部署成功,都需要有一些环境依赖,例如阿里云的chart包需要pv的依赖,apphub的chart包需要StorageClass的依赖,不管我们补充了什么依赖,虽然最后都成功运行了服务,但是我们也并不是以chart默认的配置运行成功的。

基于这种现象,我们可以通过自定义一些chart的配置选项,自定义chart的配置选项有两种方式:

  • –values或-f:指定带有覆盖values.yaml文件,可以多次指定,只会将新yaml中的参数传到原本的values.yaml,没有指定的参数不会发生变化。 - 命令格式:helm install -f values.yaml chart包路径|chart包
  • –set:在命令行上指定替代,如果两者都用,–set的优先级高。 - 命令格式:helm install --set mysqlUer="test" chart包路径|chart包- 如果一条命令中需要修改多个配置项,则每一个配置项都需要有一个–set。

–values和–set书写不同之处
valuessetmysqlUser: test–set mysqlUser=testa: b
c: d–set a=b,c=douter:
inner: value–set outer.inner=valueport:

  • 8080
  • 8090–set port={8080,8090}servers:
  • port: 80–set servers[0].port=80servers:
  • port: 80
    name: web–set servers[0].port=80,service[0].host=webname: “value1”,“value2”–set name=value1,value2nodeSelector:
    kubernetes.io/role: master–set “
    nodeSelector.kubernetes\.io/role
    
    ”=master

    2.使用–values的方式自定义chart配置项

实现目的:调整创建pvc的方式为StorageClass,并创建一个test_db数据库以及test用户和密码。

2.1.编写values.yaml

1.编写一个values文件存放自定义的配置参数
[root@k8s-master1 ~/helm/deploy/mysql/aliyun]# vim values.yaml mysqlUser: test                        #创建一个test的普通用户mysqlPassword: test123                #test用户的密码为test123mysqlDatabase: test_db                #创建一个test_db数据库persistence:#设置存储类型enabled:truestorageClass:"helm-storageclass"#指定StorageClassaccessMode: ReadWriteOnce
  size: 8Gi

2.2.部署mysql服务

1.部署服务的时候使用-f或者--values指定values.yaml文件
[root@k8s-master1 ~/helm/deploy/mysql/aliyun]# helm install db3 -f values.yaml mysql

2.查看服务的状态
[root@k8s-master1 ~/helm/deploy/mysql/aliyun]# helm list
NAME         NAMESPACE    REVISION    UPDATED                                    STATUS      CHART          APP VERSION
db           default      1           2021-07-21 17:02:16.911916854 +0800 CST    deployed    mysql-0.3.5               
db-apphub    default      1           2021-07-22 13:51:16.968872145 +0800 CST    deployed    mysql-6.8.0    8.0.19     
db3          default      1           2021-07-22 15:54:24.185469279 +0800 CST    deployed    mysql-0.3.5      
[root@k8s-master1 ~/helm/deploy/mysql/aliyun]# kubectl get pod | grep db3
db3-mysql-6f49c98d58-sqwgz   1/1     Running   0          38s

3.进入mysql容器查看数据库、用户是否创建
[root@k8s-master1 ~/helm/deploy/mysql/aliyun]# kubectl exec -it db3-mysql-6f49c98d58-sqwgz bash
root@db3-mysql-6f49c98d58-sqwgz:/# mysql -utest -ptest123
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| test_db            |
+--------------------+
2 rows in set (0.01 sec)

在这里插入图片描述

3.使用–set方式自定义chart配置项

3.1.部署mysql服务

1.部署服务
[root@k8s-master1 ~/helm/deploy/mysql/aliyun]# helm install db4 --set mysqlUser=test --set mysqlPassword=test123 --set mysqlDatabase=test_db --set persistence.storageClass="helm-storageclass" mysql

2.查看服务的状态
[root@k8s-master1 ~/helm/deploy/mysql/aliyun]# helm list
NAME         NAMESPACE    REVISION    UPDATED                                    STATUS      CHART          APP VERSION
db           default      1           2021-07-21 17:02:16.911916854 +0800 CST    deployed    mysql-0.3.5               
db-apphub    default      1           2021-07-22 13:51:16.968872145 +0800 CST    deployed    mysql-6.8.0    8.0.19     
db3          default      1           2021-07-22 15:54:24.185469279 +0800 CST    deployed    mysql-0.3.5               
db4          default      1           2021-07-22 16:15:27.482006146 +0800 CST    deployed    mysql-0.3.5            

[root@k8s-master1 ~/helm/deploy/mysql/aliyun]# kubectl get pod | grep db4
db4-mysql-6bf5d8dc45-fkmk8   1/1     Running   0          31s

在这里插入图片描述

3.2.进入mysql容器验证配置项是否生效

[root@k8s-master1 ~/helm/deploy/mysql/aliyun]# kubectl exec -it db4-mysql-6bf5d8dc45-fkmk8 bash

root@db4-mysql-6bf5d8dc45-fkmk8:/# mysql -utest -ptest123
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| test_db            |
+--------------------+
2 rows in set (0.00 sec)

4.helm install支持的安装源

helm install命令可以从多个来源安装:


本文转载自: https://blog.csdn.net/weixin_44953658/article/details/123987771
版权归原作者 Jiangxl~ 所有, 如有侵权,请联系我们删除。

“Helm部署服务前自定义Chart包默认的配置参数(四)”的评论:

还没有评论