Kubernetes Web UI(或Kubernetes Dashboard)是用于管理和监视Kubernetes集群的不同工具和用户界面。以下是一些常见的Kubernetes Web UI工具和用户界面:
Kubernetes Dashboard 是 Kubernetes 的官方 Web UI。它提供了集群的详细信息和管理功能。以下是安装和使用 Kubernetes Dashboard 的步骤:
安装前需要先选择与你安装的Kubernetes对应版本的Dashboard,不然会出现各种问题。每个releases都会有一张对应表,如下图:
Releases · kubernetes/dashboard · GitHub
首先,您需要安装 Kubernetes Dashboard。执行以下命令:
wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
为了可以在集群外面访问,我们把recommended.yaml里访问方式调整为nodeport
找到这一段,大约在30行左右,特点是:
kind: Service
k8s-app: kubernetes-dashboard
增加一行,type=NodePort
再执行apply部署 Kubernetes-Dashboard v2.7.0。
kubectl apply -y recommended.yaml
执行后会卡很长时间,主要是在下载docker镜像,从配置文件可以看到是以下两个镜像,如果发现最后下载出问题也可以单独的docker pull下面两镜像。
kubernetesui/dashboard:v2.7.0
kubernetesui/metrics-scraper:v1.0.8
Dashboard 默认启用了令牌认证,因此您需要创建一个用户帐户来登录。首先,创建一个 YAML 文件(例如 dashboard-adminuser.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
然后,通过以下命令创建用户:
kubectl apply -f dashboard-adminuser.yaml
要获取登录到 Dashboard 所需的令牌,请运行以下命令:
kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user | awk '{print $1}')
这将显示一个长令牌字符串,将其复制以备用。
kubectl get pod,svc -n kubernetes-dashboard
这样我们通过主机的ip+30081就可以访问dashboard了。下面用的ip是主机的ip,并不是上面出现的cluster-ip,cluster-ip是集群内部访问的ip。
总结:总体来说dashboard安装还是比较简单,但如果你安装的是新版本,感觉还是会出现不少问题,还是得把版本控制好。
包含应用名称、容器镒、pod数量、Service非常的方便,不想设置配置yaml的可以很方便的部署。
1) 创建serviceaccount
kubectl create serviceaccount myadmin -n kubernetes-dashboard
2)查看账户信息
kubectl get serviceaccount myadmin -o yaml -n kubernetes-dashboard
3)绑定角色
kubectl create clusterrolebinding myadmin --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:myadmin -n kubernetes-dashboard
4)生成token
kubectl create token myadmin -n kubernetes-dashboard
如果文章对你有帮助,欢迎关注+点赞!