k8s部署dash-board
官方仓库
GitHub - kubernetes/dashboard: General-purpose web UI for Kubernetes clusters
dashboard官网介绍:
Deploy and Access the Kubernetes Dashboard | Kubernetes
选在对应kubelet版本的安装说明:
查看kubelet版本:
选择v1.21版本对应的dashboard版本为v2.2.0,如下图:
1.准备:
建议提前下载这两个镜像:(不然后面会出现3.2中遇到的问题),这个下载很慢~
docker pull kubernetesui/dashboard:v2.2.0
docker pull kubernetesui/metrics-scraper:v1.0.7
2.下载
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml
也可以直接使用 url
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.2.0/aio/deploy/recommended.yaml
但是,因为后续需要修改,而且 raw.githubusercontent.com 域名不一定总能打开,所以,下载下来比较放心!
3.改用 NodePort 方式访问
3.1 vim recommended.yaml
找到 k8s-app: kubernetes-dashboard ,增加 type: NodePort 和 nodePort: 30001
---kind: ServiceapiVersion: v1metadata:labels:k8s-app: kubernetes-dashboardname: kubernetes-dashboardnamespace: kubernetes-dashboardspec:type: NodePort #使用 NodePort方式,方便外网访问ports:- port: 443targetPort: 8443nodePort: 30001 #映射到host的30001端口selector:k8s-app: kubernetes-dashboard---
执行:kubectl apply -f recommended.yaml
查看pod状态,若出现一场请查看后面3.2步骤
3.2异常排查
发现dashbaord状态异常,查看dashboard-metrics-scraper-c45b7869d-djq5m详细信息:
kubectl describe pod dashboard-metrics-scraper-c45b7869d-djq5m -n kubernetes-dashboard
问题分析:错误信息来看是拉取kubernetesui/metrics-scraper:v1.0.7失败导致的;
解决方法:使用docker pull单独拉取
查看pod状态,第一个dashbaord-metrics-scraper已经1/1 Running正常;
同样方式解决第二个kubernetes-dashboard-576cb95f94-c497w异常:
查看kubernetes-dashboard-576cb95f94-c497w详细信息:
kubectl describe pod kubernetes-dashboard-576cb95f94-c497w -n kubernetes-dashboard
问题分析:从错误打印发现拉取kubernetesui/dashboard:v2.4.0失败导致
问题解决:使用docker pull单独拉取
dockers pull kubernetesui/dashboard:v2.2.0
创建访问用户
官方仓库文档
Creating sample user镜像仓库文档
Creating sample user创建一个 adminuser(Creating a Service Account)
vim dashboard-adminuser.yamlapiVersion: v1kind: ServiceAccountmetadata:name: admin-usernamespace: kubernetes-dashboard
生成
kubectl apply -f dashboard-adminuser.yaml创建一个ClusterRole(Creating a ClusterRoleBinding)
vim dashboard-ClusterRoleBinding.yamlapiVersion: rbac.authorization.k8s.io/v1kind: ClusterRoleBindingmetadata:name: admin-userroleRef:apiGroup: rbac.authorization.k8s.iokind: ClusterRolename: cluster-adminsubjects:- kind: ServiceAccountname: admin-usernamespace: kubernetes-dashboard
生成
kubectl apply -f dashboard-ClusterRoleBinding.yaml获取访问令牌(Getting a Bearer Token)
从仓库文档中找到 Getting a Bearer Token 命令样本
kubectl -n kubernetes-dashboard get secret $(kubectl -n kubernetes-dashboard get sa/admin-user -o jsonpath="{.secrets[0].name}") -o go-template="{{.data.token | base64decode}}"
结果如下:
eyJhbGciOiJSUzI1NiIsImtpZCI6IkhRVkxadFBlblNkbGYtZ05obUNDWmxkNzhEazFsbWoxOGNCSkRST25VY28ifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLWpzc3BwIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI4NmJkZGQwZS1lODE0LTQ4MjItODAyYS0wZGVlZWU1YzQ2ZjAiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZXJuZXRlcy1kYXNoYm9hcmQ6YWRtaW4tdXNlciJ9.OivIRkS11wQMNTztVeokL63qYSl3-Cb9UnHHa3yFhiVBuDz_92F7gy3C1etX2MEE1l-1zAFnmiAypum1T-PjCVSodvgvUKv_N3KTDSUdW0JIpDxymK_cIoU6H6aqL5F5FvYgodYNKc05wuKVH2Jc1udZthADoD5RRpo1S_ttwLfjJgiSOa-Bz-4A_jv4EzJqcBqVZtusacosT6x9JxcukoWq9bmuSZ8Lp99dVFzsCHgD1XicBYSm6RQ8tXAYioEHa0tk3SJrC6rLrLBa5_NIO9ZkwGWpumj35yC-SkD8uDjuwPFtn1DE7EmOEut8N1Rg5kZ9izV4_7oY9CK1nQDcb[root@c[root@centos7-189 working]# [root@centos7-[root@c[root@centos7-[root@centos7-[root@centos7-[root@c[root@centos7-
或者
这个指令样本忘记从哪里 cp 来的了
kubectl -n kubernetes-dashboard get secret $(kubectl -n kubernetes-dashboard get sa/admin-user -o jsonpath="{.secrets[0].name}") -o go-template="{{.data.token | base64decode}}"
返回结果样本:
eyJhbGciOiJSUzI1NiIsImtpZCI6IkhRVkxadFBlblNkbGYtZ05obUNDWmxkNzhEazFsbWoxOGNCSkRST25VY28ifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLWpzc3BwIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI4NmJkZGQwZS1lODE0LTQ4MjItODAyYS0wZGVlZWU1YzQ2ZjAiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZXJuZXRlcy1kYXNoYm9hcmQ6YWRtaW4tdXNlciJ9.OivIRkS11wQMNTztVeokL63qYSl3-Cb9UnHHa3yFhiVBuDz_92F7gy3C1etX2MEE1l-1zAFnmiAypum1T-PjCVSodvgvUKv_N3KTDSUdW0JIpDxymK_cIoU6H6aqL5F5FvYgodYNKc05wuKVH2Jc1udZthADoD5RRpo1S_ttwLfjJgiSOa-Bz-4A_jv4EzJqcBqVZtusacosT6x9JxcukoWq9bmuSZ8Lp99dVFzsCHgD1XicBYSm6RQ8tXAYioEHa0tk3SJrC6rLrLBa5_NIO9ZkwGWpumj35yC-SkD8uDjuwPFtn1DE7EmOEut8N1Rg5kZ9izV4_7oY9CK1nQDcbQ
5.打开Dashboard
- 浏览器打开 https://192.168.1.189:30001/#/login
- 使用前一步保存的 token 登录
k8s部署dash-board相关推荐
- K8S部署工具:KubeOperator集群导入
K8S部署工具:KubeOperator集群导入 基本信息⚓︎ 输入要导入集群的名称.Api Server.Router.Token 示例 Api Server: https://172.16.10. ...
- K8S部署工具:KubeOperator集群部署
K8S部署工具:KubeOperator集群部署 集群信息⚓︎ 项目: 选择集群所属项目 供应商: 支持裸金属(手动模式)和部署计划(自动模式) 版本: 支持版本管理中最新的两个 Kubernetes ...
- K8S部署工具:KubeOperator集群规划-手动模式
K8S部署工具:KubeOperator集群规划-手动模式 KubeOperator 支持两种 Kubernetes 集群部署方式,一种是手动模式,另外一种是自动模式.手动模式下,用户需要自行准备主机 ...
- K8S部署工具:KubeOperator集群规划-自动模式
K8S部署工具:KubeOperator集群规划-自动模式 KubeOperator 支持两种 Kubernetes 集群部署方式,一种是自动模式,另外一种是手动模式,我们推荐使用自动模式.在自动模式 ...
- K8S部署工具:KubeOperator系统设置
K8S部署工具:KubeOperator系统设置 系统设置⚓︎ 仓库协议: 支持 http 和 https,默认 http 仓库 IP: 默认为部署 KubeOperator 的服务器 IP.将使用该 ...
- K8S部署工具:KubeOperator安装部署
K8S部署工具:KubeOperator安装部署 硬件要求⚓︎ 最小化配置 角色 CPU核数 内存 系统盘 数量 部署机 4 8G 100G 1 Master 4 8G 100G 1 Worker 4 ...
- K8S部署工具:KubeOperator主要概念
K8S部署工具:KubeOperator主要概念 部署模式⚓︎ 手动模式: 用户需要自己准备物理机或虚拟机,存储可选择 NFS 持久化存储,外部 ceph 存储等 自动模式: 用户只需要绑定云平台(比 ...
- k8s部署zkui 2.0
下载地址 https://github.com/DeemOpen/zkui maven构建 [root@k8s-n0 zkui]# pwd /home/k8s-yaml/zk-ui2/zkui [ro ...
- K8S——关于K8S控制台的yaml文件编写(基于上一章多节点K8S部署)
K8S--关于K8S控制台的yaml文件编写(基于上一章多节点K8S部署) 一.yaml文件编写流程 二.证书自签 一.yaml文件编写流程 rbac.yaml---->secret.yaml- ...
- k8s部署tomcat及web应用_k8s部署tomcat的yaml文件
1.k8s部署tomcat的yaml文件 apiVersion: apps/v1 kind: Deployment metadata: name: mytomcat spec: replicas: 5 ...
最新文章
- Java开发常用Linux命令
- vue-cli3.0 生产包去除console.log
- TinyXml高速入门(一)
- 手机cpu排行_鲁大师手机芯片排行榜:麒麟990第四,骁龙855第五!
- 在 Excel 中如何使用宏示例删除列表中的重复项
- Session ,ViewState,以及接收其它网页传过来的值的使用
- EntityFramework Core查询数据基本本质
- WCF 基础 契约 和 绑定
- 自相关函数 互相关函数 平稳随机过程
- 深度学习论文阅读目标检测篇(六)中英对照版:YOLOv3《 An Incremental Improvement》
- Whois接口查询文档
- [NOIP2013 提高组] 火柴排队
- Perl Learning 3 Subroutine
- PAT_乙级_1007_筱筱
- 订单除了快递、达达同城以外,可设置到店自取
- 【Splay】【ZJOI2006】书架
- 常用天气预报和资料网址
- Linux C语言调用C++动态链接库-改
- python函数带()与否
- Linux系统 通过i2c读写铁电存储器 ram
热门文章
- 防火墙5788——论小贝的魅力
- 设置不同jdbc的MaxActive数,吞吐量会有差异
- 分布java开发_java分布服务:我打赌,没人可以这么精短的讲出分布服务架构吧...
- css设置背景透明 兼容,每日一更之CSS背景透明内容不透明及CSS兼容性写法
- 幸福的种子—亲子共读图画书
- c++ 中的符号* 和
- macOS 10.14 mojave安装低版本iTunes 12.6.x (转载)
- 上海微创软件公司简介
- 测一测你的性格基因与生命路线,很准噢!
- 关系型数据库和非关系型数据库的区别以及应用的场景