【问题标题】:PodSecurityPolicy malfunctions with specific ImagePullPolicyPodSecurityPolicy 出现特定 ImagePullPolicy 故障
【发布时间】:2019-06-17 16:06:00
【问题描述】:

我正在尝试在我的 v1.13.6-gke.6 k8s 集群中部署一个 Pod。

我使用的图片非常简单:

FROM scratch
LABEL maintainer "Bitnami <containers@bitnami.com>"

COPY rootfs /

USER 1001
CMD [ "/chart-repo" ]

如您所见,用户设置为1001

我在其中部署 Pod 的集群具有 PSP 设置。

spec:
  allowPrivilegeEscalation: false
  allowedCapabilities:
  - IPC_LOCK
  fsGroup:
    ranges:
    - max: 65535
      min: 1
    rule: MustRunAs
  runAsUser:
    rule: MustRunAsNonRoot

所以基本上按照rule: MustRunAsNonRoot 规则,上面的图像应该运行。

但是当我运行图像时,我随机遇到:

Error: container has runAsNonRoot and image will run as root

所以进一步挖掘,我得到了这个模式:

每次我使用imagePullPolicy: IfNotPresent 运行映像时,我总是会遇到问题。这意味着每次我拾取缓存的图像时,都会出现container has runAsNonRoot 错误。

  Normal   Pulled     12s (x3 over 14s)  kubelet, test-1905-default-pool-1b8e4761-fz8s  Container image "my-repo/bitnami/kubeapps-chart-repo:1.4.0-r1" already present on machine
  Warning  Failed     12s (x3 over 14s)  kubelet, test-1905-default-pool-1b8e4761-fz8s  Error: container has runAsNonRoot and image will run as root

但是

每次我以imagePullPolicy: Always 运行图像时,图像都会成功运行:

  Normal  Pulled     6s    kubelet, test-1905-default-pool-1b8e4761-sh5g  Successfully pulled image "my-repo/bitnami/kubeapps-chart-repo:1.4.0-r1"
  Normal  Created    5s    kubelet, test-1905-default-pool-1b8e4761-sh5g  Created container
  Normal  Started    5s    kubelet, test-1905-default-pool-1b8e4761-sh5g  Started container

所以我不太确定这一切是关于什么的。我的意思是因为 ImagePullPolicy 不同,为什么它错误地设置了 PSP 规则?

【问题讨论】:

    标签: kubernetes google-kubernetes-engine kubernetes-pod


    【解决方案1】:

    发现问题。对于 2 个特定版本 v1.13.6v1.14.2,它是 k8s 的一个已知问题。

    https://github.com/kubernetes/kubernetes/issues/78308

    【讨论】:

      【解决方案2】:

      根据描述很难判断。您的集群中有多个节点吗?

      首先,如果您在imagePullPolicy: IfNotPresent 中看到错误,而在imagePullPolicy: Always 中没有看到它,这很可能是由于本地节点上的容器映像与容器注册表中的不同。

      可能是您在本地有一个旧版本的my-repo/bitnami/kubeapps-chart-repo 具有相同的标签?

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-19
      • 1970-01-01
      • 1970-01-01
      • 2015-05-23
      • 2012-12-08
      • 2018-04-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多