k8s部署使用Dashboard(十)--技术流ken

时间:2023-01-13 19:04:59

安装Dashboard

前面博客Kubernetes 所有的操作我们都是通过命令行工具 kubectl 完成的。为了提供更丰富的用户体验,Kubernetes 还开发了一个基于 Web 的 Dashboard,用户可以用 Kubernetes Dashboard 部署容器化的应用、监控应用的状态、执行故障排查任务以及管理 Kubernetes 各种资源。

在 Kubernetes Dashboard 中可以查看集群中应用的运行状态,也能够创建和修改各种 Kubernetes 资源,比如 Deployment、Job、DaemonSet 等。用户可以 Scale Up/Down Deployment、执行 Rolling Update、重启某个 Pod 或者通过向导部署新的应用。Dashboard 能显示集群中各种资源的状态以及日志信息。

可以说,Kubernetes Dashboard 提供了 kubectl 的绝大部分功能,大家可以根据情况进行选择。

第一步:安装

Kubernetes 默认没有部署 Dashboard,可通过如下命令安装:

[root@ken ~]# kubectl apply -f http://mirror.faasx.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml

第二步:查看service

[root@ken ~]# kubectl --namespace=kube-system get deployment kubernetes-dashboard
NAME READY UP-TO-DATE AVAILABLE AGE
kubernetes-dashboard / 31s [root@ken ~]# kubectl --namespace=kube-system get service kubernetes-dashboard
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes-dashboard NodePort 10.96.4.88 <none> /TCP 16m

第三步:允许外部访问

(会占用终端)

[root@ken ~]# kubectl proxy --address='0.0.0.0'  --accept-hosts='^*$'

第四步:通过浏览器访问 Dashboard https://172.20.10.2:8001/,登录界面如下:

k8s部署使用Dashboard(十)--技术流ken

第五步:配置登录权限

Dashboard 支持 Kubeconfig 和 Token 两种认证方式,为了简化配置,我们通过配置文件 dashboard-admin.yaml 为 Dashboard 默认用户赋予 admin 权限。

[root@ken ~]# cat dashboard-admin.yml
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: kubernetes-dashboard
labels:
k8s-app: kubernetes-dashboard
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: kubernetes-dashboard
namespace: kube-system

第六步:执行kubectl apply使之生效

[root@ken ~]# kubectl apply -f dashboard-admin.yml

第七步:现在直接点击登录页面的 SKIP 就可以进入 Dashboard 了。

k8s部署使用Dashboard(十)--技术流ken

dashboard界面结构

Dashboard 的界面很简洁,分为三个大的区域。

  1. 顶部操作区
    k8s部署使用Dashboard(十)--技术流ken

    在这里用户可以搜索集群中的资源、创建资源或退出。

  2. 左边导航菜单
    通过导航菜单可以查看和管理集群中的各种资源。菜单项按照资源的层级分为两类:
    Cluster 级别的资源 
    k8s部署使用Dashboard(十)--技术流ken

    Namespace 级别的资源 
     k8s部署使用Dashboard(十)--技术流ken

    默认显示的是 default Namespace,可以进行切换:
    k8s部署使用Dashboard(十)--技术流ken

  3. 中间主体区
    在导航菜单中点击了某类资源,中间主体区就会显示该资源所有实例,比如点击 Pods
    k8s部署使用Dashboard(十)--技术流ken

典型使用场景

接下来我们介绍几个 Dashboard 的典型使用场景。

部署 Deployment

点击顶部操作区的 + CREATE 按钮。

k8s部署使用Dashboard(十)--技术流ken

用户可以直接输入要部署应用的名字、镜像、副本数等信息;也可以上传 YAML 配置文件。如果是上传配置文件,则可以创建任意类型的资源,不仅仅是 Deployment。

在线操作

对于每种资源,都可以点击 k8s部署使用Dashboard(十)--技术流ken

按钮执行各种操作。

k8s部署使用Dashboard(十)--技术流ken

比如点击 View/edit YAML 可直接修改资源的配置,保存后立即生效,其效果与 kubectl edit 一样。

k8s部署使用Dashboard(十)--技术流ken

查看资源详细信息

点击某个资源实例的名字,可以查看到详细信息,其效果与 kubectl describe 一样。

k8s部署使用Dashboard(十)--技术流ken

查看 Pod 日志

在 Pod 及其父资源(DaemonSet、ReplicaSet 等)页面点击 k8s部署使用Dashboard(十)--技术流ken按钮,可以查看 Pod 的日志,其效果与 kubectl logs 一样。

k8s部署使用Dashboard(十)--技术流ken

Kubernetes Dashboard 界面设计友好,自解释性强,可以看作 GUI 版的 kubectl

