如何登录microk8s Kubernetes Dashboard?
How to log in to the microk8s Kubernetes Dashboard?
我在 microk8s 中启用了仪表板:
microk8s.enable dns dashboard
我找到了它的 IP 地址:
microk8s.kubectl get all --all-namespaces
...
kube-system service/kubernetes-dashboard ClusterIP 10.152.183.212 <none> 443/TCP 24h
...
我尝试使用 URL https://10.152.183.212 在我的浏览器中显示它。我的浏览器给出错误 "Authentication failed. Please try again.":
我也收到了类似的错误,"Not enough data to create auth info structure."
首先,请确保您的浏览器接受仪表板 URL 的 cookie,在本例中为 https://10.152.183.212
。
由于 microk8s 的松散安全性,您可以跳过登录并简单地 select SKIP 按钮。
如果您想真正登录,请从文件 /snap/microk8s/current/known_token.csv
:
中获取用户 admin
的不记名令牌
sed -n 's/,admin,admin.*//p' /snap/microk8s/current/known_token.csv
rP8Yredactedk5EU
Return 到您的浏览器,select 令牌,然后输入上面找到的不记名令牌。 Select 登录 并输入不记名令牌:
为了扩展@John 的回答,有时您可能会被询问 HTTP 基本身份验证提示,您也可以在以下位置找到这些凭据:
#/var/snap/microk8s/current/credentials/basic_auth.csv
~/:$ sudo cat /var/snap/microk8s/current/credentials/basic_auth.csv
<password>,admin,admin,"system:masters"
第一个值 (password
) 是实际密码,用户将是 admin
。
稍后,系统可能会要求您使用秘密令牌登录。可以这样取:
首先,让我们通过获取秘密列表来确定代币名称(它是随机的):
~/:$ kubectl -n kube-system get secret
NAME TYPE DATA AGE
coredns-token-k64mx kubernetes.io/service-account-token 3 86s
.
.
kubernetes-dashboard-token-wmxh6 kubernetes.io/service-account-token 3 80s
最后一个token(kubernetes-dashboard-token-wmxh6
)就是我们要找的那个,现在让我们获取实际值:
~/:$ kubectl -n kube-system describe secret kubernetes-dashboard-token-wmxh6
Name: kubernetes-dashboard-token-wmxh6
Namespace: kube-system
Labels: <none>
Annotations: kubernetes.io/service-account.name: kubernetes-dashboard
kubernetes.io/service-account.uid: 538fbe6d-ac1e-40e8-91e9-ec0cf4265545
Type: kubernetes.io/service-account-token
Data
====
ca.crt: 1115 bytes
namespace: 11 bytes
token: <token-value>
令牌字段的值 (<token-value>
) 将是登录 K8s 仪表板的令牌。
从那里开始,你应该没问题。
kubectl describe service/kubernetes-dashboard -n kube-system
将return一个端点。对我来说,它看起来像这样:10.1.43.61:8443
然后您可以在 https://10.1.43.61:8443 打开浏览器,您可能必须绕过安全警告。
现在您需要进行身份验证才能访问仪表板。
token=$(microk8s kubectl -n kube-system get secret | grep default-token | cut -d " " -f1)
microk8s kubectl -n kube-system describe secret $token
(此命令来自docs)
将 return 身份验证令牌。将令牌粘贴到登录屏幕,现在您应该可以访问仪表板了。
您可以使用以下命令检索令牌:
microk8s config
并得到以下输出:
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: ***
server: https://172.20.10.4:16443
name: microk8s-cluster
contexts:
- context:
cluster: microk8s-cluster
user: admin
name: microk8s
current-context: microk8s
kind: Config
preferences: {}
users:
- name: admin
user:
token: S2Vyb0pBTEZIMXI0SG1DT1hIWEpoeTc3ZTYvaEZXbXdEMnFaMnZ0eWVXMD0K
令牌可用于登录仪表板。
我在 microk8s 中启用了仪表板:
microk8s.enable dns dashboard
我找到了它的 IP 地址:
microk8s.kubectl get all --all-namespaces
...
kube-system service/kubernetes-dashboard ClusterIP 10.152.183.212 <none> 443/TCP 24h
...
我尝试使用 URL https://10.152.183.212 在我的浏览器中显示它。我的浏览器给出错误 "Authentication failed. Please try again.":
我也收到了类似的错误,"Not enough data to create auth info structure."
首先,请确保您的浏览器接受仪表板 URL 的 cookie,在本例中为 https://10.152.183.212
。
由于 microk8s 的松散安全性,您可以跳过登录并简单地 select SKIP 按钮。
如果您想真正登录,请从文件 /snap/microk8s/current/known_token.csv
:
admin
的不记名令牌
sed -n 's/,admin,admin.*//p' /snap/microk8s/current/known_token.csv
rP8Yredactedk5EU
Return 到您的浏览器,select 令牌,然后输入上面找到的不记名令牌。 Select 登录 并输入不记名令牌:
为了扩展@John 的回答,有时您可能会被询问 HTTP 基本身份验证提示,您也可以在以下位置找到这些凭据:
#/var/snap/microk8s/current/credentials/basic_auth.csv
~/:$ sudo cat /var/snap/microk8s/current/credentials/basic_auth.csv
<password>,admin,admin,"system:masters"
第一个值 (password
) 是实际密码,用户将是 admin
。
稍后,系统可能会要求您使用秘密令牌登录。可以这样取:
首先,让我们通过获取秘密列表来确定代币名称(它是随机的):
~/:$ kubectl -n kube-system get secret
NAME TYPE DATA AGE
coredns-token-k64mx kubernetes.io/service-account-token 3 86s
.
.
kubernetes-dashboard-token-wmxh6 kubernetes.io/service-account-token 3 80s
最后一个token(kubernetes-dashboard-token-wmxh6
)就是我们要找的那个,现在让我们获取实际值:
~/:$ kubectl -n kube-system describe secret kubernetes-dashboard-token-wmxh6
Name: kubernetes-dashboard-token-wmxh6
Namespace: kube-system
Labels: <none>
Annotations: kubernetes.io/service-account.name: kubernetes-dashboard
kubernetes.io/service-account.uid: 538fbe6d-ac1e-40e8-91e9-ec0cf4265545
Type: kubernetes.io/service-account-token
Data
====
ca.crt: 1115 bytes
namespace: 11 bytes
token: <token-value>
令牌字段的值 (<token-value>
) 将是登录 K8s 仪表板的令牌。
从那里开始,你应该没问题。
kubectl describe service/kubernetes-dashboard -n kube-system
将return一个端点。对我来说,它看起来像这样:10.1.43.61:8443 然后您可以在 https://10.1.43.61:8443 打开浏览器,您可能必须绕过安全警告。
现在您需要进行身份验证才能访问仪表板。
token=$(microk8s kubectl -n kube-system get secret | grep default-token | cut -d " " -f1)
microk8s kubectl -n kube-system describe secret $token
(此命令来自docs) 将 return 身份验证令牌。将令牌粘贴到登录屏幕,现在您应该可以访问仪表板了。
您可以使用以下命令检索令牌:
microk8s config
并得到以下输出:
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: ***
server: https://172.20.10.4:16443
name: microk8s-cluster
contexts:
- context:
cluster: microk8s-cluster
user: admin
name: microk8s
current-context: microk8s
kind: Config
preferences: {}
users:
- name: admin
user:
token: S2Vyb0pBTEZIMXI0SG1DT1hIWEpoeTc3ZTYvaEZXbXdEMnFaMnZ0eWVXMD0K
令牌可用于登录仪表板。