helm2 初探

网友投稿 250 2022-10-29

helm2 初探

helm 作用

Helm把Kubernetes资源(比如deployments、services或 ingress等) 打包到一个chart中,而chart被保存到chart仓库。通过chart仓库可用来存储和分享chart。Helm使发布可配置,支持发布应用配置的版本管理,简化了Kubernetes部署应用的版本控制、打包、发布、删除、更新等操作。

helm 相关概念

Chart:一个Helm包,其中包含运行一个应用所需要的工具和资源定义,还可能包含Kubernetes集群中的服务定义,类似于Homebrew中的formula、APT中的dpkg或者Yum中的RPM文件。

Release:在Kubernetes集群上运行的一个Chart实例。在同一个集群上,一个Chart可以被安装多次。例如有一个MySQL Chart,如果想在服务器上运行两个MySQL数据库,就可以基于这个Chart安装两次。每次安装都会生成新的Release,会有独立的Release名称。

Repository:用于存放和共享Chart仓库。

helm 的架构

helm 主要有helm 客户端,Tiller 服务器和charts(组成)

HelmClient是一个客户端,拥有对Repository、Chart、Release等对象的管理能力,可以通过二进制文件或脚本进行安装。

TillerServer负责客户端指令和Kubernetes集群之间的交互,根据Chart定义,生成和管理各种Kubernetes的资源对象。

helm 安装

下载软件包

wget zxf helm-v2.12.2-linux-amd64.tar.gz

mv linux-amd64/helm /usr/bin/

helm version # 查看版本

安装Tiller server

Tiller 是helm 的服务端,运行于k8s 集群之上,如果开启了RBAC 的授权,需要创建相关的ServiceAccout

创建带有rabc 权限的账号

apiVersion: v1 kind: ServiceAccount metadata:   name: tiller   namespace: kube-system --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata:   name: tiller roleRef:   apiGroup: rbac.authorization.k8s.io   kind: ClusterRole   name: cluster-admin subjects:   - kind: ServiceAccount     name: tiller     namespace: kube-system

kubectl    apply -f    helm2_sa.yaml

tiller 安装的初始化

helm init --service-account tiller

查看pod 是否正常运行

kubectl get pod -n kube-system | grep till

helm 仓库源是外网的

添加仓库源

helm repo add stable    repo update

查看源

helm repo list

示列演示

helm 安装nginx

helm install apphub/nginx -n mynginx-v1

NAME 是 release的名字,

-n 指定参数名称

RESOURCES: 当前release 资源的名称

NOTES: 显示的是部分release 的资源使用方式

pod 访问测试

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:保护低速接口和电源电路的方法
下一篇:显示SonarQube私有项目徽章方案流程
相关文章

 发表评论

暂时没有评论,来抢沙发吧~