k8s dashboard搭建

一. 下载原yaml文件

  1. 前往Releases · kubernetes/dashboard · GitHub查看对应dashboard版本
# 查看k8s版本
kubelet --version
  1. 下载yaml文件,可参考官方给出的方式,如果不能下载,可以先用VPN打开链接查看raw后复制到服务器上
# 写入此文件
cat recommended.yaml
  1. 执行部署
kubectl apply -f recommended.yaml
  1. 查看,成功创建
kubectl get pods --all-namespaces

二. 更改服务

  1. 删除现有的dashboard服务,dashboard 服务的 namespace 是 kubernetes-dashboard,但是该服务的类型是ClusterIP,不便于我们通过浏览器访问,因此需要改成NodePort型的
# 查看 现有的服务
kubectl get svc --all-namespaces
# 删除
kubectl delete service kubernetes-dashboard --namespace=kubernetes-dashboard
  1. 创建配置文件
# 添加服务
vim dashboard-svc.yaml
kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  type: NodePort
  ports:
    - port: 443
      targetPort: 8443
  selector:
    k8s-app: kubernetes-dashboard
# 添加访问权限
vim dashboard-svc-account.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: dashboard-admin
  namespace: kube-system
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: dashboard-admin
subjects:
  - kind: ServiceAccount
    name: dashboard-admin
    namespace: kube-system
roleRef:
  kind: ClusterRole
  name: cluster-admin
  apiGroup: rbac.authorization.k8s.io
# 原因是自k8s1.24后,不再自动创建serect,需要自己部署
vim serect.yaml
apiVersion: v1
kind: Secret
type: kubernetes.io/service-account-token
metadata:
  name: dashboard-admin
  namespace: kube-system
  annotations:
      kubernetes.io/service-account.name: "dashboard-admin"
  1. 部署
kubectl apply -f dashboard-svc.yaml
kubectl apply -f dashboard-svc-account.yaml
kubectl apply -f serect.yaml
  1. 查看服务
kubectl get svc --all-namespaces

三. 访问

  1. 获取token
# 获取serect名字
kubectl get secret -n kube-system |grep admin|awk '{print $1}'
# 获取token
kubectl describe secret <serect名字> -n kube-system|grep '^token'|awk '{print $2}'
  1. 记下token
eyJhbGciOiJSUzI1NiIsImtpZCI6Im1Nd2RuSlJWZ2FoUC1UR2ZNWmJqUnoyOFBnZ1RaR20wT1EzZGttSWZaNEUifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4iLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNDNmYTkwOGYtNWFhNy00MTcyLWI5NTktYjYxZGZiMjIxYWViIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.ZCcXdqO1rIAMKr5hRMUOYXWsxCL4Tw2CXHg49WOqzvDGWO46Xh96H1Hr54VQ_MxypGbQMIKxCy_aa8ni03JM2d01GvWMqVd-gtQWPkVhNAI2NcaNhvZ-mhXWGhrf59T4lxswkD0V0gOSUhElok8V4vFUeXa8ssAM_liyf2Z9PMEAsqa9qryL1UixPjEvWnHjGLG94hNAYEo-H0sYwoF6eRZkOvvlsRj2CwFviuWPSdaNFWDEiQqkSDxtHROkfhAwPddYqeu7DKBhoW4iRw2-Kbd1z2w0tWXjf6zZkObV1ayP4tYLzIdHi-AwrBmL3214T-fqfqQJhwPmizVI-cL3Hw
  1. 访问https://ip:port,网关端口映射到NodePort提供的端口号,注意要用https进行访问
# 查看NodePort端口号
kubectl get svc --all-namespaces

四. 参考

K8S 安装 Dashboard_tom马的博客-CSDN博客_k8s安装dashboard

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值