helm系列之-helm常用命令

helm常用命令

针对Kubernetes的Helm包管理器。

官方文档:https://helm.sh/zh/docs/helm/helm/

简介

Kubernetes包管理器,Helm的一般操作:

  • helm search:搜索chart
  • helm pull:下载chart到本地目录查看
  • helm install:上传chart到Kubernetes
  • helm list:列出已发布的chart

环境变量:

名称描述
$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 基于以下配置顺序存储缓存,配置和添加数据:

  • 如果设置了 $HELM_*_HOME 环境变量,则使用该变量
  • 否则,在支持XDG基本目录规范的系统上,会使用XDG变量
  • 当没有设置其他位置时,将根据操作系统使用默认位置

默认情况下,默认目录取决于操作系统,默认值如下:

操作系统缓存路径配置路径数据路径
Linux$HOME/.cache/helm$HOME/.config/helm$HOME/.local/share/helm
macOS$HOME/Library/Caches/helm$HOME/Library/Preferences/helm$HOME/Library/helm
Windows%TEMP%\helm%APPDATA%\helm%APPDATA%\helm

可选项

- `--burst-limit int`:客户端默认限制值(默认100)
- `--debug`:启用详细输出
- `-h, --help`:显示帮助信息
- `--kube-apiserver string`:Kubernetes API服务器的地址和端口
- `--kube-as-group stringArray`:用于操作的组,可以多次指定
- `--kube-as-user string`:用于操作的用户名
- `--kube-ca-file string`:Kubernetes API服务器连接的证书机构文件
- `--kube-context string`:kubeconfig上下文的名称
- `--kube-insecure-skip-tls-verify`:如果为true,将不检查Kubernetes API服务器的证书有效性。这将使HTTPS连接不安全
- `--kube-tls-server-name string`:用于Kubernetes API服务器证书验证的服务器名称。如果未提供,将使用联系服务器时的主机名
- `--kube-token string`:用于身份验证的不记名token
- `--kubeconfig string`:kubeconfig文件的路径
- `-n, --namespace string`:请求的命名空间范围
- `--registry-config string`:注册配置文件的路径(默认"~/.config/helm/registry/config.json")
- `--repository-cache string`:包含缓存仓库索引的文件路径(默认"~/.cache/helm/repository")
- `--repository-config string`:包含仓库名称和URL的文件路径(默认"~/.config/helm/repositories.yaml"

另请参阅

常用命令

  1. 搜索官方helm hub chart库

helm search hub nginx

  1. 添加第三方chart库
helm repo add azure http://mirror.azure.cn/kubernetes/charts/    
helm repo add aliyun  https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts 
helm repo add bitnami https://charts.bitnami.com/bitnami
  1. 查看仓库列表

helm repo list

  1. 删除仓库

Helm repo remove azure

  1. 从添加的repo仓库中查找

helm search repo nginx

  1. 拉取chart包,helm pull chartrepo/chartname

helm pull bitnami/nginx --version 13.2.34

  1. 校验打包

helm lint --strict xxx

  1. 基于chart目录进行打包

helm package ./mychart/

  1. 安装Chart示例
helm repo update
helm install bitnami/mysql --generate-name
  1. 查看chart信息
helm show chart bitnami/mysql  #命令简单的了解到这个chart的基本信息。
helm show all bitnami/mysql       #获取关于该chart的所有信息
  1. 打印releases

helm list

备注:区分namespace

  1. 卸载一个版本

helm uninstall mysql-1612624192

该命令会从Kubernetes卸载mysql-1612624192, 它将删除和该版本相关的所有相关资源(service、deployment、 pod等等)甚至版本历史。
如果您在执行helm uninstall的时候提供–keep-history选项, Helm将会保存版本历史。 您可以通过命令(helm status)查看该版本的信息。
–keep-history选项会让helm跟踪你的版本(即使你卸载了他们), 所以你可以审计集群历史甚至使用helm rollback回滚版本。

  1. 查看chart 中的可配置选项

使用helm show values <chart>可以查看 chart 中的可配置选项:

  1. helm install 命令可以从多个来源进行安装:
  • chart 的仓库
  • 本地 chart 压缩包:helm install foo foo-0.1.1.tgz
  • 解压后的 chart 目录: helm install foo path/to/foo
  • 完整的 URL: helm install foo https://example.com/charts/foo-1.2.3.tgz
  1. 测试chart而不是部署

当你想测试模板渲染的内容但又不想安装任何实际应用时,可以使用helm install --debug --dry-run goodly-guppy ./mychart。这样不会安装应用(chart)到你的kubenetes集群中,只会渲染模板内容到控制台(用于测试)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lldhsds

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值