centos7 基于Kubernetes 安装dashboard
目录
1.创建新目录
2.创建kubernetes-dashboard管理员角色
3.获取token
4.使用管理员角色登陆kubernetes-dashboard web界面
1.创建新目录
在master机器上执行:
# mkdir dashboard# cd dashboard
下载yaml文件:
# curl -o kubernetes-dashboard.yaml https://raw.githubusercontent.com/kubernetes/dashboard/master/aio/deploy/recommended/kubernetes-dashboard.yaml
修改此文件:
# ------------------- Dashboard Deployment ------------------- #
kind: Deployment
apiVersion: apps/v1beta2
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kube-system
spec:
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
k8s-app: kubernetes-dashboard
template:
metadata:
labels:
k8s-app: kubernetes-dashboard
spec:
containers:
- name: kubernetes-dashboard
image: registry.cn-hangzhou.aliyuncs.com/kube_containers/kubernetes-dashboard-amd64
ports:
- containerPort: 8443
protocol: TCP
args:
- --auto-generate-certificates
===================================================
# ------------------- Dashboard Service ------------------- #
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kube-system
spec:
type: NodePort
ports:
- port: 443
targetPort: 8443
nodePort: 30001
selector:
k8s-app: kubernetes-dashboard
主要是将镜像仓库地址换掉,使用NodePort暴露到集群外,方便访问
然后创建pod:
# kubectl create -f kubernetes-dashboard.yaml
也可以查看dashboard暴露出来的本地端口:
# kubectl -n kube-system get service kubernetes-dashboard
本次已经将映射端口固定为:30001
- 查看容器是否已经运行:
# kubectl get pods -n kube-system
附:
- 删除dashboard:
#kubectl delete –f xxx.yaml
- 获取pod“过程日志”描述
#kubectl describe pod kubernetes-dashboard-5f7b999d65-fdln9 -n kube-system
- 获取pod“反馈信息”
# kubectl logs kubernetes-dashboard-5f7b999d65-fdln9
2.创建kubernetes-dashboard管理员角色
# vim k8s-admin.yaml
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
- 加载管理员角色
# kubectl create -f k8s-admin.yaml
- 获取dashboard secret
#kubectl get secret -n kube-system
[root@docker-master1 ~]# kubectl get secret -n kube-system
NAME TYPE DAT A AGE
attachdetach-controller-token-9x2w2 kubernetes.io/service-account-token 3 19h
bootstrap-signer-token-62p44 kubernetes.io/service-account-token 3 19h
dashboard-admin-token-qn42j kubernetes.io/service-account-token 3 115s
default-token-9kxfq kubernetes.io/service-account-token 3 19h
deployment-controller-token-k62kh kubernetes.io/service-account-token 3 19h
disruption-controller-token-2szx7 kubernetes.io/service-account-token 3 19h
3.获取token
[root@docker-master1 ~]# kubectl describe secret dashboard-admin-token-qn42j -n kube-system
Name: dashboard-admin-token-qn42j
Namespace: kube-system
Labels: <none>
Annotations: kubernetes.io/service-account.name: dashboard-admin
kubernetes.io/service-account.uid: cf7ca71e-8cb0-11e9-94b4-fa163ea61xxe
Type: kubernetes.io/service-account-token
Data
====
ca.crt: 1025 bytes
namespace: 11 bytes
token: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4tcW40MmoiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiY2Y3Y2E3MWUtOGNiMC0xMWU5LTk0YjQtZmExNjNlYTYxMDhlIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.lyXSL_YGuW21u1xShf7hOjtVG4wwQc4Q6BCIzjBDfIhEWczxt7wjx7DcyrKSTzHHG9Y2NKhnPqxi20kjFjYDlUU5UMXpAtoX1RQtl7jj_VFXIyBz4y14VE779FwGm5rX2GUwQvmh1snm7Xal16kJfSg0jjpWLbJf_1vmm9ZgM8t3nvC4HRcdRG4ZeliSL4-CZCqHNqn-SGbFrqtt0f7QN8p3GsvhMGWeXWqmyqbLtSlwSL1Lw_syG2E1LWgUrVRupVM1u_QNl_ZmSZMc7IqCMJwTfRLijswNhk1TkECzK_F8mJG8vDFqgYcIcTJV-5AUEp6LXa357YM8iCKvxxxQ
4.使用管理员角色登陆kubernetes-dashboard web界面
客户端浏览器输入:https://nodeIP:nodeport ,也就是kubernetes-dashboard容器在哪台node节点上跑,以及上面设置的nodeport端口(我这里是https://193.xx.xx.167:30001)
出现如下界面,选择令牌——输入令牌,(令牌为上面的token)
成功!
本系列文章:
1、centos7 通过kubeadm安装Kubernetes 1.14.3 集群
2、centos7 基于Kubernetes 安装dashboard
参考:https://www.kubernetes.org.cn/5462.html
https://www.cnblogs.com/harlanzhang/p/10045975.html
https://juejin.im/post/5c9a49ace51d456c9d78dbef#heading-2
http://jkzhao.github.io/2019/04/08/kubeadm%E5%AE%89%E8%A3%85kubernetes-1-14-0/
https://wangtingwei.info/?p=152
https://note.youdao.com/ynoteshare1/index.html?id=1197d46dd344f8aaaed66c1914a094b0&type=note
centos7 基于Kubernetes 安装dashboard相关推荐
- kubernetes 安装 Dashboard
kubernetes 安装 Dashboard 编辑kubernetes-dashboard.yaml [root@master k8s]# vim kubernetes-dashboard.yaml ...
- Kubernetes安装dashboard
2019独角兽企业重金招聘Python工程师标准>>> 1. 准备工作 参看CentOS7配置Kubernetes(K8S)集群 这里使用k8s版本为1.5.2 2. 准备yaml ...
- Kubernetes — 安装 Dashboard UI
目录 文章目录 目录 安装 Dashboard 访问 Dashboard UI 安装 Dashboard 默认情况下不会部署 Dashboard,需要我们手动安装.在安装 Dashboard 之前我们 ...
- centos7 基于wine安装微信wechat并解决聊天输入框无法显示问题
最近在使用centos 7当作日常备用系统,研究了下怎么基于wine安装使用微信,成功安装并且正常使用.分享给需要使用的人. Ubuntu可以参照,步骤类似 背景信息: 系统: CentOS Linu ...
- Kubernetes1.13集群安装dashboard 1.10.1
文章目录 Kubernetes1.13集群安装dashboard 1.10.1 安装dashboard 下载镜像 创建pod 授予Dashboard账户集群管理权限 APIServer方式 查看集群信 ...
- a32.ansible 生产实战案例 -- 基于kubeadm安装kubernetes v1.22 -- 集群部署(一)
源码下载地址:https://github.com/raymond999999/kubernetes-ansible 1.高可用Kubernetes集群规划 角色 机器名 机器配置 ip地址 安装软件 ...
- a24.ansible 生产实战案例 -- 基于kubeadm安装kubernetes v1.20 -- 集群部署(一)
源码下载地址:https://github.com/raymond999999/kubernetes-ansible 1.高可用Kubernetes集群规划 角色 机器名 机器配置 ip地址 安装软件 ...
- Centos7 使用 kubeadm 安装Kubernetes 1.13.3
目录 目录 什么是Kubeadm? 什么是容器存储接口(CSI)? 什么是CoreDNS? 1.环境准备 1.1.网络配置 1.2.更改 hostname 1.3.配置 SSH 免密码登录登录 1.4 ...
- k8s和harbor的集成_爱威尔-基于kubernetes集群的项目持续集成(gitlab+harbor+Jenkins)安装...
这个算是基于kubernetes集群的项目持续集成的前导篇,先把这用环境搭建好我们后面就可以专注做基于k8s的docker化项目持续集成了. gitlab安装 https://about.gitlab ...
最新文章
- linux IP类常用命令
- 条件随机场CRF简介Introduction to Conditional Random Fields
- 什么是 Java 对象深拷贝?面试必问!
- bugku- web -login3
- Java 整数型的进制间的互相转换
- 电平转换电路_RS232电平和TTL电平有什么不同?如何转换?
- Linux_Make(Makefile)
- 吴恩达神经网络和深度学习-学习笔记-5-参数和超参数
- day16-面向对象编程进阶
- vue canvas动效组件插件库制作
- 一小段Python的sha256/md5/sha1验证
- 计算机网络基础系列(三)网络应用
- 光干涉波谷,有可能低于绝对零度
- Git提交代码的处理流程(转)
- 关于如何理解链表结构体指针引用LinkNode * L的问题
- 极客大学产品经理训练营:产品经理的项目管理 第14课总结
- Python和C++交互
- canvas 加载图片
- 数据可视化Matplotlib库
- 赞美之外,Unity引擎3D引擎存在什么弊病?
热门文章
- vue-vant项目字体以及组件字体适配
- html导航栏切换,jQuery实现简单导航栏的样式切换
- CATIA V5焊接夹具2D出图到3D实战设计视频教程
- 【MPU6050能读ID 但读数据值为零(一个硬件问题)】
- 限制网页仅可在微信客户端打开
- Windows 2000 安全更新程序 (KB980232)
- MYSQL常用语法命令,MySQL中delete,drop和alter分别是用来删除什么的?有什么区别?删除了以后可以恢复吗?
- 算法 | 布朗运动与醉汉 赌徒的关系
- 《惢客创业日记》2018.11.28(周三)北京导师行•风筝和风
- [深度学习] 基于切片辅助超推理库SAHI优化小目标识别