Kubernetes安装helm

1.下载helm二进制安装包

https://get.helm.sh/helm-v2.16.0-linux-amd64.tar.gz
将helm目录下的helm文件拷贝到/usr/local/bin/helm

2.helm 服务端安装Tiller

Tiller 是以 Deployment 方式部署在 Kubernetes 集群中的,只需使用以下指令便可简单的完成安装。

helm init

由于 Helm 默认会去 storage.googleapis.com 拉取镜像,如果你当前执行的机器不能访问该域名的话可以使用以下命令来安装

helm init --client-only --stable-repo-url https://aliacs-app-catalog.oss-cn-hangzhou.aliyuncs.com/charts/
helm repo add incubator https://aliacs-app-catalog.oss-cn-hangzhou.aliyuncs.com/charts-incubator/
helm repo update
# 创建服务端
helm init --service-account tiller --upgrade -i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.16.0  --stable-repo-url https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts

# 创建TLS认证服务端,参考地址:https://github.com/gjmzj/kubeasz/blob/master/docs/guide/helm.md
helm init --service-account tiller --upgrade -i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.16.0 --tiller-tls-cert /etc/kubernetes/ssl/tiller001.pem --tiller-tls-key /etc/kubernetes/ssl/tiller001-key.pem --tls-ca-cert /etc/kubernetes/ssl/ca.pem --tiller-namespace kube-system --stable-repo-url https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts

# 注意helm 版本和 Tiller版本相同

3.给Tiller授权

因为 Helm 的服务端 Tiller 是一个部署在 Kubernetes 中 Kube-System Namespace 下 的 Deployment,它会去连接 Kube-Api 在 Kubernetes 里创建和删除应用。

而从 Kubernetes 1.6 版本开始,API Server 启用了 RBAC 授权。目前的 Tiller 部署时默认没有定义授权的 ServiceAccount,这会导致访问 API Server 时被拒绝。所以我们需要明确为 Tiller 部署添加授权。

创建 Kubernetes 的服务帐号和绑定角色

kubectl create serviceaccount --namespace kube-system tiller
kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller

为Tiller设置账号

# 使用 kubectl patch 更新 API 对象
$ kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'
deployment.extensions "tiller-deploy" patched

查看是否授权成功

$ kubectl get deploy --namespace kube-system ? tiller-deploy ?--output yaml|grep ?serviceAccount
serviceAccount: tiller
serviceAccountName: tiller

验证Tiller是否成功

$ kubectl -n kube-system get pods|grep tiller
tiller-deploy-6d68f5c78f-nql2z ? ? ? ? ?1/1 ? ? ? Running ? 0 ? ? ? ? ?5m

