K8S搭建(centos)十、Dashboard配置(主节点)

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。

文章目录

  • Dashboard配置(主节点)
    • 1. 下载并安装dashboard
    • 2. 添加用户
    • 3. 获取token
    • 4. 访问dashboard(需要跳板机,不适用当前服务器环境)
    • 4. 访问dashboard
      • 4.1 查看端口
      • 4.2 修改type的值
      • 4.3 再次查看端口
      • 4.4 IP获取
      • 4.5 访问dashboard


K8S搭建(ubuntu)系列:
k8s搭建(详细演示完整一篇)
k8s搭建(二、k8s组件安装)

K8S搭建(centos)系列:
K8S搭建(centos)完整版
K8S搭建(centos)一、环境准备
K8S搭建(centos)二、服务器设置
K8S搭建(centos)三、安装Docker
K8S搭建(centos)四、安装K8S
K8S搭建(centos)五、初始化(master节点)
K8S搭建(centos)六、搭建集群
K8S搭建(centos)七、节点加入集群
K8S搭建(centos)八、从节点中使用kubectl命令
K8S搭建(centos)九、集群节点的删除
K8S搭建(centos)十、Dashboard配置(主节点)

Dashboard配置(主节点)

使用dashboard作为可视化界面管理k8s集群

1. 下载并安装dashboard

在主节点k8s-master中下载dashboard的配置文件安装dashboard

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

K8S搭建(centos)十、Dashboard配置(主节点)_第1张图片

2. 添加用户

创建用户文件dash.yml

vim dash-user.yml

然后将以下内容复制到文件中

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

如果上方的文件内容复制后格式发生变化,建议将格式手动校准,不然可能应用时会报错
应用文件,生效

kubectl apply -f dash-user.yaml

在这里插入图片描述

3. 获取token

访问所需的token用以下命令生成

kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')

K8S搭建(centos)十、Dashboard配置(主节点)_第2张图片
或用以下命令,不过下方这个命令的token内容与用户名挤在一起,还是用上面那个命令吧

kubectl -n kubernetes-dashboard get secret $(kubectl -n kubernetes-dashboard get sa/admin-user -o jsonpath="{.secrets[0].name}") -o go-template="{{.data.token | base64decode}}"

token内容:

eyJhbGciOiJSUzI1NiIsImtpZCI6Im1MSmVsZGdNWlBaLVlMM180eXp3WXpuMDhOZ1YzV0s2RUNEYzJzT0R0QWsifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLWh0Nm5wIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiJjMjg3OTIwZi1iYjMzLTQxNzQtOWE4NS1kYTJjODAzYzhhZTYiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZXJuZXRlcy1kYXNoYm9hcmQ6YWRtaW4tdXNlciJ9.dNKHA0x-Vh8i31USt-IhP5PNRnghpCEVrnw6EoL_L1I_Xt2pPQ40kGoAA3WRjKOr6RzxhiYIbx2Jfnd8aZpgo6RgFNzjKHXtk7h2zJ2RjZ8yuEk8RmpzpZqbOc_qBCeuNG9h5gL_xDOGa7zyg6CMkm7yuTI7rYjhMwapIw_SrdMYaQsZqj3BE0nIfiFzBHdp4y10Tukk4K2hE74FobHqyHyQp3exrz8SbGsCW7sw4Bun6-CAhRlwHiy5LoYoVSj-cuVldCmhD9jdNzeD0b3KsOmcGXnDTVxBqcH_u3OoMriRVQ-KCNfixnb9_x43G94NqvW6CKuA0x1ac520Cv6oUw

4. 访问dashboard(需要跳板机,不适用当前服务器环境)

因为本篇为生产环境搭建,所以使用代理方式访问,不暴露ip和端口
参考:https://segmentfault.com/a/1190000023130407

k8s-master主节点上启动kube-proxy

kubectl proxy --address='0.0.0.0' --accept-hosts='^\*$' &

本地跳板机

4. 访问dashboard

4.1 查看端口

首先查看dashboard服务的端口

kubectl get svc -n kubernetes-dashboard

kubectl get service kubernetes-dashboard -n kubernetes-dashboard

在这里插入图片描述
此时只有443,且只能集群内部访问,由于三台服务器均为server版,只有黑窗口,无法访问可视化界面
故需要将其端口映射到别的端口,并将权限改为其他地址可访问

4.2 修改type的值

修改service的type为NodePort,暴露到外部进行访问

kubectl -n kubernetes-dashboard edit service kubernetes-dashboard

K8S搭建(centos)十、Dashboard配置(主节点)_第3张图片
找到如图位置,将type的值改为NodePort

4.3 再次查看端口

然后再次查看端口,可以看到端口号已经被映射到新的端口,32353
在这里插入图片描述

4.4 IP获取

获取服务所在的节点的IP地址

kubectl get pods -n kubernetes-dashboard -o wide | grep kubernetes-dashboard

在这里插入图片描述
如图可知服务运行在k8s-worker2节点上,ifconfig命令查看该节点的ip该节点的ip,为172.30.0.222

4.5 访问dashboard

根据以上查询到的端口号和服务运行所在节点的ip地址
访问dashboard的地址为ip+端口号

https://172.30.0.222:32353

注:一定要加上https://前缀,不然可能只会返回一串字符Client sent an HTTP request to an HTTP server.

访问链接后提示您的连接不是私密连接,可选高级,然后继续前往连接即可
出现如下界面
K8S搭建(centos)十、Dashboard配置(主节点)_第4张图片
将token复制粘贴进去
K8S搭建(centos)十、Dashboard配置(主节点)_第5张图片
登录成功后可正常使用
在集群中找到Nodes可查看集群节点相关信息
K8S搭建(centos)十、Dashboard配置(主节点)_第6张图片


感谢阅读,祝君暴富!

你可能感兴趣的:(#,Kubernetes,kubernetes,centos,容器)