第十章 DashBoard

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

部署Dashboard

  1. 下载yaml,并运行Dashboard
# 下载yaml
[root@master ~]# wget  https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.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 recommended.yaml# 查看namespace下的kubernetes-dashboard下的资源
[root@master ~]# kubectl get pod,svc -n kubernetes-dashboard
NAME                                            READY   STATUS    RESTARTS   AGE
pod/dashboard-metrics-scraper-c79c65bb7-zwfvw   1/1     Running   0          111s
pod/kubernetes-dashboard-56484d4c5-z95z5        1/1     Running   0          111sNAME                               TYPE       CLUSTER-IP      EXTERNAL-IP  PORT(S)         AGE
service/dashboard-metrics-scraper  ClusterIP  10.96.89.218    <none>       8000/TCP        111s
service/kubernetes-dashboard       NodePort   10.104.178.171  <none>       443:30009/TCP   111s

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

# 创建账号
[root@master-1 ~]# kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard# 授权
[root@master-1 ~]# kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin# 获取账号token
[root@master ~]#  kubectl get secrets -n kubernetes-dashboard | grep dashboard-admin
dashboard-admin-token-xbqhh        kubernetes.io/service-account-token   3      2m35s[root@master ~]# kubectl describe secrets dashboard-admin-token-xbqhh -n kubernetes-dashboard
Name:         dashboard-admin-token-xbqhh
Namespace:    kubernetes-dashboard
Labels:       <none>
Annotations:  kubernetes.io/service-account.name: dashboard-adminkubernetes.io/service-account.uid: 95d84d80-be7a-4d10-a2e0-68f90222d039Type:  kubernetes.io/service-account-tokenData
====
namespace:  20 bytes
token:      eyJhbGciOiJSUzI1NiIsImtpZCI6ImJrYkF4bW5XcDhWcmNGUGJtek5NODFuSXl1aWptMmU2M3o4LTY5a2FKS2cifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4teGJxaGgiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiOTVkODRkODAtYmU3YS00ZDEwLWEyZTAtNjhmOTAyMjJkMDM5Iiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmVybmV0ZXMtZGFzaGJvYXJkOmRhc2hib2FyZC1hZG1pbiJ9.NAl7e8ZfWWdDoPxkqzJzTB46sK9E8iuJYnUI9vnBaY3Jts7T1g1msjsBnbxzQSYgAG--cV0WYxjndzJY_UWCwaGPrQrt_GunxmOK9AUnzURqm55GR2RXIZtjsWVP2EBatsDgHRmuUbQvTFOvdJB4x3nXcYLN2opAaMqg3rnU2rr-A8zCrIuX_eca12wIp_QiuP3SF-tzpdLpsyRfegTJZl6YnSGyaVkC9id-cxZRb307qdCfXPfCHR_2rt5FVfxARgg_C0e3eFHaaYQO7CitxsnIoIXpOFNAR8aUrmopJyODQIPqBWUehb7FhlU1DCduHnIIXVC_UICZ-MKYewBDLw
ca.crt:     1025 bytes

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

以token方式登录

在登录页面上输入上面的token

出现下面的页面代表成功

#### 以 Kubeconfig 方式登录 > dashboard-admin-token-xbqhh 是上方生成的 secrets

##  获取token
DASH_TOCKEN=$(kubectl -n kubernetes-dashboard get secrets dashboard-admin-token-xbqhh -o jsonpath={.data.token} |base64 -d)## 设置 kubeconfig 文件中的一个集群条目  --server 自备
kubectl config set-cluster kubernetes --server="https://192.168.0.183:6443" --kubeconfig=/root/dashbord-admin.conf## 设置 kubeconfig 文件中的一个用户条目
kubectl config set-credentials kubernetes-dashboard --token=$DASH_TOCKEN --kubeconfig=/root/dashbord-admin.conf## 设置 kubeconfig 文件中的一个上下文条目
kubectl config set-context kubernetes-dashboard@kubernetes --cluster=kubernetes --user=kubernetes-dashboard --kubeconfig=/root/dashbord-admin.conf## 设置 kubeconfig 文件中的当前上下文
kubectl config use-context kubernetes-dashboard@kubernetes --kubeconfig=/root/dashbord-admin.conf

下载当前文件到本地 /root/dashbord-admin.conf

使用 dashbord-admin.conf 登录

使用DashBoard

本章节以Deployment为例演示DashBoard的使用

查看

选择指定的命名空间dev,然后点击Deployments,查看dev空间下的所有deployment

扩缩容

Deployment上点击规模,然后指定目标副本数量,点击确定

编辑

Deployment上点击编辑,然后修改yaml文件,点击确定

查看Pod

点击Pods, 查看pods列表

操作Pod

选中某个Pod,可以对其执行日志(logs)、进入执行(exec)、编辑、删除操作

Dashboard提供了kubectl的绝大部分功能,这里不再一一演示