$ helm version
Client: &version.Version{SemVer:"v2.16.0", GitCommit:"20adb27c7c5868466912eebdf6664e7390ebe710", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.16.0", GitCommit:"20adb27c7c5868466912eebdf6664e7390ebe710", GitTreeState:"clean"}

4.卸载Helm服务端Tiller

helm reset 或
helm reset --force

原文地址:https://www.cnblogs.com/limengchun/p/11994060.html

时间: 2024-08-30 18:27:13

Kubernetes安装helm的相关文章

kubernetes 安装手册(成功版)

管理组件采用staticPod或者daemonSet形式跑的,宿主机os能跑docker应该本篇教程能大多适用安装完成仅供学习和实验 本次安裝的版本: Kubernetes v1.10.0 (1.10.0和1.10.3亲测成功) CNI v0.6.0 Etcd v3.1.13 Calico v3.0.4 Docker CE latest version(18.03) 节点信息本教学将以下列节点数与规格来进行部署Kubernetes集群,系统可采用Ubuntu 16.x与CentOS 7.x IP

Kubernetes 与 Helm:使用同一个 Chart 部署多个应用

k8s 集群搭建好了,准备将 docker swarm 上的应用都迁移到 k8s 上,但需要一个一个应用写 yaml 配置文件,不仅要编写 deployment.yaml 还要编写 service.yaml ,而很多应用的配置是差不多的,这个繁琐工作让人有些望而却步. k8s 有没有针对这个问题的解救之道呢?发现了救星 Helm -- k8s 应用程序包管理器,实际操作体验一下. 首先在 k8s master 节点上安装 helm ,用下面的1行命令就可以搞定. curl https://raw

kubernetes 的helm 部署

kubernetes 的helm 部署 标签(空格分隔):kubernetes系列 一:什么是 Helm 二:Helm部署 一:什么是 Helm 在没使用 helm 之前,向 kubernetes 部署应用,我们要依次部署 deployment.svc 等,步骤较繁琐.况且随着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂,helm 通过打包的方式,支持发布的版本管理和控制,很大程度上简化了 Kubernetes 应用的部署和管理 Helm 本质就是让 K8s 的应用管理(Depl

CentOS7.5Kubernets(k8s)1.12.2之安装Helm(二)

K8s安装Helm注:charts仓库如果用google的必须设置代理(比如squid),不需要的话可以用阿里的charts仓库1.下载helmHelm命令下载地址:https://github.com/helm/helm/releases链接:https://pan.baidu.com/s/15Je7HwUZ9u0JLo6PLNpUsw提取码:qah9Helm所需镜像包地址链接:https://pan.baidu.com/s/1xtrD1rOGFjNgHcg6SKrDFw提取码:iymn#ta

Kubernetes安装手记-kubeadm

十.Kubernetes实践篇 10.1) Kubernetes安装三种方式(官方提供) 10.1.1)minikubeMinikube是一个工具,可以在本地快速运行一个单点的Kubernetes,尝试Kubernetes或日常开发的用户使用.不能用于生产环境. 官方文档: https://kubernetes.io/docs/setup/minikube/ 10.1.2)kubeadmkubeadm可帮助你快速部署一套kubernetes集群.kubeadm设计目的为新用户开始尝试kubern

如何在Ubuntu里安装Helm

Helm是什么?在战网上玩过暗黑破坏神2代的程序员们应该还记得,Helm是国度的意思. 而在计算机领域,Helm是什么? Helm是Kubernetes的一个包管理工具,有点像nodejs的npm,Ubuntu的apt和CentOS的yum.这些包管理工具的目的都是用来简化对应应用的部署和管理. Helm的基本概念: 1. Chart: 被Helm管理的安装包,里面包含需要部署的安装包资源.Chart之于Helm相当于yum rpm之于CentOS. 每个Chart包里的内容: (1) 包的基本

docker管理神器—kubernetes—安装篇

2.1.环境 master与minion都是使用centos 7的系统 修改hostname与hosts文件: centos-master:192.168.137.102 centos-minion1:192.168.137.100 centos-minion2:192.168.137.101 2.2.关闭防火墙: #systemctl disable firewalld #systemctl stop firewalld 2.3.修改iptables 把icmp-host-prohibited

centos7 kubernetes安装手册

安装之前,将三台centos7服务器禁止防火墙,同时需要启动的镜像2台node机器都要保持时间一致,否则pod不能启动 1 有三台centos7服务器:10.1.1.170(master),10.1.1.169 node1,10.1.1.171 node2 2 在三台机器上安装ntp服务,以保证所有时间可以同步 #yum -y install ntp #systemctl start ntpd #systemctl enable ntpd 3 在10.1.1.170上安装kubernetes m

CentOS7 Kubernetes 安装Error

按照官方文档使用yum.d repo来配置安装Kubernetes等相关服务报错如下: Error: docker-engine conflicts with docker-1.10.3-46.el7.centos.14.x86_64 原因:安装的docker-engine与kubernets spec里面定义的docker相冲突,需要首先卸载docker-engine和docker-engine-selinux,再安装Kubernetes. 运行命令: yum remove -y docker