k8s中Helm安装使用(15)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k8s中Helm安装使用(15)相关的知识,希望对你有一定的参考价值。

概念:
helm把一系列复杂的有状态和无状态服务的部署封装起来(实际上就是对yaml文件的组织),然后你可以暴露出一些自定义参数信息供用户选择,这样部署就会变得简单很多。有点类似ansible,salt的yaml文件差不多。Helm相当于kubernetes环境下的yum包管理工具

组件:
Helm :是一个命令行下的客户端工具

Tiller: 是 Helm 的服务端,部署在 Kubernetes 集群中

Chart Helm :的软件包,类似YUM 的 RPM 包

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

Release 使用 helm install 命令在 Kubernetes 集群中部署的 Chart 称为 Release

helm安装

wget https://get.helm.sh/helm-v2.14.3-linux-amd64.tar.gz

技术图片
我们的客户端helm已经安装完成了,但是server端的tiller没有安装哈

================================================================

Tiller安装

创建tiller相关的rbac
技术图片

技术图片
完成之后初始化
helm init --upgrade -i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.14.3 --stable-repo-url https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
这里要指定阿里云的源,不然无法的下载会失败哈,大家懂得
技术图片
说明tiller已经创建成功了

=========================================================

创建了tiller的 ServceAccount 后还没完,因为我们的 Tiller 之前已经就部署成功了,而且是没有指定 ServiceAccount 的,所以我们需要给 Tiller 打上一个 ServiceAccount 的补丁:
kubectl patch deploy --namespace kube-system tiller-deploy -p ‘{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}‘

技术图片

简单的创建一个测试一下
技术图片
技术图片

修改nginx镜像
技术图片
更改 value.yaml 文件下面的 image tag 即可,将默认的 stable 更改为 1.7.9,为了测试方便,我们把 Service 的类型也改成 NodePort

现在我们来尝试安装下这个 Chart :
技术图片

是不是和salt和ansible功能差不多呢

技术图片

======================================
查看release
技术图片

打包chart

技术图片

删除release
技术图片

===========================================

Helm 有三个重要概念:

chart:包含了创建Kubernetes的一个应用实例的必要信息
config:包含了应用发布配置信息
release:是一个 chart 及其配置的一个运行实例
现在是不是好理解点了,结合操作

以上是关于k8s中Helm安装使用(15)的主要内容,如果未能解决你的问题,请参考以下文章

国内不fq安装K8S三: 使用helm安装kubernet-dashboard

云原生之kubernetes实战在k8s集群下helm工具的安装与使用

十六. k8s--helm安装与使用

k8s 安装helm

持续集成与持续交付 - 使用Helm在K8S安装Registry

Mac 环境安装 k8s, helm, harbor