Kubernetes 部署Web UI (Dashboard)

项目下载地址:https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dashboard

相关文件说明

# UI存放的配置信息
dashboard-configmap.yaml
# UI的控制器
dashboard-controller.yaml
# 授权文件
dashboard-rbac.yaml
# 存放铭感数据信息
dashboard-secret.yaml
# 将UI暴露
dashboard-service.yaml

1、解压k8s目录中的压缩文件、进入指定目录

tar -xvzf /root/k8s/kubernetes/kubernetes-src.tar.gz
cd cluster/addons/dashboard/

2、修改dashboard-controller.yaml配置文件中的镜像

  • 镜像搜索地址推荐:https://promotion.aliyun.com/ntms/act/kubernetes.html

vim dashboard-controller.yaml

# 默认地址无法访问需要修改地址
- name: kubernetes-dashboard
image: registry.cn-hangzhou.aliyuncs.com/kubernete/kubernetes-dashboard-amd64:v1.10.0

3、Master 端 k8s 创建配置文件中的配置

kubectl create -f dashboard-configmap.yaml
kubectl create -f dashboard-rbac.yaml
kubectl create -f dashboard-secret.yaml
kubectl create -f dashboard-controller.yaml

4、查看创建进项

NAME READY STATUS RESTARTS AGE
kubernetes-dashboard-75584d7f6f-fpdhp 1/1 Running 0 21s

kubectl get pods -n kube-system

5、查看日志详情

2019/08/08 05:28:43 Starting overwatch
2019/08/08 05:28:43 Using in-cluster config to connect to apiserver
2019/08/08 05:28:43 Using service account token for csrf signing
2019/08/08 05:28:43 No request provided. Skipping authorization

kubectl logs kubernetes-dashboard-75584d7f6f-fpdhp -n kube-system

6、修改 service 配置文件添加网络

apiVersion: v1
kind: Service
metadata:
name: kubernetes-dashboard
namespace: kube-system
labels:
k8s-app: kubernetes-dashboard
kubernetes.io/cluster-service: "true"
addonmanager.kubernetes.io/mode: Reconcile
spec:
# 添加 NodePort 使service可访问
type: NodePort
selector:
k8s-app: kubernetes-dashboard
ports:
- port: 443
targetPort: 8443

vim dashboard-service.yaml

7、创建 service 服务

kubectl create -f dashboard-service.yaml 

8、查看创建信息

NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes-dashboard NodePort 10.0.0.162 <none> 443:42487/TCP 46s

kubectl get svc -n kube-system

9、测试访问。使用Node节点外网IP

火狐:https://47.99.164.47:42487/#!/login

10、创建 k8s-admin.yaml 文件、创建管理绑定指定用户到cluster-admin

apiVersion: v1
kind: ServiceAccount
metadata:
name: dashboard-admin
namespace: kube-system
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: dashboard-admin
subjects:
- kind: ServiceAccount
name: dashboard-admin
namespace: kube-system
roleRef:
kind: ClusterRole
name: cluster-admin
apiGroup: rbac.authorization.k8s.io

vim k8s-admin.yaml

11、创建生成yaml文件中的服务

kubectl create -f k8s-admin.yaml

12、查看产生的 token 结果

NAME TYPE DA
dashboard-admin-token-xhw6x kubernetes.io/service-account-token 3
default-token-zk7jr kubernetes.io/service-account-token 3
kubernetes-dashboard-certs Opaque 0
kubernetes-dashboard-key-holder Opaque 2
kubernetes-dashboard-token-xxwd9 kubernetes.io/service-account-token

kubectl get secret -n kube-system

13、复制下方token输出值、复制到网站 Kubernetes 仪表板中令牌

kubectl describe secret dashboard-admin-token-xhw6x -n kube-system
Name:         dashboard-admin-token-xhw6x
Namespace: kube-system
Labels: <none>
Annotations: kubernetes.io/service-account.name: dashboard-admin
kubernetes.io/service-account.uid: 986e8ba8-b9a2-11e9-b85b-00163e088172 Type: kubernetes.io/service-account-token Data
====
token: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4teGh3NngiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiOTg2ZThiYTgtYjlhMi0xMWU5LWI4NWItMDAxNjNlMDg4MTcyIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.iNshqwHJwKwVfuHDSsitxUgS8_zOo_rfCWi3wguCg3vVRu5RH1hamW-kiidAyVDnPNams3K8QzL4fqxDpbtCXa8c5aUFlDeP45j6bYYEP2huiLFDC-Pg3NUmSa5uxPxnVQPWNLen43WMwkQ1pX_lMD6uT9QRdQHZ7aSQQRJM5DEPaZipUACKNVZH4HDKLnE2vmB_zfQ2Ra2ZpOjkFcHhgywqreZ9a1iv_QJU1_fPy6JkcRZaWnxh6KrZ_m7rjFWsxHwD3wejXvwVXdtkY5UxOwuRjl0hUzHyr9YpqqRuhoBvo7uhaJcZhWUlttD60g_n7zGalgSA5VAZR7zYsMGnmw
ca.crt: 1359 bytes
namespace: 11 byte

密令

14、仪表盘中输入令牌

15、登录后显示输出内容

16、使用
K8S UI 使用比较简单 支持中文随便点击熟悉就可以。

