Dashborad插件

Dashborad插件:

版本支持:https://github.com/kubernetes/dashboard/releases

每个dashborad对k8s的版本支持不一样,需要对应版本下载

安装:

1)下载yml文件
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.0/aio/deploy/recommended.yaml -O dashborad.yml
2)修改端口暴露,运行
vim dashborad.yml
kind: Service
spec:
  type: NodePort
  ports:
    - port: 443
      targetPort: 8443
      nodePort: 30001

kubectl apply -f dashborad.yml
curl -k https://2.2.2.10:30001

登录:

默认安装后提供的是一个普通的serviceaccont账户,需要手动创建一个管理员sa账号
需要api访问控制的基础,忘了就先去看看再来创建
前两个有一点点权限问题,新版本api的变化原因,以例3为准

例1: 创建只有ns访问权限的sa账号

1)创建ns级别的sa
kubectl create sa def-ns-admin -n default
2)创建ClusterRole

做一次性授权ns资源

kubectl create clusterrole role-ns-admin --verb=* --resource=*
3)把ClusterRole关联到def-ns-admin账号
kubectl create rolebinding k8s-ui-ns --clusterrole=role-ns-admin --serviceaccount=default:def-ns-admin
4)获取token,登录dashborad
SCRT=`kubectl get secrets|awk '/def-ns-admin/{print $1}'`

例2: 创建集群管理员serviceaccount账号

1)创建集群级别的sa
kubectl create sa k8s-admin -n kube-system
2)创建ClusterRole
kubectl create clusterrole role-ui-admin --verb=* --resource=*
3)把集群role绑定到集群rolebind,授权sa
kubectl create clusterrolebinding  k8s-cluster-admin --clusterrole=role-ui-admin --serviceaccount=kube-system:k8s-admin
4)获取token,登录dashborad
SCRT=`kubectl get secrets -n kube-system|awk '/k8s-admin/{print $1}'`
kubectl describe secrets -n kube-system $SCRT |awk '/^token/{print $2}'

例3: 创建登录配置文件:

本次适用于kubeasz部署的集群,kubeadm要改改相关文件路径

1)创建sa账号
kubectl create sa ui-admin -n kube-system

#使用默认的集群管理员角色:cluster-admin
kubectl create clusterrolebinding ui-admin --clusterrole=cluster-admin --serviceaccount=kube-system:ui-admin
2)创建新集群,将sa账号添加进新集群
kubectl config set-cluster dashborad --kubeconfig=dashborad.conf --certificate-authority=/etc/kubernetes/ssl/ca.pem --server=https://2.2.2.10:6443 --embed-certs

#导入账户token进新集群文件
SA_NAME=`kubectl get secrets  -n kube-system |awk '/ui-admin/{print $1}'
SA_TOKEN=`kubectl describe secrets -n kube-system $SA_NAME |awk '/token:/{print $2}'`
kubectl config set-credentials dashbd-admin --token=$SA_TOKEN --kubeconfig=dashborad.conf

#添加集群上下文
kubectl config set-context dashbd-admin@dashborad --cluster=dashborad --user=dashbd-admin --kubeconfig=dashborad.conf
3)在新创建的集群中,切换上下文为新创建的账号

做完后导出dashborad.conf 文件即可

kubectl config use-context dashbd-token@dashborad --kubeconfig=dashborad.conf 
kubectl config view --kubeconfig=dashborad.conf

image-20220817172418556

posted @ 2022-09-02 16:03  suyanhj  阅读(37)  评论(0)    收藏  举报