Skip to content

kola/kubeadm: pull external-etcd image from MCR on ACL Azure - #23

Draft
Jiri Appl (jiria) wants to merge 1 commit into
aclmainfrom
jiria/kubeadm-etcd-mcr
Draft

kola/kubeadm: pull external-etcd image from MCR on ACL Azure#23
Jiri Appl (jiria) wants to merge 1 commit into
aclmainfrom
jiria/kubeadm-etcd-mcr

Conversation

@jiria

Copy link
Copy Markdown
Member

Summary

The kubeadm.* kola tests stand up a dedicated external-etcd node pinned to etcd v3.5.22, but the ACL image only bakes v3.5.16, so the node performs a runtime image pull at boot. On the Azure kola pool egress to quay.io is restricted, so that pull fails, etcd never becomes healthy, and every kubeadm.* test fails at the pre-kubeadm etcd health poll (unable to get etcd node health). QEMU (open egress) pulls fine and passes.

mcr.microsoft.com is reachable from the Azure pool and mirrors the same tags (v3.5.22, v3.5.16).

Change

Add an etcd-member.service drop-in in the ACL etcd-node config (etcdConfigAclWithCIDR) that sets:

Environment="ETCD_IMAGE=mcr.microsoft.com/oss/v2/etcd-io/etcd:v3.5.22"

The etcd-wrapper resolves the image as ${ETCD_IMAGE:-${ETCD_IMAGE_URL}:${ETCD_IMAGE_TAG}}, so setting the full ETCD_IMAGE overrides both the registry and tag in one shot — the node pulls from MCR instead of quay.io. Scoped to the ACL config only; the upstream etcd config is unchanged.

Validation

  • Confirmed mcr.microsoft.com/oss/v2/etcd-io/etcd:v3.5.22 exists.
  • Cross-compiles clean (GOOS=linux go build ./kola/tests/kubeadm/).
  • Verified the transpiled Azure Ignition contains the MCR image ref.
  • Pipeline validation in progress.

The kubeadm kola tests stand up a dedicated external-etcd node pinned to
etcd v3.5.22, but the ACL image only bakes v3.5.16, so the node performs a
runtime image pull. On the Azure kola pool egress to quay.io is restricted,
so that pull fails, etcd never becomes healthy, and every kubeadm.* test
fails at the pre-kubeadm etcd health poll. mcr.microsoft.com is reachable
from the Azure pool.

Add an etcd-member.service drop-in in the ACL etcd-node config that sets
ETCD_IMAGE to mcr.microsoft.com/oss/v2/etcd-io/etcd:v3.5.22, so the node
pulls from MCR instead of quay.io. Scoped to the ACL config only; the
upstream etcd config is unchanged.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant