k8s 部署 Dashboard

Dashboard 是官方提供的一个UI,可用于基本管理K8s资源。

复制代码
# 在master节点执行

# 
wget \
https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.0/aio/deploy/recommended.yaml
vi recommended.yaml 
增加 nodePort: 30001 和 type: NodePort
......
spec:
  ports:
    - port: 443
      targetPort: 8443
      nodePort: 30001
  selector:
    k8s-app: kubernetes-dashboard
  type: NodePort
......

kubectl apply -f recommended.yaml
kubectl get pods -n kubernetes-dashboard

如果顺利,则可以访问 https://192.168.15.81:30001
界面提示需要输入 token,先不要输入,因为还没创建用户,接下去我们创建用户

K8S有两种用户:User 和 Service Account,User 给人用,Service Account 给进程用,让进程有相关权限,Dashboard 是一个进程,我们就可以创建一个Service Account 给它


# 创建service account并绑定默认cluster-admin管理员集群角色:
# 创建用户
kubectl create serviceaccount dashboard-admin -n kube-system
# 用户授权
kubectl create clusterrolebinding dashboard-admin-binding --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin

# kubernetes v1.24.0 更新之后进行创建 ServiceAccount 不会自动生成 Secret 需要对其手动创建
cat<<EOF | kubectl apply -f -
apiVersion: v1
kind: Secret
type: kubernetes.io/service-account-token
metadata:
  name: dashboard-admin
  annotations:
    kubernetes.io/service-account.name: "dashboard-admin"
  namespace: kube-system
EOF
# 查看token是否正确生成
kubectl describe serviceaccounts dashboard-admin -n kube-system
如果顺利会出现下述输出
...
Tokens:              dashboard-admin
...

# 获取用户Token
kubectl describe secrets -n kube-system $(kubectl -n kube-system get secret | awk '/dashboard-admin/{print $1}')

取得token后就可以使用token登录Dashboard了
https://192.168.15.81:30001

安装完dashborad,还需要安装metrics组件,pod,node等才能看到cpu内存等使用量。

请参考我写的另外一篇博客:

https://blog.csdn.net/weilaozongge/article/details/139267389?spm=1001.2014.3001.5502

相关推荐
@insist1234 分钟前
系统规划与管理师-云原生系统建设规划与实践案例
云原生·软考·系统规划与管理师·软件水平考试·系统规划与管理工程师
Zhu7582 小时前
在k8s环境部署ApacheGuacamole,分别对接MySQL和PG数据库
数据库·mysql·kubernetes
@insist1232 小时前
系统规划与管理师-云原生系统规划核心考点解析
云原生·系统规划与管理师·软件水平考试·系统规划与管理工程师
Zhu7582 小时前
在Docker环境部署ApacheGuacamole,对接MySQL数据库
运维·docker·容器
慧一居士4 小时前
K3s和K8s的区别
容器
AOwhisky11 小时前
Python 学习笔记(第一期与第二期)——基础语法——核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发
AOwhisky16 小时前
Python 学习笔记(第三期)——流程控制核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发·流程控制
欢醉17 小时前
k8s调用服务异常cannot allocate memory
kubernetes·k8s
阿里云云原生18 小时前
AgenticOps 已来:运维智能体如何落进生产环境
云原生