Skip to content

Change cos-auditd init container's image repository to gke.gcr.io #37

@ciaccotaco

Description

@ciaccotaco

The cos-auditd daemonset deploys 2 images.

The cos-auditd-fluent-bit image comes from gke.gcr.io, which is internal to GCP.

spec:
  template:
    spec:
      containers:
      - name: cos-auditd-fluent-bit
        image: gke.gcr.io/fluent-bit@sha256:436f3b7a38522314dd3db22ae8187192d928763c29e94d04c0900b34f0ca0779 # v1.8.12-gke.16

However, the cos-auditd-setup init container pulls its ubuntu image from docker.io

spec:
  template:
    spec:
      initContainers:
      - name: cos-auditd-setup
        image: ubuntu

Inside a VPC Service Perimeter that routes traffic through a PSC, docker.io pulls fail with an x509 error:

Failed to pull image "ubuntu": rpc error: code = Unknown desc = failed to pull and unpack image "docker.io/library/ubuntu/latest": failed to resolve reference "docker.io/library/ubuntu:latest": failed to do request: Head "https://registry-1.docker.io/v2/library/ubuntu/manifests/latest": x509: certificate signed by unknown authority

Additionally, I believe if the cluster could successfully reach docker.io, that the pull would still fail to due binary authorization attestation policies.

If possible, can the init container's image be hosted on a repository that is included in GCP's default binary authorization whitelist (preferably gke.gcr.io)? This would resolve both issues.

admissionWhitelistPatterns:
- namePattern: gcr.io/google_containers/*
- namePattern: gcr.io/google-containers/*
- namePattern: k8s.gcr.io/**
- namePattern: gke.gcr.io/**
- namePattern: gcr.io/stackdriver-agents/*

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions