helm使用的一些小技巧

韵味老鸟 2024-07-12 17:18:35

helm使用的一些小技巧

一:HELM安装KUBE-PROMETHEUS-STACK

HELM安装KUBE-PROMETHEUS-STACK

二:ChartMuseum 提供了如下操作 chart 的 API

三:本地更新

四:Helm 常用命令(chart 安装、升级、回滚、卸载等操作)

#指定环境更新,安装

helm install umi-mo umi-mo/ -f umi-mo/values-sit.yaml -n metaverse

管道及方法trunc表示字符串截取,63作为参数传递给trunc方法,trimSuffix表示去掉-后缀{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}nindent表示前面的空格数 selector: matchLabels: {{- include "nginx.selectorLabels" . | nindent 6 }}lower表示将内容小写,quote表示用双引号引起来value: {{ include "mytpl" . | lower | quote }}Values:从 values.yaml 文件和用户提供的 values 文件传递到模板的 Values 值Chart:获取Chart.yaml 文件的内容,该文件中的任何数据都可以访问set的方式# 改变副本数和resource值$ helm install nginx-2 ./nginx --set replicaCount=2 --set resources.limits.cpu=200m --set resources.limits.memory=256Mi

default设置默认值

image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"

遍历values的数据

{{- with .Values.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} {{- end }}

toYaml处理值中的转义及特殊字符, "kubernetes.io/role"=master , name="value1,value2" 类似的情况

定义变量,模板中可以通过变量名字去引用

{{- $name := default .Chart.Name .Values.nameOverride }}

列出仓库中所有chart包信息

helm repo list

helm search repo meta-cm -l

#重写chart.yaml值

要重写chart中的值,使用

--values参数传递一个文件或者使用

--set参数在命令行传递配置,强制使用字符串要用

--set-string。 当值本身对于命令行太长或者是动态生成的时候,可以使用

--set-file设置独立的值

#推送chart到harbor(helm cm-push)

将chart推送到远程

#在线安装

helm plugin install https://github.com/chartmuseum/helm-push

#离线安装

# 1、下载安装包wget https://github.com/chartmuseum/helm-push/releases/tag/v0.10.3# 2、查看helm的plugin路径:helm envhelm env# 3、在该路径下创建helm-push文件夹,并将安装包拷贝到该文件夹下解压即可mkdir /root/.local/share/helm/plugins/helm-pushwget https://github.com/chartmuseum/helm-push/releases/download/v0.10.3/helm-push_0.10.3_linux_amd64.tar.gztar zxvf /root/.local/share/helm/plugins/helm-push/helm-push_0.10.3_linux_amd64.tar.gz -C /root/.local/share/helm/plugins/helm-push

helm 增加harbor repo

chartrepo,固定参数,bigdata自定义项目

helm repo add --ca-file /data/chartmuseum/charts/cert/ca.crt --cert-file /data/chartmuseum/charts/cert/harbor.meng.com.cert --key-file /data/chartmuseum/charts/cert/harbor.meng.com.key local-harbor --username=admin --password=Harbor12345 https://harbor.meng.com/chartrepo/meng

证书直接在harbor上下载

示例

# 查看帮助helm cm-push --help# 推送,接【目录】helm cm-push mysql/ local-harbor --ca-file /opt/k8s/helm/ca.crt# 推送,接【压缩包】helm cm-push wordpress-15.1.5.tgz local-harbor --ca-file /opt/k8s/helm/ca.crt# 推送,指定版本,--versionhelm cm-push mychart/ --version="1.2.3" local-harbor --ca-file /opt/k8s/helm/ca.crt # 强制推送,--forcehelm cm-push --force mychart-0.3.2.tgz local-harbor

helm cm-push src/game-chat-0.1.0.tgz local-harbor --ca-file /data/chartmuseum/charts/cert/ca.crt

harbor支持chart仓库

helm registry login harbor-cfc.umi.com --username=admin --password=Harbor12345

helm repo add --username admin --password Harbor12345 helm-harbor https://harbor-cfc.umi.com/chartrepo/library

helm cm-push game-broker/ helm-harbor -v 0.1.2

0 阅读:1