Kubernetes 部署Web UI (Dashboard)的更多相关文章

  1. kubernetes实践之二:Kubernetes可视WEB UI Dashboard搭建

    Kubernetes可视WEBUI Dashboard搭建 支持浏览器:火狐 一.Dashboard下载地址 git clone https://github.com/kubernetes/kuber ...

  2. kubernetes Helm-chart web UI添加

    charts web ui 添加chart仓库 helm repo add cherryleo https://fileserver-1253732882.cos.ap-chongqing.myqcl ...

  3. K8S 部署 Web UI

    在早期的版本中 Kubernetes可以在 Dashboard 中看到 heapster 提供的一些图表信息, 在后续的版本中会陆续移除掉 heapster,现在更加流行的监控工具是 promethe ...

  4. 宝塔面板 + Rancher + 阿里云镜像仓库 + Docker + Kubernetes,添加集群、部署 web 应用

    目录 一,安装宝塔面板(V 6.8) 二,使用宝塔安装 Docker,配置阿里云容器服务 三,安装 Rancher (Server) 四,管理 Rancher.添加集群 五,添加 Rancher 应用 ...

  5. Kubernetes 部署 Kubernetes-Dashboard v2.0.0 尝鲜

    目录· . 一.简介· . 二.兼容性· . 三.部署 Kubernetes Dashboard· . 1.Dashboard RBAC· . 2.创建 ConfigMap.Secret· . 3.k ...

  6. 一个简单有效的kubernetes部署案例

    部署web-rc:web应用需要去获取redis注入的ip环境变量cluster_ip,以此来访问 [root@sdw1 files]# cat testweb-rc.yaml kind: Repli ...

  7. nuclio kubernetes 部署

    一张参考架构图: 从图中可以看到nuclio可以运行到docker 以及kubernetes中 提供了kubernetes 部署的脚本 安装 创建命名空间 kubectl create namespa ...

  8. kubernetes部署Fluentd+Elasticsearch+kibana 日志收集系统

    一.介绍 1. Fluentd 是一个开源收集事件和日志系统,用与各node节点日志数据的收集.处理等等.详细介绍移步-->官方地址:http://fluentd.org/ 2. Elastic ...

  9. 【Yeoman】热部署web前端开发环境

    本文来自 “简时空”:<[Yeoman]热部署web前端开发环境>(自动同步导入到博客园) 1.序言 记得去年的暑假看RequireJS的时候,曾少不更事般地惊为前端利器,写了<Sp ...

随机推荐

  1. vs2017 发布工具 Installer 发包遇到的问题处理

    一. 遇到的问题. ERROR: 要在“系统必备”对话框中启用“从与我的应用程序相同的位置下载系统必备组件”,必须将“Microsoft .NET Framework 4.7.2 (x86 和 x64 ...

  2. Python安装PyOpenGL

    1.目前PyOpenGL是用python2写的,如果你使用的是python3需要自己修改PyOpenGL,我这里使用的是python2.7 2.下载PyOpenGLhttps://pypi.org/p ...

  3. 转:用 Python 一键分析你的上网行为, 看是在认真工作还是摸鱼

    简介 想看看你最近一年都在干嘛?看看你平时上网是在摸鱼还是认真工作?想写年度汇报总结,但是苦于没有数据?现在,它来了. 这是一个能让你了解自己的浏览历史的Chrome浏览历史记录分析程序,当然了,他仅 ...

  4. 在 VS Code 中遇到的一些问题

    1.在安装时未配置右键快捷菜单,想重新添加 最简单的就是重新安装一遍,在安装过程中选择好. 其次可以通过以下注册表脚本导入(保存为 .reg 文件),注意因为有中文字符,需要使用记事本保存为 ANSI ...

  5. Java 内建函数式接口

    Java 提供一个包:java.util.function :包中主要提供四个核心接口: 1.功能性接口(Function) public interface Function<T,R> ...

  6. rust 高级话题

    目录 rust高级话题 前言 零大小类型ZST 动态大小类型DST 正确的安装方法 结构体 复制和移动 特征对象 引用.生命周期.所有权 生命周期 错误处理 交叉编译 智能指针 闭包 动态分派和静态分 ...

  7. 学习springboot第一天~

    1. springboot是对spring的缺点进行改善和优化,它的约定大于配置,开箱即用,没有代码生成,也不需要xml文件配置,可以修改属性值来满足需求 2. springboot的入门程序 在id ...

  8. Mac遇到挖矿程序的应急方法

    Mac遇到挖矿程序应急的方法 工作笔记:   1.起因:监控发现jsonrpc挖矿报警,询问当事人描述当时情况是安装了sketch软件.   网上可以定位到该IOC   运行后该IOC流量依然可以观测 ...

  9. Linux—运行yum报错:No module named yum

    产生原因:yum基于python写的,根据报错信息提示,是yum的python版本对应不上目前python环境的版本导致的.也就是说 有人升级或者卸载了python. 解决方式: # 查看yum版本 ...

  10. emacs semantic,speedbar,gdb汇总

    在emacs 里使用gdb emacs speedbar功能介绍 semantic功能介绍 上面3篇文章精华,都汇总到下面的.emacs文件里了. ;;启动semantic功能 (semantic-m ...