安装Helm通常使用一下命令:
[root@k8s-master ~]# curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get | bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 6875 100 6875 0 0 1232 0 0:00:05 0:00:05 --:--:-- 1807
Downloading https://get.helm.sh/helm-v2.17.0-linux-amd64.tar.gz
Preparing to install helm and tiller into /usr/local/bin
helm installed into /usr/local/bin/helm
tiller installed into /usr/local/bin/tiller
Run 'helm init' to configure helm.
安装完成会提示执行helm init
安装tiller ,但是有时间镜像会很慢,所以选择手动安装tiller 。
root@k8s-master helm]# helm init --upgrade --tiller-image registry.cn-beijing.aliyuncs.com/google_registry/tiller:v2.16.9
此时执行helm list
坑出现了,版本不匹配。
[root@k8s-master ~]# helm list
Error: incompatible versions client[v2.17.0] server[v2.16.9]
我选择了升级版本
[root@k8s-master ~]# helm init --upgrade --tiller-image registry.cn-beijing.aliyuncs.com/google_registry/tiller:v2.17.0
$HELM_HOME has been configured at /root/.helm.
Tiller (the Helm server-side component) has been updated to registry.cn-beijing.aliyuncs.com/google_registry/tiller:v2.17.0 .
到那时查看pod是会发现ErrImagePull,ImagePullBackOff,查看一下pod。
[root@k8s-master ~]# kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
tiller-deploy-54cb5b4ff9-tgz8c 0/1 ErrImagePull 0 50s
查看tiller-deploy-54cb5b4ff9-tgz8c pod日志信息
[root@k8s-master ~]# kubectl describe pod tiller-deploy-54cb5b4ff9-tgz8c -n kube-system
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled <unknown> default-scheduler Successfully assigned kube-system/tiller-deploy-54cb5b4ff9-tgz8c to k8s-node1
Normal Pulling 15s (x3 over 72s) kubelet, k8s-node1 Pulling image "registry.cn-beijing.aliyuncs.com/google_registry/tiller:v2.17.0"
Warning Failed 13s (x3 over 57s) kubelet, k8s-node1 Failed to pull image "registry.cn-beijing.aliyuncs.com/google_registry/tiller:v2.17.0": rpc error: code = Unknown desc = Error response from daemon: manifest for registry.cn-beijing.aliyuncs.com/google_registry/tiller:v2.17.0 not found: manifest unknown: manifest unknown
Warning Failed 13s (x3 over 57s) kubelet, k8s-node1 Error: ErrImagePull
Normal BackOff 2s (x3 over 57s) kubelet, k8s-node1 Back-off pulling image "registry.cn-beijing.aliyuncs.com/google_registry/tiller:v2.17.0"
Warning Failed 2s (x3 over 57s) kubelet, k8s-node1 Error: ImagePullBackOff
1.删除tiller deployment,顺带会一起删除tiller pod
kubectl delete -n kube-system deployment tiller-deploy
2.删除完再执行helm init,发现提示已安装
[root@k8s-master ~]# helm init --service-account=tiller --tiller-image=registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.17.0 --history-max 300
$HELM_HOME has been configured at /root/.helm.
Warning: Tiller is already installed in the cluster.
(Use --client-only to suppress this message, or --upgrade to upgrade Tiller to the current version.)
3.再次执行helm reset --force
卸载tiller
[root@k8s-master ~]# helm reset --force
Tiller (the Helm server-side component) has been uninstalled from your Kubernetes Cluster.
[root@k8s-master ~]# helm init --service-account=tiller --tiller-image=registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.17.0 --history-max 300
$HELM_HOME has been configured at /root/.helm.
Tiller (the Helm server-side component) has been installed into your Kubernetes Cluster.
Please note: by default, Tiller is deployed with an insecure 'allow unauthenticated users' policy.
To prevent this, run `helm init` with the --tiller-tls-verify flag.
For more information on securing your installation see: https://v2.helm.sh/docs/securing_installation/
4.再次查询版本信息,发现已经不报错了。
[root@k8s-master ~]# helm version
Client: &version.Version{SemVer:"v2.17.0", GitCommit:"a690bad98af45b015bd3da1a41f6218b1a451dbe", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.17.0", GitCommit:"a690bad98af45b015bd3da1a41f6218b1a451dbe", GitTreeState:"clean"}
5.安装mysql报错
[root@k8s-master ~]# helm install stable/mysql
Error: validation failed: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"
解决方案更换镜像源 helm repo add stable http://mirror.azure.cn/kubernetes/charts/