1.下载dashboard资源请单

wget  https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

vim kubernetes-dashboard.yaml

spec:

ports:

- port: 443

targetPort: 8443

nodePort: 31000  固定端口映射

selector:

k8s-app: kubernetes-dashboard

type: NodePort  指定NodePort类的service,把服务放出去

...

spec:
containers:
- name: kubernetes-dashboard
image: mirrorgooglecontainers/kubernetes-dashboard-amd64:v1.10.1  修改镜像地址

volumeMounts:

- name: kubernetes-dashboard-certs

mountPath: /certs

# Create on-disk volume to store exec logs

- mountPath: /tmp

name: tmp-volume

livenessProbe:

httpGet:

scheme: HTTPS

path: /

port: 8443

initialDelaySeconds: 30

timeoutSeconds: 30

volumes:

- name: kubernetes-dashboard-certs

secret:

secretName: kubernetes-dashboard-certs

删除 下面这一段secret

---

apiVersion: v1
kind: Secret
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard-certs
namespace: kube-system
type: Opaque

---

cd /etc/kubernetes/pki/

(umask 077;openssl genrsa -out dashboard.key 2048)  私钥

openssl req -new -key dashboard.key -out dashboard.csr -subj "/O=mageedu/CN=dashboard"  证书签名请求

openssl x509 -req -in dashboard.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out dashboard.crt -days 365  签署完成证书

kubectl create secret generic kubernetes-dashboard-certs -n kube-system --from-file=dashboard.crt=./dashboard.crt --from-file=dashboard.key=./dashboard.key 创建secret  类型是generic 即签名证书

kubectl get secrets -n kube-system  查询创建是否成功

2.创建dashboard

kubectl apply –f kubernetes-dashboard.yaml

查看dashboard的POD是否正常启动,如果正常说明安装成功

kubectl get pods --namespace=kube-system

解决签名证书过期的问题参考: https://www.jianshu.com/p/c6d560d12d50

登录dashboard的方式

1.通过token登录

创建sa

kubectl create serviceaccount dashboard-admin -n kube-system

kubectl get sa -n kube-system 查询sa

kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin  给sa账号dashboard-admin添加集群角色 绑定名要与sa账号一致

结果: dashboard-admin-token-j6g69

kubectl describe secrets -n kube-system dashboard-admin-token-j6g69

token:      eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4tajZnNjkiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiMGY5ZjE0MzEtZThhNC00MWE3LTg4MmUtNzExNDNiMzEwODJmIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.c2yulGwZU9AECgGBXmYACpB1Sg7IaZIjMFrOC2MYAPeAdDWPGRjhtTFL5vwheu1EUsuPTA__uxLwvQ4VDxWA64MjsZy_PT-86Oe4LuhGltZpHiqfuonqpRGqQLdlXut0AU1NULi4pZ7QJxVoS9hrN88Cwc40AxyyKjoqdudmRuQC1C6zp_fP-VPHKtVJg6JMgTaFBNoFDL40j9nNm9GDCDDVqdWapQxuaaPdz9Mm-Nm3cL8hz3oGV0FBrgoi5zvumMKZLsU70B5_zDW8ZeMRjf7Js5G4LSQ8C5bQ-bEs3ioCbV-2YtPMuFALJJHmmY_yzommDqJ3Jf3TUu3_n9R_ig

复制token,并粘帖到认证栏里即可

2.通过自建kubeconf文件登录

kubectl create serviceaccount def-ns-admin -n default  创建sa账号def-ns-admin

kubectl create rolebinding def-ns-admin --clusterrole=admin --serviceaccount=default:def-ns-admin  给sa账号绑定角色

kubectl describe secrets def-ns-admin-token-8flrw 获取token也能登录系统

