ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

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

2019-10-11 17:57:37  阅读:274  来源: 互联网

标签:Kubernetes 十六 Chart chart Helm helm tiller k8s


目录

helm介绍

helm把一系列复杂的有状态和无状态服务的部署封装起来(实际上就是对yaml文件的组织),然后你可以暴露出一些自定义参数信息供用户选择,这样部署就会变得简单很多.

核心术语

  • Helm 是一个命令行下的客户端工具。主要用于 Kubernetes 应用程序 Chart 的创建、打包、发布以及创建和管理本地和远程的 Chart 仓库。
  • Tiller 是 Helm 的服务端,部署在 Kubernetes 集群中。Tiller 用于接收 Helm 的请求,并根据 Chart 生成 Kubernetes 的部署文件( Helm 称为 Release ),然后提交给 Kubernetes 创建应用。Tiller 还提供了 Release 的升级、删除、回滚等一系列功能。
  • Chart Helm 的软件包,采用 TAR 格式。类似于 APT 的 DEB 包或者 YUM 的 RPM 包,其包含了一组定义 Kubernetes 资源相关的 YAML 文件
  • Repoistory Helm 的软件仓库,Repository 本质上是一个 Web 服务器,该服务器保存了一系列的 Chart 软件包以供用户下载,并且提供了一个该 Repository 的 Chart 包的清单文件以供查询。Helm 可以同时管理多个不同的 Repository。
  • Release 使用 helm install 命令在 Kubernetes 集群中部署的 Chart 称为 Release

helm安装

helm安装

wget https://get.helm.sh/helm-v2.14.3-linux-amd64.tar.gz
tar xf helm-v2.14.3-linux-amd64.tar.gz
cd linux-amd64 #进入解压目录会看到两个可执行文件helm和tiller, 若采用容器化部署到kubernetes中,则可以不用管tiller,只需将helm复制到/usr/bin目录即可
cp helm /usr/bin/
echo "source <(helm completion bash)" >> /root/.bashrc # 命令自动补全

Tiller安装

创建tiller相关的rbac

apiVersion: v1
kind: ServiceAccount
metadata:
  name: tiller
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: tiller
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
  - kind: ServiceAccount
    name: tiller
    namespace: kube-system
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标签和helm保持一致, 这里是v2.14.3

kubectl get pods -n kube-system -l app=helm
kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'

初始化后通过命令查看tiller pod创建情况

helm使用

添加chart源

由于阿里的chart源可能更新不及时, 会比较老, 所以建议替换为默认源或者微软的azure源

参考链接: https://github.com/BurdenBear/kube-charts-mirror

helm repo add stable  http://mirror.azure.cn/kubernetes/charts/
helm repo add incubator  http://mirror.azure.cn/kubernetes/charts-incubator/

基础命令

命令 作用
搜索chart helm search CHARTNAME
查看chart详细信息 helm inspect CHARTNAME
安装 helm install --name mem1 stable/memcached [--dry-run]
获取状态信息 helm status mem1
列出release helm list [-a]
删除release helm delete [--purge] mem1
下载chart helm fetch stable/redis
创建chart helm create CHARTNAME
语法检测 helm lint CHARTNAME
打包 helm package CHARTNAME

参考链接

https://www.cnblogs.com/tylerzhou/p/11100649.html
https://jimmysong.io/kubernetes-handbook/practice/helm.html

标签:Kubernetes,十六,Chart,chart,Helm,helm,tiller,k8s
来源: https://www.cnblogs.com/peitianwang/p/11649621.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有