helm安装解决无授权问题

在安装kubesphere的时候需要先安装镜像管理工具helm它配合着tiller服务能方面地创建拉取地三镜像库更像一个本地的maven工具,安装helm可以通过脚本的方式担是容易被强,下载二进制的软件包解压得到helm把它移动/user/local/bin目录下,然后查看版本,此时是不可用状态。

前提:helm需要权限和角色来访问tiller服务器,这种是行为是对镜像资源的保护,在k8s环境中安装,义pod形式或镜像的形式存在,由于tiller镜像需要外网所以下载镜像文件导入。

1 分配空间和角色,空间用来隔离每个相同的pod的多分存在,角色是保护好k8s所维护的容器环境,不轻易被用户删除,执行kubectl apply -f helm.abc.yam分配角色空间

2 初始化tiller服务,这个过程就是部署一个pod,这个行为定义多个资源,部署资源,服务资源等,资源有按类型区分,初始化tiller服务的时候指定本地已经下载好的镜像如helm init --service-account tiller --tiller-image=jessestuart/tiller:v2.16.3 --history-max 200如果要更行执行

helm init --service-account tiller --tiller-image=jessestuart/tiller:v2.16.3 --upgrade --history-max 200加新版本,但这些都看似没问题的时候继续。

3 查看helm version,selm和tiller都在运行,可以为helm添加常用的镜像源,helm repo add/delete name,查看镜像源helm repo list 更新镜像源helm update,如果镜像源添加失败,是地址不正确或是还没有创建好服务pod,这时候想提前添加源需要创建源的配置文件,然后让helm执行源的加入,最后完成初始化。

4 验证功能是否可用,我安装kubesphere就是遇到helm不可用的问题,没有授权认证,意思是helm想通过tiller来管理镜像仓库,也需要经过k8s的同意认可,需要生成密钥对,这个过程如果你重复执行操作可能导致密钥过时不匹配,tiller无法认证处理k8s的环境资源,解决删除tiller部署,重新完成tiller命名空间角色的创建和tiller的初始化

5 卸载tiller,删除部署信息(一个pod的发布描述)

kubectl delete deployment tiller-deploy -n kube-system

删除额外的配置资源

kubectl get -n kube-system secrets,sa,clusterrolebinding -o name|grep tiller|xargs kubectl -n kube-system delete

kubectl get all -n kube-system -l app=helm -o name|xargs kubectl delete -n kube-system

6 删除后重新完成,后面使用helm ls 和helm list即功能成功,安装kubesphere就不会报错

7 kubeadm集群初始化命令,找到合适的版本加上友好的网络一次成功(kubeadm部署k8s)

kubeadm init --apiserver-advertise-address=10.0.2.9 --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --kubernetes-version v1.17.3 --service-cidr=10.96.0.0/16 --pod-network-cidr=10.244.0.0/16

8报错检查镜像下载情况,手动下载,或者使用kubeadm提供的默认文件,将初始化的指令在文件中保存并应用执行达到同样的效果初始k8s

相关推荐
此冬歌咏6 天前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
玉&心6 天前
通过Arthas在线诊断K8S中的内存及JVM等使用情况
docker·k8s·arthas
流烟默6 天前
K8s StatefulSet 详解:有状态应用的“身份证”与“固定住址”
k8s·statefulset
cg.family6 天前
K8S集群手动巡检
k8s
九皇叔叔6 天前
Kubernetes 资源管理方式详解:命令式与声明式管理
docker·容器·k8s
九皇叔叔7 天前
K8S 资源菜单
docker·容器·kubernetes·k8s
九皇叔叔8 天前
Kubernetes 命令式对象配置详解:使用 YAML 管理 Kubernetes 资源
docker·容器·k8s
小马同学-8 天前
crictl实战:K8s容器运行时排障工具
容器·k8s·crictl
富士康质检员张全蛋8 天前
Kafka Connect-Standalone 模式
k8s
九皇叔叔9 天前
Kubernetes 核心概念:集群架构、核心组件与资源对象
docker·容器·kubernetes·k8s