k8s部署使用Dashboard(十)--技术流ken的更多相关文章

  1. k8s数据管理(八)--技术流ken

    volume 我们经常会说:容器和 Pod 是短暂的.其含义是它们的生命周期可能很短,会被频繁地销毁和创建.容器销毁时,保存在容器内部文件系统中的数据都会被清除. 为了持久化保存容器的数据,可以使用 ...

  2. Jenkins&plus;Git&plus;Gitlab&plus;Ansible实现持续集成自动化部署动态网站(二)--技术流ken

    项目前言 在上一篇博客<Jenkins+Git+Gitlab+Ansible实现持续化集成一键部署静态网站(一)--技术流ken>中已经详细讲解了如何使用这四个工具来持续集成自动化部署一个 ...

  3. k8s集群监控(十一)--技术流ken

    Weave Scope   在我之前的docker监控中<Docker容器监控(十)--技术流ken>就已经提到了weave scope. Weave Scope 是 Docker 和 K ...

  4. Jenkins&plus;Git&plus;Gitlab&plus;Ansible实现持续集成自动化部署静态网站(一)--技术流ken

    前言 在之前已经写了关于Git,Gitlab以及Ansible的两篇博客<Git+Gitlab+Ansible剧本实现一键部署Nginx--技术流ken>,<Git+Gitlab+A ...

  5. Git&plus;Gitlab&plus;Ansible的roles实现一键部署Nginx静态网站(一)--技术流ken

    前言 截止目前已经写了<Ansible基础认识及安装使用详解(一)--技术流ken>,<Ansible常用模块介绍及使用(二)--技术流ken><Ansible剧本介绍及 ...

  6. zabbix实现百台服务器的自动化监控--技术流ken

    前言 最近有小伙伴通过Q联系到我说:公司现在有百多台服务器,想要部署zabbix进行监控,怎么实现自动化全网监控? 本篇博客将讲解一个我工作时做的一个实际项目,现在写出来供大家以后参考使用. 实现自动 ...

  7. 网站集群架构(LVS负载均衡、Nginx代理缓存、Nginx动静分离、Rsync&plus;Inotify全网备份、Zabbix自动注册全网监控)--技术流ken

    前言 最近做了一个不大不小的项目,现就删繁就简单独拿出来web集群这一块写一篇博客.数据库集群请参考<MySQL集群架构篇:MHA+MySQL-PROXY+LVS实现MySQL集群架构高可用/高 ...

  8. Docker网络(五)--技术流ken

    本章内容 1.dokcer默认自带的几种网络介绍 2. 自定义网络 3. 容器间通信 4. 容器与外界交互 docker网络分为单个主机上的容器网络和多个主机上的哇网络,本文主要讲解单个主机上的容器网 ...

  9. Docker数据卷Volume实现文件共享、数据迁移备份(三)--技术流ken

    前言 前面已经写了两篇关于docker的博文了,在工作中有关docker的基本操作已经基本讲解完了.相信现在大家已经能够熟练配置docker以及使用docker来创建镜像以及容器了.本篇博客将会讲解如 ...

  10. Jenkins凭证及任务演示-pipeline(二)--技术流ken

    Jenkins前言 在上一篇博客<Jenkins持续集成介绍及插件安装版本更新演示(一)--技术流ken>中已经详细介绍了jenkins的插件安装以版本更新等,本篇博客将再深入探究jenk ...

随机推荐

  1. oracle中的装换函数

    日期装换成字符的函数:TO_CHAR(date[,fmt[,params]]) 默认格式:DD-MON-RR 参数说明: date:将要装换的日期 fmt:装换的格式 params:日期的语言(可以不 ...

  2. sed文本处理知识点整理

    参考资料:http://man.linuxde.net/sed    <鸟哥的私房菜> sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用.sed 后面接的操作 ...

  3. JS——无缝滚动

    1.描述——无缝滚动图片 2.代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8" ...

  4. DOM2练习

    左右互相输入 <!DOCTYPE html><html>    <head>        <meta charset="UTF-8"&g ...

  5. Python 安装 BeautifulSoup&lpar;Win7&rpar;

    准备材料: 1.Win7,已安装的 Python3.4.1 2.BeautifulSoup4.3.2安装包 安装办法: 1.打开cmd 2,进入BeautifulSoup的解压文件夹 3,执行 pyt ...

  6. 推荐:让你快速搞定各服务端(api&comma;pc&comma;mobile&comma;wechat)代码

    如果你在写服务端 (PHP) ,会因为项目须求(做app.pc.mobiel.微信) 而写几套代码的,你不觉得很累吗? 现在的很多开源框架商用版本在做程序方面都是这么一套一套的,维护起来,二开起来特别 ...

  7. DevOps 工程师实际上是做什么的

    DevOps 工程师实际上是做什么的? 我们之前已经讨论过许多关于DevOps和DevOps世界的最新趋势了.但是DevOps工程师到底是做什么的? DevOps工程师以最纯粹的方式弥合了软件开发和运 ...

  8. Maven-Build Lifecycle(构建生命周期)

    https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html https://www.w3cschoo ...

  9. vuex 子组件传值

    以下是基础的使用方法,详细且深入使用方法详细见博客:https://segmentfault.com/a/1190000015782272 Vuex官网地址:https://vuex.vuejs.or ...

  10. HDU1370(中国剩余定理)

    昨天我细致一想,发现自己之前的分类(用OJ来划分,毫无意义啊.)太失败了,所以我又一次划分了一下大分类,在分到数论的时候,我就想起了中国剩余定理了.于是乎今天就刷了一题中国剩余定理的题目了.话说太久没 ...