kubernetes-helm

目录

一、helm

1.Chart

2.Repository(仓库)

3.Release

二、 Helm配置

1.安装 helm 

2.使用 helm 安装 Chart

三、Helm 自定义模板

1.拉取 chart

2.创建自定义的 chart

3.修改 chart

4.打包 chart

5.部署 chart

6.部署 ingress

7.回滚

四、Helm 仓库

1.安装 harbor

2.安装 push 插件

(1)在线安装

(2)离线安装

(3)添加仓库

(4)推送 chart 到 harbor 中


一、helm

       在没使用 helm 之前,向 kubernetes 部署应用,我们要依次部署 deployment、svc 等,步骤较繁琐。 况且随着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂,helm 通过打包的方式,支持发布的版本管理和控制, 很大程度上简化了 Kubernetes 应用的部署和管理。

        Helm 本质就是让 K8s 的应用管理(Deployment、Service 等)可配置,可以通过类似于传递环境变量的方式能动态生成。通过动态生成 K8s 资源清单文件(deployment.yaml、service.yaml)。然后调用 Kubectl 自动执行 K8s 资源部署。

        Helm 是官方提供的类似于 YUM 的包管理器,是环境的流程封装。Helm 有三个重要的概念:Chart 、Repository 和 Release。

1.Chart

       Helm 的软件包,采用 TAR 格式。类似于 APT 的 DEB 包或者 YUM 的 RPM 包,其包含了一组定义 Kubernetes 资源相关的 YAML 文件。

2.Repository(仓库)

       Helm 的软件仓库,Repository 本质上是一个 Web 服务器,该服务器保存了一系列的 Chart 软件包以供用户下载,并且提供了一个该 Repository 的 Chart 包的清单文件以供查询。Helm 可以同时管理多个不同的 Repository。

3.Release

       使用 helm install 命令在 Kubernetes 集群中部署的 Chart 称为 Release。可以理解为 Helm 使用 Chart 包部署的一个应用实例。一个 chart 通常可以在同一个集群中安装多次。每一次安装都会创建一个新的 release。
        以 MySQL chart 为例,如果你想在你的集群中运行两个数据库,可以安装该 chart 两次。每一个数据库都会拥有它自己的 release 和 release name。可以将 release 想象成应用程序发布的版本号。

二、 Helm配置

1.安装 helm 

下载二进制 Helm client 安装包
https://github.com/helm/helm/tags

tar -zxvf helm-v3.6.0-linux-amd64.tar.gz

mv linux-amd64/helm /usr/local/bin/helm

helm version

命令补全

source <(helm completion bash)

2.使用 helm 安装 Chart

添加常用的 chart 仓库

helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add stable http://mirror.azure.cn/kubernetes/charts
helm repo add aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
helm repo add incubator https://charts.helm.sh/incubator

更新 charts 列表

helm repo update          
helm repo list

查看 stable 仓库可用的 charts 列表

helm search repo stable

删除 incubator 仓库

helm repo remove incubator

查看 chart 信息

helm show chart stable/mysql      查看指定 chart 的基本信息

helm show all stable/mysql		  获取指定 chart 的所有信息

安装 chart

helm install my-redis bitnami/redis [-n default]   #指定 release 的名字为 my-redis,-n 指定部署到 k8s 的 namespace

helm install bitnami/redis --generate-name    #不指定 release 的名字时,需使用 –generate-name 随机生成一个名字

查看所有 release

helm ls 
helm list

查看指定的 release 状态

helm
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值