token:      eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6ImRlZi1ucy1hZG1pbi10b2tlbi04ZmxydyIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJkZWYtbnMtYWRtaW4iLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI0MzdlNzcwOS1hYzdlLTRhMGEtYTU1OC0xZGNmOWVlOTg2ZjkiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6ZGVmYXVsdDpkZWYtbnMtYWRtaW4ifQ.TdEtTTFydD5smIksOQ7Vqk9yUV9Gg7t6dTN8Ei1qDi4jYT2LcUBxK1u7KeDJKTHaMxg_Jce3zK9heQT9CaIvnKW-c9B99nd31MAcfeGdQ0zB4Mi5dVMMoVHF1N1S9jqurkjpg4rMnIMA3l-GitXvatouWH1J2mMUX5xOXbQHs-zUOhN_RqvLl1KNSWzQoK8EEWqw82Xuz33JwcbCJfwB5xXWXzz_2rHpkYqVCKAkoskEA8V3BX0DrdKa7XslgeXs6W55tEbTykmsRTCrq6o750dbyolYY5NHhV-QFIr0uNdXQHygG-Mh4MHV-wCXbI--ueSnmP7y9fgeouD_2xEa3g

Mh4MHV-wCXbI--ueSnmP7y9fgeouD_2xEa3g

DEF_NS_ADMIN_TOKEN=$(kubectl get secret def-ns-admin-token-8flrw -o jsonpath={.data.token} | base64 -d)

kubectl config set-cluster kubernetes --certificate-authority=/etc/kubernetes/pki/ca.crt --server="https://192.168.85.110:6443" --embed-certs=true --kubeconfig=/root/def-ns-admin.conf  创建集群,设置集群

kubectl config view --kubeconfig=/root/def-ns-admin.conf  查看创建的conf生效了没有

kubectl config set-credentials def-ns-admin  --token=$DEF_NS_ADMIN_TOKEN  --kubeconfig=/root/def-ns-admin.conf  设置登录集群账号,账号名要与sa账号一致

kubectl config set-context def-ns-admin@kubernetes --cluster=kubernetes --user=def-ns-admin --kubeconfig=/root/def-ns-admin.conf  设置context  账号的切换就是context的切换

kubectl config use-context def-ns-admin@kubernetes --kubeconfig=/root/def-ns-admin.conf   切换context

kubectl config view --kubeconfig=/root/def-ns-admin.conf  这个def-ns-admin.conf可以拿去当用户认证信息使用了

注释:认证时的账号必须为serviceaccount:被dashborad pod拿来由kubernetes进行认证

Token:1.创建serviceaccount,根据其管理目标,使用rolebinding或clusterrolebinding绑定至合理的role或clusterrole

2.获取用户的认证信息,既获取 serviceaccount账号的secret的详细的信息,其中就有token

Kubeconfig:1.把serviceaccount的token封装为kubeconfig

2. DEF_NS_ADMIN_TOKEN=$(kubectl get secret def-ns-admin-token-8flrw -o jsonpath={.data.token} | base64 -d)

3.生成kubeconfig文件

Kubectl config set-cluster

Kubectl config set-credentials

Kubectl config set-context

Kubectl config use-context

Kubernetes集群的管理方式: 1.命令式 kubectl get create run expose delete edit

2.命令式配置文件 kubectl create/delete  –f  filename

3.声明式配置文件 kubectl apply –f filename

