首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法通过令牌访问kubernetes仪表板

无法通过令牌访问kubernetes仪表板
EN

Stack Overflow用户
提问于 2018-01-03 06:08:03
回答 7查看 14.3K关注 0票数 7
  1. 我已经使用kubeadm v1.8.5设置了一个kubernetes
  2. 使用以下方法设置仪表板:
代码语言:javascript
复制
wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.8.0/src/deploy/recommended/kubernetes-dashboard.yaml`

kubectl create -f kubernetes-dashboard.yaml

kubectl create -f kubernetes-dashboard-admin.rbac.yaml
  1. 然后按照建议使用http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/设置kubectl代理。
  2. 当我试图使用kubernetes-仪表板-管理令牌登录时。通过使用以下命令接收令牌:
代码语言:javascript
复制
    kubectl -n kube-system get secret | grep -i dashboard-admin | awk '{print $1}' | xargs -I {} 
    kubectl -n kube-system describe secret {}

来了我的问题:我无法通过令牌访问仪表板,当我粘贴令牌并单击"Signin“botton时,什么都没有发生。在我的日志中,-f /var/log/messages和journalctl -xeu kubelet中什么也没有。我是k8s的一只新蜂,也许有人能告诉我日志在哪里?

以下是我的k8s集群信息:

根@k8s-1 pki# kubectl cluster-info

代码语言:javascript
复制
Kubernetes master is running at https://172.16.1.15:6443
KubeDNS is running at https://172.16.1.15:6443/api/v1/namespaces/kube-system/services/kube-dns/proxy
kubernetes-dashboard is running at https://172.16.1.15:6443/api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

根@k8s-1 pki# kubectl get nodes

代码语言:javascript
复制
NAME      STATUS    ROLES     AGE       VERSION
k8s-1     Ready     master    4d        v1.8.5
k8s-2     Ready     <none>    4d        v1.8.5
k8s-3     Ready     <none>    4d        v1.8.5

根@k8s-1 pki# kubectl get pods --all-namespaces

代码语言:javascript
复制
NAMESPACE     NAME                                    READY     STATUS    RESTARTS   AGE
kube-system   etcd-k8s-1                              1/1       Running   2          4d
kube-system   kube-apiserver-k8s-1                    1/1       Running   2          4d
kube-system   kube-controller-manager-k8s-1           1/1       Running   1          4d
kube-system   kube-dns-545bc4bfd4-94vxx               3/3       Running   3          4d
kube-system   kube-flannel-ds-97frd                   1/1       Running   2          4d
kube-system   kube-flannel-ds-bl9tp                   1/1       Running   2          4d
kube-system   kube-flannel-ds-bn9hp                   1/1       Running   1          4d
kube-system   kube-proxy-9ncdm                        1/1       Running   0          4d
kube-system   kube-proxy-qjm9k                        1/1       Running   1          4d
kube-system   kube-proxy-rknz4                        1/1       Running   0          4d
kube-system   kube-scheduler-k8s-1                    1/1       Running   2          4d
kube-system   kubernetes-dashboard-7486b894c6-tszq9   1/1       Running   0          2h

kubernetes-仪表板-管理-rbac.yaml是:

根@k8s-1 dashboards# cat kubernetes-dashboard-admin.rbac.yaml

代码语言:javascript
复制
---
apiVersion: v1
kind: ServiceAccount
metadata:
  labels:
    k8s-app: kubernetes-dashboard
    kubernetes.io/cluster-service: "true"
    addonmanager.kubernetes.io/mode: Reconcile
  name: kubernetes-dashboard-admin
  namespace: kube-system
代码语言:javascript
复制
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: kubernetes-dashboard-admin
  annotations:
    rbac.authorization.kubernetes.io/autoupdate: "true"
  labels:
    k8s-app: kubernetes-dashboard
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: kubernetes-dashboard-admin
  namespace: kube-system

有什么建议吗?谢谢!

EN

回答 7

Stack Overflow用户

发布于 2018-05-24 11:25:27

尝试使用https连接,我也有同样的问题,这对我来说是有效的。

Kubernetes手册:

注意:仪表板不应该使用kubectl代理命令公开,因为它只允许HTTP连接。对于本地主机和127.0.0.1以外的域,不可能登录。单击登录页面上的“登录”按钮后,不会发生任何情况。只有在通过HTTPS访问仪表板或域是本地主机或127.0.0.1时,登录才可用。这样做是出于安全考虑。按预期工作结束。

票数 13
EN

Stack Overflow用户

发布于 2018-03-27 11:46:00

尝试此令牌(输出):

代码语言:javascript
复制
 kubectl -n kube-system get secret |grep  kubernetes-dashboard-token |cut -f1 -d ' ' |  xargs kubectl -n kube-system describe  secret

如果无法使用此令牌尝试/测试登录(输出):

代码语言:javascript
复制
kubectl -n kube-system get secret |grep  namespace-controller-token  |cut -f1 -d ' ' |  xargs kubectl -n kube-system describe  secret

祝好运..。

票数 9
EN

Stack Overflow用户

发布于 2018-03-24 13:48:36

您应该首先创建一个管理用户,并将集群- admin集群绑定添加到其中:

使用这些文件admin-user.yamladmin-user-clusterrolebinding.yaml创建具有集群管理集群绑定的管理用户:

代码语言:javascript
复制
[root@k8s-1 kubernetes-via-kubeadm]# kubectl create -f admin-user.yaml
serviceaccount "admin-user" created

[root@k8s-1 kubernetes-via-kubeadm]# kubectl create -f admin-user-clusterrolebinding.yaml 
clusterrolebinding "admin-user" created

要获取此管理员-用户的令牌:

代码语言:javascript
复制
[root@k8s-1 kubernetes-via-kubeadm]# kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}') | grep ^token: | sed 's/token:[ ]*/Token:\n/'
Token:
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLW1oNzIyIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiIwNWM0ZDZmZC0yZjYyLTExZTgtYTMxNi1jMDNmZDU2MmJiNzciLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06YWRtaW4tdXNlciJ9.butKxegADx3JQvKpn9Prf7RL_SoxaEyi_scYOvXurm4BAwEj8zfC9a7djqQ9mBtd5cQHlljvMb-3qFc6UPOzAwR8fc5khk-nAkH-5XeahpT8WsyxMcKxqLuyAg8gh4ZtMKvBPk9kOWDtyRBzAeGkisbLxr43ecKO71F5G8D7HR2UGSm-x4Pvhq0uqj8GyIcHw902Ti92BPuBRf-SyTl8uDCQJSDkS5Tru5w0p82borNuVXd1mmDwuI87ApQrqXTY9rbJ61m8iTr0kKJBqw5bHAUAhxwAVtVEKQNNKT6cxWp1FlhHbNkM9bhcj1qj8bN1QCMjPWlWKj7NkPbbBAJthQ

您可以使用令牌登录您的kubernetes-仪表板。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48072043

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档