[k8s] 第十章 DashBoard相关推荐

  1. k8s 1.24 dashboard

    下载部署文件 wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.1/aio/deploy/recommended.yam ...

  2. 本地k8s集群搭建保姆级教程(4)-安装k8s集群Dashboard

    安装k8s集群管理UI 1 Dashboard安装 1.1 参考文档 Dashboard 是基于网页的 Kubernetes 用户界面. 你可以使用 Dashboard 将容器应用部署到 Kubern ...

  3. 一起来学k8s 06.安装dashboard

    Dashboard Install Kubernetes Dashboard就是k8s集群的web界面,集合了所有命令行可以操作的所有命令.界面如下所示 环境 192.168.48.101 maste ...

  4. k8s平台搭建,dashboard图形化管理,纯实例

    关于k8s的原理我不多说,官网文档都有,https://www.kubernetes.org.cn/k8s 本章主要将如何搭建k8s以及使用图形化界面(dashbroad)管理k8s 1.准备四台主机 ...

  5. 学习笔记之-Kubernetes(K8S)介绍,集群环境搭建,Pod详解,Pod控制器详解,Service详解,数据存储,安全认证,DashBoard

    笔记来源于观看黑马程序员Kubernetes(K8S)教程 第一章 kubernetes介绍 应用部署方式演变 在部署应用程序的方式上,主要经历了三个时代: 传统部署:互联网早期,会直接将应用程序部署 ...

  6. Hyper-v搭建K8s v1.18.6 单主集群环境(包括dashboard)

    一.配置基本环境: 环境配置: Windows 10 Hyper-V虚拟化: 创建3个虚拟机(CentOS Linux release 7.8),1个用于master节点,2个用于work节点:mas ...

  7. CentOS7.9 通过 kubeadm1.23.5 安装 K8S

    CentOS7.9 通过 kubeadm1.23.5 安装 K8S 安装前需知 一.环境说明 1.1. 主机配置 1.2. 主机名规划 1.3. 软件版本 二.准备工作 2.1. SSH配置 2.2. ...

  8. k8s集成kube-prometheus

    正文 下载kube-prometheus,注意与k8s版本对应支持,k8s-1.25版本使用kube-prometheus-release-0.12 克隆仓库,按照指引使用kubectl安装prome ...

  9. 微服务探索之路03篇-docker私有仓库Harbor搭建+Kubernetes(k8s)部署私有仓库的镜像

    目录: 微服务探索之路01篇.net6.0项目本地win10系统docker到服务器liunx系统docker的贯通 微服务探索之路02篇liunx ubuntu服务器部署k8s(kubernetes ...

最新文章

  1. 有哪些适合放在程序员办公桌上的高逼格物件?哈哈哈哈哈哈哈!
  2. DataGridView的使用
  3. CSAPP第4章家庭作业参考答案
  4. 树的Prufer 编码和最小生成树计数
  5. boost之timer,progress_timer,progress_display的介绍及使用
  6. js 难点之原型理解
  7. python反编译class文件_反编译java class文件
  8. POST型SQL注入教学
  9. c#一个项目同时兼容浩辰cad和AutoCad
  10. 《艾伦图灵传:如谜的解谜者》阅读笔记
  11. flatpak安装的firefox视频播放卡顿的解决方案
  12. DFT信道估计步骤及实例
  13. android 静默安装实现,Android 中静默安装实现详解
  14. angularjs实现复选框赋值传参提交表单
  15. C# 网上收集的一些所谓的开源项目
  16. 拿什么产品引流年轻女性?发什么能吸引女粉丝?
  17. Mac微信小助手(免认证登录、多开、防撤回)---强烈推荐
  18. 无法连接imssage信息服务器,苹果iPhone X用iMessage发短信信息总是失败解决方法
  19. [DLX+bfs] hdu 4069 Squiggly Sudoku
  20. Ueeshop:外贸网站推广优化方法和注意事项

热门文章

  1. ISME:二氧化碳和氮水平对植物根表菌群和功能的影响
  2. Microbiome:根系分泌物驱动土壤记忆抵御植物病原菌
  3. NBT:宏基因组二、三代混合组装软件OPERA-MS
  4. R语言ggplot2可视化:ggplot2可视化散点图并使用geom_mark_circle函数在数据簇或数据分组的数据点周围添加圆圈进行注释(自定义圆圈的大小)
  5. R语言编写自定义分组统计函数(customize statistics function)可视化分组箱图并在X轴标签下方添加分组对应的统计值(样本数N、中位数median、四分位数的间距iqr)
  6. R语言可视化分面图、假设检验分组t检验、可视化单变量分组分面箱图(faceting boxplot)并添加p值(Make facet boxplot and add p-values)、添加抖动数据点
  7. R语言ggplot2可视化多行文本轴标签、轴标签带下标、轴标签数学公式实战
  8. python字典之defaultdict详解
  9. 自然语言处理NLP、自然语言理解NLU、自然语言生成NLG、任务家族
  10. 经典大数据面试题及解析