在kubernetes中完成的所有操作都可以通过命令行工具kubectl完成。其实,为了提供更丰富的用户体验,kubernetes还开发了一个基于web的用户界面(Dashboard)。用户可以使用Dashboard部署容器化的应用,还可以监控应用的状态,执行故障排查以及管理kubernetes中各种资源

一.部署Dashboard

1.下载yaml,并运行Dashboard

# 下载yaml
[root@k8s-master01 ~]# wget  https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml# 修改kubernetes-dashboard的Service类型
kind: Service
apiVersion: v1
metadata:labels:k8s-app: kubernetes-dashboardname: kubernetes-dashboardnamespace: kubernetes-dashboard
spec:type: NodePort  # 新增ports:- port: 443targetPort: 8443nodePort: 30009  # 新增selector:k8s-app: kubernetes-dashboard部署
[root@master ~]# kubectl create -f dashboard.yml
namespace/kubernetes-dashboard created
serviceaccount/kubernetes-dashboard created
service/kubernetes-dashboard created
secret/kubernetes-dashboard-certs created
secret/kubernetes-dashboard-csrf created
secret/kubernetes-dashboard-key-holder created
configmap/kubernetes-dashboard-settings created
role.rbac.authorization.k8s.io/kubernetes-dashboard created
clusterrole.rbac.authorization.k8s.io/kubernetes-dashboard created
rolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created
clusterrolebinding.rbac.authorization.k8s.io/kubernetes-dashboard created
deployment.apps/kubernetes-dashboard created
service/dashboard-metrics-scraper created
deployment.apps/dashboard-metrics-scraper created//查看namespace下的kubernetes-dashboard下的资源
[root@master ~]#  kubectl get pods -n kubernetes-dashboard
NAME                                         READY   STATUS    RESTARTS   AGE
dashboard-metrics-scraper-64bcc67c9c-845w8   1/1     Running   0          53m
kubernetes-dashboard-5c8bd6b59-qzz9h         1/1     Running   0          53m
[root@master ~]#  kubectl get svc -n kubernetes-dashboard
NAME                        TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)         AGE
dashboard-metrics-scraper   ClusterIP   10.98.227.234   <none>        8000/TCP        70m
kubernetes-dashboard        NodePort    10.100.214.30   <none>        443:30001/TCP   70m

部署完成后即可在web网页访问(https)

2.创建访问账户,获取token

创建账号
//创建user.yml文件
[root@master ~]# cat user.yml
apiVersion: v1
kind: ServiceAccount
metadata:name: admin-usernamespace: kubernetes-dashboard
[root@master ~]# kubectl create -f user.yml
serviceaccount/admin-user created
[root@master ~]# kubectl get serviceaccount -n kubernetes-dashboard
NAME                   SECRETS   AGE
admin-user             0         18s
default                0         115m
kubernetes-dashboard   0         115m授权进行角色绑定
[root@master ~]# cat clusterrolebinding.yml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:name: admin-user
roleRef:apiGroup: rbac.authorization.k8s.iokind: ClusterRolename: cluster-admin
subjects:
- kind: ServiceAccountname: admin-usernamespace: kubernetes-dashboard[root@master ~]# kubectl create -f clusterrolebinding.yml
clusterrolebinding.rbac.authorization.k8s.io/admin-user created
[root@master ~]# kubectl get clusterrolebinding -n kubernetes-dashboard | grep admin
admin-user                                             ClusterRole/cluster-admin                                                          61s
cluster-admin                                          ClusterRole/cluster-admin                                                          12d获取账号token
[root@master ~]# kubectl -n kubernetes-dashboard create token admin-user
eyJhbGciOiJSUzI1NiIsImtpZCI6IkRKNXA1VFFpQ0lfMTdoc0Q3Sk5WNFJlZmZvYWxXS25DSXRGQWpZQ2FCX1UifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiXSwiZXhwIjoxNjYzNTk3ODQ0LCJpYXQiOjE2NjM1OTQyNDQsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsInNlcnZpY2VhY2NvdW50Ijp7Im5hbWUiOiJhZG1pbi11c2VyIiwidWlkIjoiYWYyMWEwMjktYWZmNy00OWQ5LTllZGMtYjJhMWQ5YzAyNDkzIn19LCJuYmYiOjE2NjM1OTQyNDQsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDprdWJlcm5ldGVzLWRhc2hib2FyZDphZG1pbi11c2VyIn0.LQ6AcsiL_ACIbjqzOTHr1qjfcZ7d1bn1DILFaBkQpzinVb-IzDaTcaECSUS06pYHhzGO4t265TD910g4ZyZ9F-7RZX2VaJ9fe6TpGhwnDVCal0N8aPsv7S2bZTAzOxtfyeNnYoHwAfzki5WJsyz2B3HYZrg-TZzewKnH2JVq4VWR8wULlYb4OAJD-_hvcr75syzJwX8hggeibm7xMawk-VGu66mE6R2xsI-CNfzpDmC1HqRNFMGMVL-ZNEDAdqOGDSOie-KVYj-IDnf8eytY8JYVUtoD_bBPtWTUtZaSEc-j7an4dyWJu307lxUPi_o05brkRP4mdIRMlp7V5ZCZiw

3.通过浏览器访问Dashboard的UI

将token输入,即可登入系统中

至此,部署成功

二. 使用DashBoard

