1. 部署管理后台
默认情况下,管理后台没有部署。
部署管理后台,在Kubernetes主节点执行以下命令:
kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml
2. 启动管理后台代理
启动本地机器和Kubernetes API服务器之间的代理:
kubectl proxy
3. 访问管理后台
3.1 本地访问管理后台
现在,要在浏览器中登录管理后台,可访问以下网址:
http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
打开后的页面提示,需要输入凭据:
3.2 远程访问管理后台
kubernetes的管理后台,只能在本地机器上访问。
要从远程访问,可以通过ssl隧道,作端口转发。
在远程机器上,执行:
ssh -L 9999:127.0.0.1:8001 -N -f -l <user> <IP>
9999
远程机器端口,是对8001
端口的映射<user>
Kubernetes主节点的用户名<IP>
Kubernetes主节点的IP地址
执行命令时会要求输入密码。
Kevin@QIKEGU C:\Users\Kevin
> ssh -L 9999:127.0.0.1:8001 -N -f -l root 192.168.31.174
The authenticity of host '192.168.31.174 (192.168.31.174)' can't be established.
ECDSA key fingerprint is SHA256:8mR35kdAIvJXOugNybph3pQyf9OZXjuzN0hIWLW2WYQ.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.31.174' (ECDSA) to the list of known hosts.
root@192.168.31.174's password:
登录管理后台,在浏览器中访问以下网址:
http://localhost:9999/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
打开后的页面提示,需要输入凭据:
4. 创建集群管理帐户
在此步骤中,我们将创建管理后台服务帐户,并获取其凭据。
注意: 在主节点的新终端中执行新命令,否则
kubectl proxy
命令将终止。
此命令将在缺省命名空间中创建一个后台管理服务帐户:
kubectl create serviceaccount dashboard -n default
将集群绑定规则添加到后台管理帐户
kubectl create clusterrolebinding dashboard-admin -n default --clusterrole=cluster-admin --serviceaccount=default:dashboard
使用以下命令获取管理后台登录所需的token:
kubectl get secret $(kubectl get serviceaccount dashboard -o jsonpath="{.secrets[0].name}") -o jsonpath="{.data.token}" | base64 --decode
[root@qikegu-centos5 ~]# kubectl get secret $(kubectl get serviceaccount name}") -o jsonpath="{.data.token}" | base64 --decode
eyJhbGciOiJSUzI1NiIsImtpZCI6IkpucU91X0tMRThhT1JyN21wZ05CZXM2QzAwdVJibzM0U1k0dFMzUkdqeXMifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6ImRhc2hib2FyZC10b2tlbi1iOGhoNSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJkYXNoYm9hcmQiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiJmNTBmZDUxMi01NDNmLTQ3NjQtOWM2YS02NThlYWNhZmFiY2QiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6ZGVmYXVsdDpkYXNoYm9hcmQifQ.HNhNRmjlBW6LTXETZ2aoJQkyQPY1kWzHZAh-k8IkFWb9EQ982wJM30mtyiPVm473w0p4IO7mLZbginE0hhR44BX93aOk6k0-rDIXHsknH7bjaQcm-Q6UR1gZYEMG0Lx7M69ZzEL-easirEAwivc5hVbpFHmbDCq6BJuooQhou52D9LAjoR6Pnca-v2B7uixODH3bEkwuTdKWOpIfr35Ku8DlG30P9Mdd6WZX5itBtr0WJDDsV1hk4psfqvmmTssOFyP6uoMi7l4rzFsRWzUM8VNl_psJ7JkfHaoz2Pmc63SHsk-8HB_uH47ly2IHe1AKnGo3cRaHL5KE-fpXzLf_nQ
5. 登录管理后台
复制上一步中得到的token,并粘贴到登录页面输入框里:
登录Kubernetes主页: