-
Hey everyone, I'm struggling to set up the ecr-credential-provider. Here’s what I’ve tried so far:
t upgrade --image factory.talos.dev/installer/10e276a06c1f86b182757a962258ac00655d3425e5957f617bdc82f06894e39b:v1.8.2 -m powercycle -f
---
machine:
kubelet:
credentialProviderConfig:
apiVersion: kubelet.config.k8s.io/v1
kind: CredentialProviderConfig
providers:
- name: ecr-credential-provider
matchImages:
- "*.dkr.ecr.*.amazonaws.com"
- "*.dkr.ecr.*.amazonaws.com.cn"
- "*.dkr.ecr-fips.*.amazonaws.com"
- "*.dkr.ecr.us-iso-east-1.c2s.ic.gov"
- "*.dkr.ecr.us-isob-east-1.sc2s.sgov.gov"
defaultCacheDuration: "12h"
apiVersion: credentialprovider.kubelet.k8s.io/v1
apiVersion: v1
kind: Pod
metadata:
name: nginx
labels:
app: nginx
spec:
tolerations:
- key: "node-role.kubernetes.io/control-plane"
operator: "Exists"
effect: "NoSchedule"
containers:
- name: nginx
image: {{ aws id }}.dkr.ecr.{{ region }}.amazonaws.com/test:latest
ports:
- containerPort: 80
Failed to pull image "{{ aws id }}.dkr.ecr.{{ region }}.amazonaws.com/test:latest": failed to pull and unpack image "{{ aws id }}.dkr.ecr.{{ region }}.amazonaws.com/test:latest": failed to resolve reference "{{ aws id }}.dkr.ecr.{{ region }}.amazonaws.com/test:latest": pull access denied, repository does not exist or may require authorization: authorization failed: no basic auth credentials My Guess:It seems like the credential-provider plugin may be missing necessary authentication information when making requests through the API, causing the error. I'm unsure how to add AWS authentication credentials to my on-prem machine so that the plugin can operate correctly. If anyone has insights on this issue or can suggest a solution, I’d really appreciate it! 🙏 |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
You need to look into the credential provider docs on how to supply AWS credentials. This is an extension, so the only bug on our side might be if kubelet doesn't pick it up. |
Beta Was this translation helpful? Give feedback.
You need to look into the credential provider docs on how to supply AWS credentials.
This is an extension, so the only bug on our side might be if kubelet doesn't pick it up.