[root@k8s-master manifest]# cat httpd.yml
apiVersion: v1
kind: Pod
metadata:name: pod-pullimagenamespace: devlabels:app: httpdlab
spec:nodeName: k8s-node2containers:- name: httpdimage: httpd:latestimagePullPolicy: IfNotPresent
[root@k8s-master manifest]#
[root@k8s-master manifest]# kubectl apply -f httpd.yml
pod/pod-pullimage created
[root@k8s-master manifest]# kubectl get -f httpd.yml
NAME            READY   STATUS    RESTARTS   AGE
pod-pullimage   1/1     Running   0          2s
[root@k8s-master manifest]# kubectl get pods
No resources found in default namespace.
[root@k8s-master manifest]# kubectl get pods -n dev
NAME            READY   STATUS    RESTARTS   AGE
pod-pullimage   1/1     Running   0          15s

删除

创建deploy

 

 

测试

[root@k8s-master manifest]# curl 10.104.120.92:8888
<html><body><h1>It works!</h1></body></html>
[root@k8s-master manifest]#

修改

 访问

[root@k8s-master manifest]# curl 10.104.120.92:8888
<html><body><h1>It works!</h1></body></html>
[root@k8s-master manifest]# kubectl get svc -n dev
NAME   TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
web1   NodePort   10.104.120.92   <none>        8888:30514/TCP   11m
[root@k8s-master manifest]#

k8s的DashBoard相关推荐

  1. 搭建K8S 的dashboard的坑the server could not find the requested resource

    搭建K8S 的dashboard的时候显示404 the server could not find the requested resource 如图所示 然后日志文件 是这个样子的 Oct 17 ...

  2. 【Kubernetes】k8s的安全管理详细说明【SA配置、k8s安装dashboard、资源限制(resource、limit、resourcequota)】

    文章目录 环境准备 token验证&&kubeconfig验证 role和clusterrole赋权 sa[Service Account] sa总结 1.service accoun ...

  3. K8S部署Dashboard和Heapster

    K8S部署Dashboard和Heapster 0.前言 文章使用的k8s版本为1.10.0,dashboard版本为v1.8.3 系统为CentOS7 总共有三台机器: Name IP Role c ...

  4. k8s部署dashboard

    1.dashboard概述 Dashboard是基于网页的Kubernetes用户界面.您可以使用Dashboard将容器应用部署到Kubernetes集群中,也可以对容器应用排错,还能管理集群资源. ...

  5. k8s系列--- dashboard认证及分级授权

    http://blog.itpub.net/28916011/viewspace-2215214/ 因版本不一样,略有改动 Dashboard官方地址: https://github.com/kube ...

  6. K8S使用dashboard管理集群

    今年3月份在公司的内部k8s培训会上,开发同事表示使用dashboard的可以满足日常开发需求,例如查看pod的日志,执行exec指令,查看pod的运行状态等,但对basic认证的权限控制表示担忧. ...

  7. K8s运行dashboard命令启动报错:no endpoints available for service \kubernetes-dashboard\

    今天启动k8s dashboard的时候报错:"no endpoints available for service \"kubernetes-dashboard\"&q ...

  8. [k8s]kubernetes dashboard的安装

    之前一直使用的是命令行,但是又觉得如果连控制台都还没有动手实践过会不会有点low 1.安装dashboard 参阅官网的安装方法,https://github.com/kubernetes/dashb ...

  9. k8s安装dashboard及账号密码登陆

    1.k8s安装管理后台 (1)获取yaml配置文件wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/depl ...

  10. 【云原生 | Kubernetes 实战】01、K8s-v1.25集群搭建和部署基于网页的 K8s 用户界面 Dashboard

    目录 一.K8s 概述 可以查看官方文档:概述 | Kubernetes 组件交互逻辑: 二.kubeadm 安装 K8s-v1.25高可用集群 k8s 环境规划: 1.初始化环境 2.安装 Dock ...

最新文章

  1. Python Module_subprocess_子进程(程序调用)
  2. Java 求分段函数g(x)的值
  3. 2022-01-07
  4. 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面。
  5. div默认外边距是多少_CSS盒模型之内边距、边框、外边距 十九问(持续更新)...
  6. mysql4ge表联表查询_【MySQL】MariaDB10.2新特性--Flashback
  7. 《Python参考手册》7 类与面向对象编程
  8. cl.g4r.win index.php,win7 wamp环境配置Oracle数据库连接
  9. php com adodb,php COM 连接ADODB.Connection数据库
  10. 格雷码转换成二进制c语言程序,基于PLC程序实现格雷码转换成二进制码.pdf
  11. 如何压缩ppt幻灯片
  12. java 过滤微信昵称_java过滤微信昵称特殊字符
  13. Web前端开发-为网页元素添加阴影效果
  14. element-ui中el-upload在ie10中无法上传相同图片的问题:XMLHttpRequest: 网络错误 0x2efd, 由于出现错误 00002efd 而导致此项操作无法完成。
  15. 微软预览word_如何解决Microsoft Word中的打印问题
  16. Tic Tac Toe简单井字棋
  17. redis:Unable to connect to localhost:6379
  18. android如何获取RAM和ROM使用情况
  19. 综述类论文审稿意见建议
  20. 机器学习实战分享:用 Python 进行信用卡欺诈检测

热门文章

  1. 我玩过的微信小程_已迁移
  2. 有这5款开源软件,语音转文字很简单!
  3. 北京大学计算机专业保研夏令营,北京大学12院系办夏令营 优秀者可保研
  4. LabVIEW与MATLAB混合编程——调用Matlab中.m的函数
  5. 三类机构舆情-2019年3月5日
  6. [JZOJ4763] 【NOIP2016提高A组模拟9.7】旷野大计算
  7. 在cadence中使用VerilogA
  8. 简单实现Vite的HRM热更新 ———《第二篇热更新上》
  9. 软考(3)-知识产权与标准化
  10. 好的决策是怎么产生的