K8S教程(5)Dashboard的安装与使用

tanglu 10471 2020-08-25

K8S Dashboard的官方介绍:

https://kubernetes.io/zh/docs/tasks/access-application-cluster/web-ui-dashboard/

 

1、下载资源清单并且应用

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml


2、查看应用资源清单后所创建的deployment及Pod信息

如果出现Pod一直Crash启动不了的问题,并且日志显示Initializing csrf token from kubernetes-dashboard-csrf secret panic: Get https://ip:443/api/v1/namespaces/kubernetes-dashboard/secrets/kubernetes-dashboard-csrf: dial tcp ip: i/o timeout这样的错误,可以通过编辑yaml文件将dashboard部署到主节点解决

kubectl get deployment
kubectl get deployment -n kubernetes-dashboard  #dashboard会创建在这个namespace中
kubectl get pods -n kubernetes-dashboard

vi recommended.yaml  #如果需要手动指定master的话修改该文件
    spec:
      nodeName: server1  #新增这行
      containers:
        - name: kubernetes-dashboard
          image: kubernetesui/dashboard:v2.0.0
          imagePullPolicy: Always
    spec:
      nodeName: server1  #新增这行
      containers:
        - name: dashboard-metrics-scraper
          image: kubernetesui/metrics-scraper:v1.0.4


3、将Services 类型修改为NodePort,这样外部才能访问

kubectl get svc -n kubernetes-dashboard  #查看svc发现type是clusterip,这样外部无法访问
kubectl edit svc kubernetes-dashboard -n kubernetes-dashboard  #将类型修改为NodePort


4、访问任意Node的IP加上SVC的端口就可以访问Dashboard了,然后看到需要一个token进行登录,这里需要创建一个用户并赋予一个角色

kubectl get clusterrole  #查看默认的角色,比如里面有一个cluster-admin就是管理员角色


5、定义创建角色的清单文件,以创建admin-user的用户为例,然后将其设置为cluster-admin角色

vi admin-user.yaml

apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kubernetes-dashboard
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: admin-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: admin-user
  namespace: kubernetes-dashboard


6、使用清单文件创建用户

kubectl apply  -f  admin-user.yaml


7、查看token信息并对token解密

kubectl get secrets -n kubernetes-dashboard  #可以看到多了admin-user的信息
kubectl get secrets -n kubernetes-dashboard admin-user-token-vw2mc -o yaml  #查看该用户的具体信息,里面包含了已经加密过的token
echo '将token复制到这里' | base64 -d  #获取解密后的token


8、使用解密后的token登录dashboard,登录后可以看到K8S集群的各种信息

k8sdashboard1.jpg


9、通过dashboard也可以简单的创建Deployment,其它类型的需要使用yaml来创建

k8sdashboard2.jpg


 

版权声明
本站所有文章均为原创,转载请注明出处!小站维护不易,如果对您有所帮助,希望能点击一下站内广告,谢谢!
上一篇:K8S教程(4)kubectl与集群管理常用命令
下一篇:PostgreSQL教程(1)PostgreSQL基本知识与安装部署
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

微信二维码