10-2 Kubernetes 使用 Helm 部署 dashboard
使用Helm部署 dashboard1、下载 stable/kubernetes-dashboard# 进入目录[root@k8s-master01 hello-world]# cd /root/install-k8s/plugin/dashboard/# 查看帮助,找到下载的命令为 fetch[root@k8s-master01 dashboard]# helm --help# 下载 stabl
使用Helm部署 dashboard
1、下载 stable/kubernetes-dashboard
# 进入目录
[root@k8s-master01 hello-world]# cd /root/install-k8s/plugin/dashboard/
# 查看帮助,找到下载的命令为 fetch
[root@k8s-master01 dashboard]# helm --help
# 下载 stable/kubernetes-dashboard,提示没找到缓存,提示让我们更新
[root@k8s-master01 dashboard]# helm fetch stable/kubernetes-dashboard
Error: no cached repo found. (try 'helm repo update'). open /root/.helm/repository/cache/stable-index.yaml: no such file or directory
# 按提示更新,报错无法更新
[root@k8s-master01 dashboard]# helm repo update
Hang tight while we grab the latest from your chart repositories...
...Skip local chart repository
...Unable to get an update from the "stable" chart repository (https://kubernetes-charts.storage.googleapis.com):
Failed to fetch https://kubernetes-charts.storage.googleapis.com/index.yaml : 403 Forbidden
Update Complete. ⎈ Happy Helming!⎈
(1)、解决下载错误
使用默认的源 https://kubernetes-charts.storage.googleapis.com/index.yaml
,下载 stable/kubernetes-dashboard
会报错。可以更换阿里的源或者微软的源然后再次下载。
# 查看所有源
[root@k8s-master01 dashboard]# helm repo list
NAME URL
stable https://kubernetes-charts.storage.googleapis.com
local http://127.0.0.1:8879/charts
# 移除 stable 源
[root@k8s-master01 dashboard]# helm repo remove stable
"stable" has been removed from your repositories
# 再次查看,移除成功
[root@k8s-master01 dashboard]# helm repo list
NAME URL
local http://127.0.0.1:8879/charts
# 更换源,第一个是微软的,第二个是阿里的。
#[root@k8s-master01 dashboard]# helm repo add stable http://mirror.azure.cn/kubernetes/charts
[root@k8s-master01 certs]# helm repo add stable https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
"stable" has been added to your repositories
# 再次查看源,已经更换成功
[root@k8s-master01 dashboard]# helm repo list
NAME URL
local http://127.0.0.1:8879/charts
stable https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
# 再次更新下源
[root@k8s-master01 dashboard]# helm repo update
Hang tight while we grab the latest from your chart repositories...
...Skip local chart repository
...Successfully got an update from the "stable" chart repository
Update Complete. ⎈ Happy Helming!⎈
# 再次下载,成功
[root@k8s-master01 dashboard]# helm fetch stable/kubernetes-dashboard
[root@k8s-master01 dashboard]# ls
kubernetes-dashboard-0.6.0.tgz
参考:
https://blog.csdn.net/began2014/article/details/100950034
其他参考:
https://blog.csdn.net/zhu13637053367/article/details/116943605
https://github.com/helm/helm/issues/4251
2、安装 kubernetes-dashboard
# 解压
[root@k8s-master01 dashboard]# tar -zxvf kubernetes-dashboard-0.6.0.tgz
# 切换目录
[root@k8s-master01 dashboard]# cd kubernetes-dashboard
[root@k8s-master01 kubernetes-dashboard]# ls
Chart.yaml README.md templates values.yaml
在 /root/install-k8s/plugin/dashboard/kubernetes-dashboard
目录下,创建 kubernetes-dashboard.yaml
文件。
image:
repository: k8s.gcr.io/kubernetes-dashboard-amd64
tag: v1.10.1
ingress:
enabled: true
hosts:
- k8s.frognew.com
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
tls:
- secretName: frognew-com-tls-secret
hosts:
- k8s.frognew.com
rbac:
clusterAdminRole: true
准备安装。执行命令前,可以将kubernetes-dashboard
的镜像,先导入到所有node节点。防止镜像下载失败。
# 执行下列命令,安装 stable/kubernetes-dashboard。
[root@k8s-master01 kubernetes-dashboard]# helm install stable/kubernetes-dashboard \
> -n kubernetes-dashboard \
> --namespace kube-system \
> -f kubernetes-dashboard.yaml
# 查看pod
[root@k8s-master01 kubernetes-dashboard]# kubectl get pod -o wide -n kube-system
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
......
kubernetes-dashboard-79599d7b8d-6cjdr 1/1 Running 0 18s 10.244.2.172 k8s-node02 <none> <none>
# 查看service
[root@k8s-master01 kubernetes-dashboard]# kubectl get svc -n kube-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 255d
kubernetes-dashboard ClusterIP 10.102.111.25 <none> 443/TCP 95s
tiller-deploy ClusterIP 10.110.172.54 <none> 44134/TCP 47h
# 将 service 的 ClusterIP 改为 NodePort
[root@k8s-master01 kubernetes-dashboard]# kubectl edit svc kubernetes-dashboard -n kube-system
service/kubernetes-dashboard edited
# 再次查看service
[root@k8s-master01 kubernetes-dashboard]# kubectl get svc -n kube-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 255d
kubernetes-dashboard NodePort 10.102.111.25 <none> 443:31904/TCP 2m59s
tiller-deploy ClusterIP 10.110.172.54 <none> 44134/TCP 47h
二、访问 dashboard
1、访问
使用浏览器访问 https://192.168.1.80:31904
,如果是chrome浏览器,可能会被拦截。
解决办法:
在chrome该页面上,注意是在当前页面打开的时候点网页任意地方,不是输入框,直接输入
thisisunsafe
回车,直接就打开页面了。参考:
thisisunsafe的神奇之chrome浏览器打不开不安全的https网页
https://blog.csdn.net/qq_30546099/article/details/114332243
2、查看dashboard的token
将查询到的dashboard token复制到浏览器的输入框中即可。
# 查看kubernetes-dashboard-token的secret
[root@k8s-master01 kubernetes-dashboard]# kubectl -n kube-system get secret | grep kubernetes-dashboard-token
kubernetes-dashboard-token-pzr5j kubernetes.io/service-account-token 3 19m
# 查看secret的内容
[root@k8s-master01 kubernetes-dashboard]# kubectl describe secret kubernetes-dashboard-token-pzr5j -n kube-system
Name: kubernetes-dashboard-token-pzr5j
Namespace: kube-system
Labels: <none>
Annotations: kubernetes.io/service-account.name: kubernetes-dashboard
kubernetes.io/service-account.uid: 98cf8d4e-f2e3-4e1f-a018-30f6eef98206
Type: kubernetes.io/service-account-token
Data
====
token: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJrdWJlcm5ldGVzLWRhc2hib2FyZC10b2tlbi1wenI1aiIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6Ijk4Y2Y4ZDRlLWYyZTMtNGUxZi1hMDE4LTMwZjZlZWY5ODIwNiIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDprdWJlLXN5c3RlbTprdWJlcm5ldGVzLWRhc2hib2FyZCJ9.Bfs1mMuqNcOyeRQ_2Rg5-53JeQ38AZ7alGkzKRVTxxQD8uS2C2OfZ0K5G3j2wrdf2yFPrzSH4jMvPJJDM_AH2GkgdTo4jBBu2-nmG7PZ7gfsID2BaOJUtxnO0P_gIFYCa7q8Rh33vs4yUqIYExGc9j6-fEa4iTNxNuW0SsXRjydiy5-8zQndIlC8PHnX7LUy38glF3k2vgjWg9cQBVc1S9YchEXLPw-CdNlXIHUjO9sJb6sdk_jwhDtuPFECXsrblrKu0HWzC7CwuXtDH1hJcARSXuF-CLIw9ob7i4JtM1_Glo4GRmbXoiqtekpyYZF_Z8B8VEvqskavk7AfSq7P7g
ca.crt: 1025 bytes
namespace: 11 bytes
更多推荐
所有评论(0)