安装helm
Kubernetes包管理器,Helm 帮助您管理 Kubernetes 应用程序——Helm Charts 帮助您定义、安装和升级最复杂的 Kubernetes 应用程序。
下载helm
ntpdate ntp1.aliyun.com
wget https://storage.googleapis.com/kubernetes-helm/helm-v2.13.1-linux-amd64.tar.gz
在install-k8s目录下面新建helm文件夹,并解压下载的tar包,赋权
cd /usr/local/install-k8s/
mkdir helm
mv helm-v2.13.1-linux-amd64.tar.gz helm
cd helm
tar -zxvf helm-v2.13.1-linux-amd64.tar.gz
cp -a linux-amd64/helm /usr/local/bin/
chmod a+x /usr/local/bin/helm
导入镜像helm-tiller
docker load -i helm-tiller.tar
创建rbac.yaml
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
创建tiller
kubectl create -f rbac.yaml
安装错误处理
1、如出现如下提示,说明已经创建了
Error from server (AlreadyExists): error when creating "rbac.yaml": serviceaccounts "tiller" already exists
Error from server (AlreadyExists): error when creating "rbac.yaml": clusterrolebindings.rbac.authorization.k8s.io "tiller" already exists
执行删除yaml操作
kubectl delete -f rbac.yaml
2、如出现以下提示,说明版本问题,需要升级
serviceaccount/tiller created
Warning: rbac.authorization.k8s.io/v1beta1 ClusterRoleBinding is deprecated in v1.17+, unavailable in v1.22+; use rbac.authorization.k8s.io/v1 ClusterRoleBinding
clusterrolebinding.rbac.authorization.k8s.io/tiller created
执行删除yaml操作
kubectl delete -f rbac.yaml
修改rbac.yaml,将apiVersion改为: rbac.authorization.k8s.io/v1
vi rbac.yaml
修改完成,退出
:wq
百度可以发些是因为版本低了,使用v2.15.2版本可以解决,于是下载gcr.io/kubernetes-helm/tiller:v2.15.2镜像。
补充国外镜像下载不下来的方法,如启动容器发现缺少gcr.io/kubernetes-helm/tiller:v2.15.2镜像,可以通过如下方法:
首先通过阿里云镜像下载,注意格式
docker pull registry.aliyuncs.com/google_containers/tiller:v2.15.2
然后将阿里云下载的镜像名,tag为需要的镜像名称
docker tag registry.aliyuncs.com/google_containers/tiller:v2.15.2 gcr.io/kubernetes-helm/tiller:v2.15.2
初始化helm服务
helm init --service-account tiller --skip-refresh
查看pod详情
kubectl describe pod tiller-deploy-58565b5464-jjzqs -n kube-system
查看helm版本
helm version
如果显示类似如下信息,说明helm安装成功
#helm version
Client: &version.Version{SemVer:"v2.13.1", GitCommit:"618447cbf203d147601b4b9bd7f8c37a5d39fbb4", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.13.1", GitCommit:"618447cbf203d147601b4b9bd7f8c37a5d39fbb4", GitTreeState:"clean"}