k8s的DashBoard
在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相关推荐
- 搭建K8S 的dashboard的坑the server could not find the requested resource
搭建K8S 的dashboard的时候显示404 the server could not find the requested resource 如图所示 然后日志文件 是这个样子的 Oct 17 ...
- 【Kubernetes】k8s的安全管理详细说明【SA配置、k8s安装dashboard、资源限制(resource、limit、resourcequota)】
文章目录 环境准备 token验证&&kubeconfig验证 role和clusterrole赋权 sa[Service Account] sa总结 1.service accoun ...
- K8S部署Dashboard和Heapster
K8S部署Dashboard和Heapster 0.前言 文章使用的k8s版本为1.10.0,dashboard版本为v1.8.3 系统为CentOS7 总共有三台机器: Name IP Role c ...
- k8s部署dashboard
1.dashboard概述 Dashboard是基于网页的Kubernetes用户界面.您可以使用Dashboard将容器应用部署到Kubernetes集群中,也可以对容器应用排错,还能管理集群资源. ...
- k8s系列--- dashboard认证及分级授权
http://blog.itpub.net/28916011/viewspace-2215214/ 因版本不一样,略有改动 Dashboard官方地址: https://github.com/kube ...
- K8S使用dashboard管理集群
今年3月份在公司的内部k8s培训会上,开发同事表示使用dashboard的可以满足日常开发需求,例如查看pod的日志,执行exec指令,查看pod的运行状态等,但对basic认证的权限控制表示担忧. ...
- K8s运行dashboard命令启动报错:no endpoints available for service \kubernetes-dashboard\
今天启动k8s dashboard的时候报错:"no endpoints available for service \"kubernetes-dashboard\"&q ...
- [k8s]kubernetes dashboard的安装
之前一直使用的是命令行,但是又觉得如果连控制台都还没有动手实践过会不会有点low 1.安装dashboard 参阅官网的安装方法,https://github.com/kubernetes/dashb ...
- k8s安装dashboard及账号密码登陆
1.k8s安装管理后台 (1)获取yaml配置文件wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/depl ...
- 【云原生 | Kubernetes 实战】01、K8s-v1.25集群搭建和部署基于网页的 K8s 用户界面 Dashboard
目录 一.K8s 概述 可以查看官方文档:概述 | Kubernetes 组件交互逻辑: 二.kubeadm 安装 K8s-v1.25高可用集群 k8s 环境规划: 1.初始化环境 2.安装 Dock ...
最新文章
- Python Module_subprocess_子进程(程序调用)
- Java 求分段函数g(x)的值
- 2022-01-07
- 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面。
- div默认外边距是多少_CSS盒模型之内边距、边框、外边距 十九问(持续更新)...
- mysql4ge表联表查询_【MySQL】MariaDB10.2新特性--Flashback
- 《Python参考手册》7 类与面向对象编程
- cl.g4r.win index.php,win7 wamp环境配置Oracle数据库连接
- php com adodb,php COM 连接ADODB.Connection数据库
- 格雷码转换成二进制c语言程序,基于PLC程序实现格雷码转换成二进制码.pdf
- 如何压缩ppt幻灯片
- java 过滤微信昵称_java过滤微信昵称特殊字符
- Web前端开发-为网页元素添加阴影效果
- element-ui中el-upload在ie10中无法上传相同图片的问题:XMLHttpRequest: 网络错误 0x2efd, 由于出现错误 00002efd 而导致此项操作无法完成。
- 微软预览word_如何解决Microsoft Word中的打印问题
- Tic Tac Toe简单井字棋
- redis:Unable to connect to localhost:6379
- android如何获取RAM和ROM使用情况
- 综述类论文审稿意见建议
- 机器学习实战分享:用 Python 进行信用卡欺诈检测