一、环境
软件 | 版本 |
kubernetes | 1.10.5 |
dashboard | v1.8.3 |
二、配置dashboard.yaml
或者从https://github.com/sealire/k8s-config/blob/main/dashboard.yaml下载我修改后的dashboard配置文件。
修改kubernetes-dashboard的镜像地址的端口,以及Service,增加了一个NodePort类型的Service。
修改api-server启动参数,增加如下配置
--anonymous-auth=false
如果kubernetes安装了ca证书,在生成server.csr的配置文件中增加kubernetes的clusterip,可通过kubectl get service获取该clusterip地址。如下所示:
[req]
req_extensions = v3_req
distinguished_name = req_distinguished_name
[req_distinguished_name]
[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
subjectAltName = @alt_names
[alt_names]
DNS.1 = kubernetes
DNS.2 = kubernetes.default
DNS.3 = kubernetes.default.svc
DNS.4 = kubernetes.default.svc.cluster.local
DNS.5 = cloud-i #cloud-i hostname
IP.1 = 10.10.0.1 #cloud-i clusterip 可通过kubectl get service获取
IP.2 = 192.168.0.11 #cloud-i ip
IP.3 = 10.0.0.1 #cloud-i clusterip 可通过kubectl get service获取
三、启动dashboard
配置好dashboard的yaml文件后,通过如下命令启动dashboard:
kubectl create -f dashboard.yaml
在dashboard.yaml中,配置了NodePort类型的Service,绑定了node主机的本地端口,直接访问nodeIP:nodePort即可打开dashboard监控页面。如下所示: