Helm学习
1、构建自己的chart包
https://blog.csdn.net/codelearning/article/details/140408311
2、helm的基本使用
https://www.cnblogs.com/happy-king/p/15170507.html
Helm学习
https://www.cnblogs.com/happy-king/p/15170507.html
Helm 是一个命令行下的客户端工具。主要用于 Kubernetes 应用程序 Chart 的创建、打包、发布以及创建和管理本地和远程的 Chart 仓库。
Chart:一个 Helm 包,,采用 TAR 格式。其中包含了运行一个应用所需要的镜像、依赖和资源定义等,还可能包含 Kubernetes 集群中的服务定义,类似 Homebrew 中的 formula、APT 的 dpkg 或者 Yum 的 rpm 文件。
Release:在 Kubernetes 集群上运行的 Chart 的一个实例。在同一个集群上,一个 Chart 可以安装很多次。每次安装都会创建一个新的 release。例如一个 MySQL Chart,如果想在服务器上运行两个数据库,就可以把这个 Chart 安装两次。每次安装都会生成自己的 Release,会有自己的 Release 名称。
Repository:用于发布和存储 Chart 的存储库。
Helm
1、Helm的一般操作
- helm pull: 下载chart到本地目录查看
- helm install: 上传chart到Kubernetes
- helm list: 列出已发布的chart
- helm search: 搜索chart
2、环境变量:
名称 描述
HELM_CACHE_HOME 设置一个存储缓存文件的可选位置
HELM_CONFIG_HOME 设置一个存储Helm配置的可选位置
HELM_DATA_HOME 设置一个存储Helm数据的可选位置
HELM_DEBUG 表示Helm是否在Debug模式系运行
HELM_DRIVER 设置后台存储驱动,可选值包括:configmap, secret, memory, sql
HELM_DRIVER_SQL_CONNECTION_STRING 设置SQL存储驱动使用连接字符串
HELM_MAX_HISTORY 设置发布历史记录的最大值
HELM_NAMESPACE 设置用于helm操作的命名空间
HELM_NO_PLUGINS 禁用插件,HELM_NO_PLUGINS=1 表示禁用插件
HELM_PLUGINS 设置插件目录路径
HELM_REGISTRY_CONFIG 设置注册配置文件的路径
HELM_REPOSITORY_CACHE 设置仓库缓存目录路径
HELM_REPOSITORY_CONFIG 设置仓库文件的路径
KUBECONFIG 设置Kubernetes的可选配置文件(默认是"~/.kube/config")
HELM_KUBEAPISERVER 设置用于身份认证的Kubernetes API服务端
HELM_KUBECAFILE 设置Kubernetes证书机构文件
HELM_KUBEASGROUPS 使用逗号分隔的列表设置用于模拟的组
HELM_KUBEASUSER 为操作设置要模拟的用户名
HELM_KUBECONTEXT 设置kubeconfig上下文的名称
HELM_KUBETOKEN 设置用于身份验证的不记名KubeToken
HELM_KUBEINSECURE_SKIP_TLS_VERIFY 设置 Kubernetes API 服务的证书验证是否跳过(不安全)
HELM_KUBETLS_SERVER_NAME 设置用于验证 Kubernetes API 服务器证书的服务器名称
HELM_BURST_LIMIT 设置当 kubernetes 服务包含很大量CRD时的默认上限值(默认100, -1是不可用)
Helm 安装
1、helm install
安装参数必须是chart的引用,一个打包后的chart路径,未打包的chart目录或者是一个URL。
要重写chart中的值,使用'--values'参数传递一个文件或者使用'--set'参数在命令行传递配置,强制使用字符串要用'--set-string'。 当值本身对于命令行太长或者是动态生成的时候,可以使用 '--set-file' 设置独立的值。也可以在命令行使用'--set-json'参数设置json值
helm install -f myvalues.yaml myredis ./redis
或者
helm install --set name=prod myredis ./redis
或者
helm install --set-string long_int=1234567890 myredis ./redis
或者
helm install --set-file my_script=dothings.sh myredis ./redis
或者
helm install --set-json 'master.sidecars=[{"name":"sidecar","image":"myImage","imagePullPolicy":"Always",ports":[{"name":"portname","containerPort":1234}]}]' myredis ./redis
2、使用技巧
当你想测试模板渲染的内容但又不想安装任何实际应用时,可以使用helm install --debug --dry-run goodly-guppy ./mychart。这样不会安装应用(chart)到你的kubenetes集群中,只会渲染模板内容到控制台(用于测试)

浙公网安备 33010602011771号