排查注册和连接问题

本文档提供注册和连接期间可能遇到的问题的问题排查指南。

配置无效

如果 Google Cloud 控制台无法从集群中读取 OIDC 配置,则登录按钮会被停用。

找不到登录网址

当 Google Cloud Console 无法访问身份提供商时,会出现以下问题。

尝试登录时会被重定向到显示“未找到网址”错误的网页。

要解决此问题,请执行以下操作:

  1. 如果无法通过公共互联网访问身份提供方,则需要启用 OIDC HTTP 代理以通过 Google Cloud Console 登录。在集群配置文件的 authentication.oidc 部分中,将 deployCloudConsoleProxy 设置为 true。如果您已创建集群并想要启用代理,可以直接修改 ClientConfig 自定义资源,并将 useHTTPProxy 设置为 true

    kubectl --kubeconfig USER_CLUSTER_KUBECONFIG edit clientconfig default -n kube-public
    
  2. 如果已启用 HTTP 代理,但您仍然看到此错误,则可能是代理启动时出现问题。如需获取代理的日志,请运行以下命令:

    kubectl --kubeconfig USER_CLUSTER_KUBECONFIG logs deployment/clientconfig-operator -n kube-system

    请注意,即使您的身份提供方有知名 CA,您也必须在集群配置文件中提供 authentication.oidc.caPath 的值才能启动 HTTP 代理。

  3. 如果授权服务器提示同意,而您未添加 extraparam prompt=consent,则可能会看到此错误。修改 ClientConfig 对象,并将 prompt=consent 添加到 extraparams

    kubectl --kubeconfig USER_CLUSTER_KUBECONFIG edit clientconfig default -n kube-public
    

    然后尝试重新登录。

  4. 如果您尚未验证,请尝试使用适用于 Anthos 的身份验证插件进行身份验证。如果您在使用该插件登录时也看到授权错误,请按照问题排查步骤来解决插件的问题。然后再次尝试通过 Google Cloud 控制台登录。

  5. 在某些情况下,如果存储服务的设置发生更改,您可能需要明确退出。在 Google Cloud 控制台中,前往集群详情页面,然后点击退出。然后尝试重新登录。