Day 03 进入后台
命名空间
kubectl get namespaces
------------------------------------------------------------------------
NAME STATUS AGE
default Active 11h
kube-node-lease Active 11h
kube-public Active 11h
kube-system Active 11h
# 默认的名称空间
进入GitHub找到Kubernetes官方库
1.搜索dashboard
2.通过阅读Readme找到真实需要的东西
2.1再上文的目录中找到文件
2.2点进去,完整的复制出来
再master节点中创建同名文件,并完整复制进去(最好是创建一个新文件然后拖进去,不然很容易报错 找不到名称空间)
[root@k8s-master ~]# vi recommended.yaml
同样k8s
中的yaml
依赖的仍然是镜像
,所以我们还是要查看镜像信息
2.3 替换
通过海外构建的方法,我们把这三个镜像拉下来,然后用同样的方法替换
sed -i 's#kubernetesui/metrics-scraper#registry.cn-hangzhou.aliyuncs.com/k8sos/metricsscraper#g' recommended.yaml
sed -i 's#kubernetesui/dashboard#registry.cn-hangzhou.aliyuncs.com/k8sos/dashboard#g' recommended.yaml
检查是否替换
2.4执行 recommended.yaml
kubectl apply -f recommended.yaml
2.5检查是否安装完成(running)
kubectl get pods -n kubernetes-dashboard
2.6 svc(内置负载均衡器)
get svc -n kubernetes-dashboard
但是我们直接访问是不行的,k8s对安全要求特别高,一般不会给你访问内部的机会,所以我们要主动请求
2.7 修改负载均衡器的配置
均衡器名称 命名空间
kubectl edit svc kubernetes-dashboard -n kubernetes-dashboard
修改–保存退出
2.8 查看svc修改
get svc -n kubernetes-dashboard
此时映射了一个端口
然后我们通过本机和端口访问
提示需要一个HTTPS的server那我们就修改成https的,却还是不行
但是如果我们强制点击右下角的Continue
还是可以进去的
这个时候就要来签发token了
3.部署Token
[root@localhost ~]# vim token.yaml
[root@localhost ~]# cat token.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
annotations:
rbac.authorization.kubernetes.io/autoupdate: "true"
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kube-system
3.1 部署token
kubectl apply -f token.yaml
3.2 生成token
kubectl describe secrets -n kubernetes-dashboard $(kubectl -n kubernetes-dashboard get secret |awk '/dashboard-admin/{print $1}')
复制到面板就能进去了