dashboard部署的更多相关文章

  1. K8S从入门到放弃系列-(14)Kubernetes集群Dashboard部署

    Dashboard是k8s的web界面,用户可以用 Kubernetes Dashboard 部署容器化的应用.监控应用.并对集群本身进行管理,在 Kubernetes Dashboard 中可以查看 ...

  2. 十三,k8s集群web端管理工具dashboard部署

    目录 部署 dashboard 由于会被墙, 所以要加一步拉取镜像 正式开始安装dashboard 查看 开放访问 配置dashboard用户 1. token 令牌认证 创建一个 serviceAc ...

  3. 附017.Kubernetes_v1.17.4 Dashboard部署

    一 Kubernetes dashboard简介 1.1 Web UI简介 dashboard是基于Web的Kubernetes用户界面.可以使用dashboard将容器化应用程序部署到Kuberne ...

  4. 容器编排系统K8s之Dashboard部署

    前文我们了解了k8s的访问控制第三关准入控制相关插件的使用,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/14220402.html:今天我们来了解下k8s的 ...

  5. linux运维、架构之路-Kubernetes本地镜像仓库+dashboard部署

    一.部署docker registry            生产环境中我们一般通过搭建本地的私有镜像仓库(docker registry)来拉取镜像. 1.拉取registry镜像 [root@k8 ...

  6. 用kubeadm+dashboard部署一个k8s集群

    kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具. 这个工具能通过两条指令完成一个kubernetes集群的部署: 1. 安装要求 在开始之前,部署Kubernetes集群 ...

  7. k8s dashboard 部署发布

    https://rawgit.com/kubernetes/dashboard/master/src/deploy/kubernetes-dashboard.yaml # Copyright 2015 ...

  8. OpenStack_I版 4.Dashboard部署

    由python的DjangoWeb框架开发的   使用keystone默认的角色来访问各种服务   Dashboard安装       Dashboard是openstack的Web管理界面,需要将它 ...

  9. puppet报告系统Dashboard部署及配置详解

    Puppet Dasshboard是由支持Puppet开发的公司Puppetlabs创建的,是Ruby on Rails程序.可以作为一个ENC(外部节点分类器)以及一个报告工具,并且正在逐渐成为一个 ...

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

    安装Dashboard 前面博客Kubernetes 所有的操作我们都是通过命令行工具 kubectl 完成的.为了提供更丰富的用户体验,Kubernetes 还开发了一个基于 Web 的 Dashb ...

随机推荐

  1. 用 C# 插值字符串处理器写一个 sscanf

    插值字符串处理器 C# 有一个特性叫做插值字符串,使用插值字符串,你可以自然地往字符串里面插入变量的值,比如:$"abc{x}def",这一改以往通过 string.Format ...

  2. 微信小程序实现分类菜单激活状态随列表滚动而自动切换效果详解

    这篇文章主要介绍了微信小程序分类菜单激活状态跟随列表滚动自动切换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧 目录 view结构 ...

  3. Jupyter Notebook 一些常用的快捷键

    命令模式(按 Esc 进入): A:在当前单元格上方插入新单元格. B:在当前单元格下方插入新单元格. D + D(按两次 D 键):删除当前单元格. Z:撤销单元格删除. Ctrl + Enter: ...

  4. 傻妞PLUS机器人教程——安装

    特性 简单易用的消息搬运功能. 简单强大的自定义回复功能. 完整支持 ECMAScript 5.1 的插件系统,基于 otto. 支持通过内置的阉割版 Express / fetch ,接入互联网. ...

  5. Springboot - [05] 彩蛋~

    题记部分 彩蛋一:如何更换Springboot启动时的logo (1)访问 https://www.bootschool.net/ascii-art/search,搜索到佛祖的ASCII艺术字(图)集 ...

  6. ABC245Ex题解

    前言 \(2024.11.21\) 联考第三题,本人由于太菜没有推出 \(m=p^x\) 的性质遂部分分跑路,作文以记之. 简要题意 对于一个长度为 \(n\),值域为 \([0,m-1]\) 的序列 ...

  7. GPT-4.5 感觉有点拉胯,但其实是 OpenAI 迄今为止最大的一步赌注

    Alberto Romero I. GPT-4.5 就是起跳前的助跑那一步 OpenAI 推出了 GPT-4.5(官方博客.系统卡片.演示视频),这是他们最新也是目前最大的一款 AI 模型.他们其实一 ...

  8. 带大家做了个 AI 项目,没想到这么简单!

    大家好,我是程序员鱼皮,现在已经是全民 AI 时代了,咱们程序员更要想办法榨干 AI,把 AI 利用起来.前几天我一时兴起,直播用 2 多个小时的时间,从需求分析开始,带大家做了一个 AI 海龟汤游戏 ...

  9. 程序员必看 Linux 常用命令(重要)

    文件操作命令 find find 用于在指定目录下查找文件或子目录,如果不指定查找目录,则在当前目录下查找 命令格式:find path -option [-print] [ -exec/-ok co ...

  10. MongoDB入门介绍与案例分析

    一.MongoDB 数据库定位 首先我们来看一下 MongoDB 是什么样的数据库.数据库分两大类: OLTP(Online Transaction Processing)联机事务处理. OLAP(O ...