Anthos 已知问题

本页面列出了在断开连接模式下运行的 Anthos 的已知问题,以及可以避免这些问题或在发生此类问题时恢复服务的方法。

Pod 连接失败和反向路径过滤

Anthos 会在节点上配置反向路径过滤以停用来源验证 (net.ipv4.conf.all.rp_filter=0)。如果 rp_filter 设置被更改为 12,则 Pod 会因节点外通信超时而失败。

反向路径过滤是使用 IPv4 配置文件夹 (net/ipv4/conf/all) 中的 rp_filter 文件设置的。此值也可能被 sysctl 替换,后者会将反向路径过滤设置存储在网络安全配置文件(例如 /etc/sysctl.d/60-gce-network-security.conf)中。

如需恢复 Pod 连接,请手动将 net.ipv4.conf.all.rp_filter 设置回 0,或者重新启动 anetd Pod 以将 net.ipv4.conf.all.rp_filter 设置回 0。如需重启 anetd Pod,请使用以下命令定位并删除 anetd Pod,一个新的 anetd Pod 将在其位置启动:

kubectl get pods -n kube-system
kubectl delete pods -n kube-system ANETD_XYZ

ANETD_XYZ 替换为 anetd Pod 的名称。

访问 Anthos Management Center Console 时的重定向循环

如果在设置身份提供商并使用身份提供商登录后访问 Management Center Console 时,浏览器处于重定向循环中,则 OIDC 设置可能出错。请参阅重置身份验证配置

如果请求的 OIDC 范围内不存在用户名声明或群组声明,则通常会发生这种情况。检查 OIDC 提供商提供的 JWT,以验证在设置身份提供商时是否使用了正确的用户名声明或群组声明。

配置 OIDC 时,客户端 ID 必须是唯一的

向 OIDC 提供商成功进行身份验证后,此问题可能会出现在重定向循环中。检查身份提供商配置,了解是否有其他身份提供商使用同一客户端 ID:

KUBECONFIG=${ADMIN_KUBECONFIG} kubectl get clientconfig -n kube-public default -oyaml

如果存在重复的客户端 ID,请让您的身份提供商创建新的客户端 ID。

在授权令牌到期后手动刷新网页

如果您看到显示错误的网页,并且自上次登录之后至少有 1 小时(或更短,具体取决于您的 OIDC 提供商设置),请点击浏览器中的刷新按钮以强制刷新网页使用新的授权令牌。您的 OIDC 提供商可能会提示您重新登录。

创建管理员集群失败

如果您在创建管理员集群时遇到问题,其中 kind 集群中的 kube-proxy pod 无法启动,请尝试在管理员工作站上手动设置 nf_conntrack_max。例如:

sudo sysctl -w net.netfilter.nf_conntrack_max=131072

后续步骤