Kubernetes之dashboard1.8的部署

本文介绍如何部署 Kubernetes Dashboard,并通过修改 RBAC 角色绑定使其能够访问所有命名空间的资源。包括创建 ServiceAccount 和 ClusterRoleBinding 的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 根据官方文档下载部署文件
    https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml

    编辑该并使用下列命令实现将角色名替换:

 :%s/kubernetes-dashboard-minimal/kubernetes-dashboard/g 
  • 创建kubernetes-dashboard-rbac.yaml
    下载的部署文件,有个地方需要注意下,它里面创建的一个ServiceAccount=kubernetes-dashboard,授予它的权限都是只操作kube-system里面的资源,而创建的deployment使用的ServiceAccount就是kubernetes-dashboard,因此你访问dashboard时对其它namespace的资源将无权查看,因此,要想dashboard能查看到其它namespace的资源需要重新创建RBAC权限。

创建kubernetes-dashboard-rbac.yaml,内容如下:

apiVersion: v1
kind: ServiceAccount
metadata:
  name: dashboard
  namespace: kube-system
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: dashboard
subjects:
  - kind: ServiceAccount
    name: dashboard
    namespace: kube-system
roleRef:
  kind: ClusterRole
  name: cluster-admin  #将集群管理员的角色赋予dashboard
  apiGroup: rbac.authorization.k8s.io

创建好后,在下载的部署文件中有个地方改下,之前说到的deployment用到的ServiceAccount是kubernetes-dashboard ,需要把它改成这里创建的ServiceAccount为dashboard。

  • 开始部署:
 #先部署RBAC,再部署deployment
kubectl create -f dashboard-rbac.yaml -f kubernetes-dashboard.yaml 
#查看
$  kubectl get deploy,pod,svc -n kube-system 
NAME                                 DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
deploy/kubernetes-dashboard           1                   1                      1                     1              1h

NAME                                                             READY       STATUS    RESTARTS   AGE
po/kubernetes-dashboard-56466b7cbf-x4z99       1/1            Running            0              1h

NAME                    TYPE      CLUSTER-IP       EXTERNAL-IP    PORT(S)         AGE
svc/kubernetes-dashboard   ClusterIP      10.254.160.221   <none>               443/TCP          1h

$  kubectl get pod -n kube-system  -o wide
NAME                                                READY       STATUS    RESTARTS    AGE         IP                 NODE
kubernetes-dashboard-56466b7cbf-x4z99     1/1           Running            0                1h        172.30.11.7    10.3.1.17
  • 访问之前的配置

    根据官方文档的配置手册,访问方式较之前的版本不同,需要运行kubectl proxy ,打开localhsot 8001端口,且运行在前台 , 这里我们把它运行在后台:

    kubectl proxy --address=0.0.0.0 --port=8001 --accept-hosts='^.*' &
    

    官方文档上给出的访问方式:

    To access HTTPS endpoint of dashboard go to: http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/

    打开页面后在弹出的认证对话框中,直接跳过即可。

转载于:https://blog.51cto.com/newfly/2105892

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值