在阿里云k8s服务中玩转最新版原生dashboard
摘要: 部署最新的kubernetes dashboard
缘由
阿里云的k8s服务,已经在阿里云的控制台提供了托管式的原生kubernetes控制台,无需客户自己占用机器来启动该控制台应用,但是这里有些“局限”:
- 每次都要登录到阿里云的控制台
- 如果期望使用最新的k8s控制台,而阿里云提供的k8s控制台又可能不是最新的版本
这个时候可以怎么办呢?自行部署k8s的原生控制台,通过kubectl proxy的方式去访问
部署最新k8s控制台
前置条件
- 在阿里云部署了一套k8s集群
- 在本地配置好了k8s config文件,并能访问集群
- 安装好docker
部署步骤
- 获取镜像:因为官方提供的镜像是在gcr上,受限国内网络情况,直接获取官方对应的yaml做部署是不行。所以必须先获取一个镜像并推送到国内的镜像仓库中,可以放到阿里云你自己的镜像中。(阿里云的镜像仓库是免费的哦,同时支持vpc模式访问,流量都免费)
具体做法如下:
- 找一台国外的机器,先从grc获取最新image到本地
- 给镜像打tag
- push到阿里云的镜像仓库(目前dashboard最新版本为1.10.0)
#docker login --username=<your name> registry.cn-shenzhen.aliyuncs.com #docker pull k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.0 #docker tag k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.0 registry.cn-shenzhen.aliyuncs.com/<namespace>/kubernetes-dashboard-amd64:v1.10.0 #docker push registry.cn-shenzhen.aliyuncs.com/<namespace>/kubernetes-dashboard-amd64:v1.10.0
- 使用官网yaml部署dashboard
$kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
- 修改对应的镜像为自己镜像
$kubectl edit deployment/kubernetes-dashboard -n kube-system
这样就部署成功了
如果没有办法从国外获取到镜像,可以查询下阿里云的公共镜像仓库是否已经有对应的镜像
地址在:registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64
可以参考我之前的文章<<通过OAuth方式与docker hub v2 API交互>>来获取该镜像的tag列表,很幸运,该列表很新:
原因是阿里云容器团队会定期同步gcr中的google_containers下的image,这个同步工具也已经开源了: https://github.com/AliyunContainerService/sync-repo (求star)
- 访问dashboard
- 启动proxy
$kubectl proxy
- 然后浏览器访问:
- http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
- 登录
使用以下方式获得一个admin token来登录(支持多集群下config,官网的方式只支持一个集群的config,通过kubctx切换集群)
$kubectx <cluster name> $kubectl describe secret -n kube-system $(kubectl get secrets --all-namespaces| grep admin-token | awk '{print $2}') | grep -E '^token' | cut -f2 -d':' | tr -d ' '
这样你就可以玩最新的k8s的原生dashboard了
参考文档
- <<通过OAuth方式与docker hub v2 API交互>> https://yq.aliyun.com/articles/635236?spm=a2c4e.11155435.0.0.55be3312bxSM1
- k8s dashboard github: https://github.com/kubernetes/dashboard
- dashboard官网介绍:https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/
作者:了哥-duff
相关推荐
lihongtai 2020-11-09
julien 2020-06-26
CosEmon 2020-11-13
sqisydream 2020-11-11
fjlmcy 2020-10-31
visionarywind 2020-10-31
特立独行 2020-10-30
Hitpoint云计算 2020-10-30
sqsfjsjlpf 2020-10-29
平凡的程序员 2020-10-15
yunna0 2020-09-23
OpenCDN网站加速 2020-09-21
82453961 2020-09-21
qual0 2020-09-21
mysteryrat 2020-09-21
Liucute 2020-09-21
古影轩 2020-09-17
aolia000 2020-09-11