Open jsturtevant opened 8 months ago
@jsturtevant: The label(s) kind/doc
cannot be applied, because the repository doesn't have them.
This will be part of it https://cloud-provider-azure.sigs.k8s.io/topics/credential-provider/
The credential provider is already dropped on the capz nodes:
cat /var/lib/kubelet/credential-provider-config.yaml
kind: CredentialProviderConfig
apiVersion: kubelet.config.k8s.io/v1
providers:
- name: acr-credential-provider
apiVersion: credentialprovider.kubelet.k8s.io/v1
defaultCacheDuration: 10m
matchImages:
- "*.azurecr.io"
- "*.azurecr.cn"
- "*.azurecr.de"
- "*.azurecr.us"
args:
- /etc/kubernetes/azure.json
ls /var/lib/kubelet/credential-provider
acr-credential-provider
The node identity can then be given AcrPull
on the registry and it should work. With the new workload identity and cloud-provider-user-identity
auto assigned to the nodes, this should "just work".
So looking at our current configuration, we are missing two kubelet flags: --image-credential-provider-config=/var/lib/kubelet/credential-provider-config.yaml
and --image-credential-provider-bin-dir=/var/lib/kubelet/credential-provider
Digging deeper our sig-windows scripts have the files but are missing the additional flags. We will add the flags to our scripts.
Here in the capz repo some of the templates have the flags (the ones based on OOT tree credential provider) and others like our base templates don't. @jackfrancis @dtzar since we are using out of tree Cloud-node-provider everywhere should we be updating our base templates to include these parameters and update the docs?
The Kubernetes project currently lacks enough contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.
This bot triages un-triaged issues according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle rotten
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle rotten
/kind doc
[Before submitting an issue, have you checked the Troubleshooting Guide?]
What steps did you take and what happened: [A clear and concise description of what the bug is.] Add documentation on how to configure kubelet in CAPZ to pull from a Private ACR registry. It is alluded to here https://capz.sigs.k8s.io/topics/vm-identity.html?highlight=acrpull#how-to-use-managed-identity but there aren't detailed docs on the exact set up
What did you expect to happen: Make it easy to configure CAPZ clusters to use private ACR registry for management and workload clusters.
Anything else you would like to add: [Miscellaneous information that will assist in solving the issue.]
Environment:
kubectl version
):/etc/os-release
):