我在RKE1 k8s集群中遇到了一个奇怪的错误。在vsphere上运行1.24.13。kube-api-auth经常在日志中抛出这些错误:
time="2023-06-08T09:21:09Z" level=info msg="Starting Rancher Kube-API-Auth service on 127.0.0.1:6440"
time="2023-06-08T09:21:09Z" level=info msg="Running in single server mode, will not peer connections"
time="2023-06-08T09:21:09Z" level=info msg="Starting workload controllers"
time="2023-06-08T09:21:09Z" level=info msg="Starting cluster.cattle.io/v3, Kind=ClusterUserAttribute controller"
time="2023-06-08T09:21:09Z" level=info msg="Starting catalog.cattle.io/v1, Kind=ClusterRepo controller"
time="2023-06-08T09:21:09Z" level=info msg="Starting rbac.authorization.k8s.io/v1, Kind=Role controller"
time="2023-06-08T09:21:09Z" level=info msg="Starting /v1, Kind=Secret controller"
time="2023-06-08T09:21:09Z" level=info msg="Starting /v1, Kind=ConfigMap controller"
time="2023-06-08T09:21:09Z" level=info msg="Starting rbac.authorization.k8s.io/v1, Kind=ClusterRoleBinding controller"
time="2023-06-08T09:21:09Z" level=info msg="Starting rbac.authorization.k8s.io/v1, Kind=RoleBinding controller"
time="2023-06-08T09:21:09Z" level=info msg="Starting rbac.authorization.k8s.io/v1, Kind=ClusterRole controller"
time="2023-06-08T09:21:09Z" level=info msg="Starting cluster.cattle.io/v3, Kind=ClusterAuthToken controller"
time="2023-06-08T09:21:24Z" level=info msg="Processing v1Authenticate request..."
time="2023-06-08T09:21:24Z" level=error msg="found 1 parts of token"
time="2023-06-08T09:22:24Z" level=info msg="Processing v1Authenticate request..."
time="2023-06-08T09:22:24Z" level=error msg="found 1 parts of token"
time="2023-06-08T09:24:00Z" level=info msg="Processing v1Authenticate request..."
time="2023-06-08T09:24:00Z" level=error msg="found 1 parts of token"
我在Rancher支持页面或stackoverflow上找不到任何与此相关的内容。任何帮助将不胜感激。
1条答案
按热度按时间3zwjbxry1#
在
vmware-tanzu/kubeapps
issue 1874中也有类似的错误消息,指向issue 2111。它建议检查令牌格式。线程指向jwt.io来解密JWT令牌及其三个部分:报头、有效载荷和签名。
确保该令牌以
Bearer <token>
包含在Authorization
标头中。查看RKE1 default Kubernetes services,我还将检查以下各项的日志:
ssh <user>@<master-node-ip>
+docker ps
+docker logs <container-id-or-name>
这取决于您配置的身份验证服务。
例如:
kubectl get pods -n <namespace-where-keycloak-is-running>
+kubectl logs <pod-name> -n <namespace-where-keycloak-is-running>
我已经通过Microsoft Azure AD配置了Rancher UI登录,并且Argo UI也配置为使用Azure AD。
是否有任何特定的可能导致此错误出现?
Rancher UI登录和Argo UI都配置为使用Microsoft Azure AD作为身份验证提供程序,这可能与此问题有关。
Azure AD会发布用于身份验证的令牌,并且正确配置这些令牌至关重要。验证Azure AD中的令牌配置是否与Rancher和Argo UI所期望的相匹配。例如,检查令牌是否具有正确的声明、受众和发行者。
如果在Azure AD中设置了条件访问策略,请确保它们不会无意中阻止Rancher或Argo的访问。
此外,为了与Rancher和Argo等外部应用程序集成,您可能需要Azure AD应用程序注册。确保这些配置正确,包括权限和API权限。
像往常一样,检查Rancher和Argo的日志,以查找任何与身份验证相关的错误。
此外,请查看Azure AD中的日志或审核跟踪,以查看是否存在任何失败的身份验证尝试或令牌颁发问题。