kubernetes1.9安装dashboard,以及token认证问题
写在前面
dashboard的安装非常简单。但按照官网建议的方式安装完成后,输入token登录时会没有反应。
这个问题困扰了我一整天,最终在这里找到了答案。
原因如下:
按官方文档建议的方式安装完dashboard后,使用kubectl proxy
代理的方式来 访问webUI。使用这个代理的方式访问就会导致登录无响应的问题。
我们需要将dashboard的service类型改为NodePort,将端口映射到虚拟机上,然后直接通过虚拟机的ip地址登录
安装dashboard
首先下载官网提供的dashboard.yaml
wget https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
修改yaml,添加NodePort.
kind: Service apiVersion: v1 metadata: labels: k8s-app: kubernetes-dashboard name: kubernetes-dashboard namespace: kube-system spec: # 添加Service的type为NodePort type: NodePort ports: - port: 443 targetPort: 8443 # 添加映射到虚拟机的端口,k8s只支持30000以上的端口 nodePort: 30001 selector: k8s-app: kubernetes-dashboard
安装dashboard
kubectl create -f kubernetes-dashboard.yaml
获取token
这里有一个简单的命令:
kubectl -n kube-system describe $(kubectl -n kube-system get secret -n kube-system -o name | grep namespace) | grep token
也可以自己手动查询:
# 输入下面命令查询kube-system命名空间下的所有secret kubectl get secret -n kube-system # 然后获取token。只要是type为service-account-token的secret的token都可以使用。 # 比如我们获取replicaset-controller-token-wsv4v的touken kubectl -n kube-system describe replicaset-controller-token-wsv4v
访问dashboard
通过node节点的ip,加刚刚我们设置的nodePort就可以访问了。
https://<node-ip>:<node-port>
认证有两种方式:
- 通过我们刚刚获取的token直接认证
-
通过Kubeconfig文件认证
只需要在kubeadm生成的admin.conf文件末尾加上刚刚获取的token就好了。- name: kubernetes-admin user: client-certificate-data: xxxxxxxx client-key-data: xxxxxx token: "在这里加上token"
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
kubernetes认证,对接第三方认证系统,对接github认证
概述 本文介绍如何使用github账户去关联自己kubernetes账户。达到如下效果: 使用github用户email作为kubernetes用户,如fhtjob@hotmail.com 创建对应的clusterrole绑定给fhtjob@hotmail.com这个用户 给fhtjob@hotmail这个用户创 建一个kubeconfig文件,让改用户可以使用kubectl命令操作集群,且只有部分权限 dex介绍 dex 是一个统一认证的服务,支持各种认证协议如Ouath2 ldap等,自己可以作为一个identity provider,也可以连到别的id provider(如github)上,dex作为一个中间代理. 流程 http://47.52.197.163:5555 http://47.52.197.163:32000 人(浏览器) dex client dex server github kubectl kubernetes server | login(scope) | | | | | |------1-------->| | | | | | |---------...
- 下一篇
kubeadm源码分析(kubernetes离线安装包,三步安装)
kubeadm源码分析 说句实在话,kubeadm的代码写的真心一般,质量不是很高。 几个关键点来先说一下kubeadm干的几个核心的事: kubeadm 生成证书在/etc/kubernetes/pki目录下 kubeadm 生成static pod yaml配置,全部在/etc/kubernetes/manifasts下 kubeadm 生成kubelet配置,kubectl配置等 在/etc/kubernetes下 kubeadm 通过client go去启动dns kubeadm init 代码入口 cmd/kubeadm/app/cmd/init.go 建议大家去 看看cobra 找到Run函数来分析下主要流程: 如果证书不存在,就创建证书,所以如果我们有自己的证书可以把它放在/etc/kubernetes/pki下即可, 下文细看如果生成证书 if res, _ := certsphase.UsingExternalCA(i.cfg); !res { if err := certsphase.CreatePKIAssets(i.cfg); err != nil { retu...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS6,CentOS7官方镜像安装Oracle11G
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Red5直播服务器,属于Java语言的直播服务器
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- 2048小游戏-低调大师作品