如果没有为通过身份验证的用户配置 Pod 安全策略和基于角色的访问控制,则可能会发生容器部署错误。

问题

您将容器工作负载部署到 TKG 集群,但该工作负载未启动。您会看到类似以下内容的错误:

Error: container has runAsNonRoot and image will run as root.

原因

置备 TKG 集群时启用了 PodSecurityPolicy 准入控制器。在集群管理员将 PodSecurityPolicy 绑定到经过身份验证的用户之前,经过身份验证的用户不能创建特权或非特权 POD。

解决方案

创建默认 PodSecurityPolicy 的相应绑定,或定义自定义 PodSecurityPolicy。