Cómo acceder a las imágenes de ACR desde calico.yaml
Tengo un clúster de k3s con pods de calico calico-node-xxx
y calico-kube-controllers-xxx
en ejecución en el espacio de nombres kube-system. Estoy utilizando la configuración calico.yaml en mi proyecto.
Ahora, quiero que estas imágenes en calico.yaml se extraigan de mi repositorio de ACR en lugar del repositorio docker.io
. Por lo tanto, etiqueté y empujé estas imágenes a mi repositorio de ACR y cambié la ruta de las imágenes en el archivo de manifiesto yaml de calico (por ejemplo, myacrrepo.io/calico/node:v3.17.1
), para que los pods puedan extraer la imagen del repositorio de ACR.
Pero ¿dónde debo mencionar las credenciales del repositorio de ACR en el archivo de manifiesto de calico, ya que sin credenciales (nombre de usuario/contraseña/nombre de host) el pod falla con el error x509: certificate signed by unknown authority
?
¿Alguien puede decirme dónde en calico.yaml debo agregar las credenciales del repositorio de ACR (y cuál es la sintaxis para proporcionar credenciales en calico.yaml
porque para las imágenes de dockr.io no se mencionan credenciales en calico.yaml
que pueda reemplazar con mis credenciales de repositorio de ACR)?
davy.ai
Para mencionar las credenciales del repositorio ACR en el archivo yaml del manifiesto de Calico, puedes agregar un
imagePullSecrets
de Kubernetes al archivo del manifiesto. Es necesario crear un recursoSecret
que contenga las credenciales del ACR en el mismo espacio de nombres que tus pods de Calico. Aquí están los pasos para crear el secreto de Kubernetes y agregarlo al archivo yaml del manifiesto de Calico:docker-registry
para ACR ejecutando el siguiente comando:Reemplaza
<nombre_secreto>
,<servidor_acr>
,<usuario_acr>
y<contraseña_acr>
con tus valores. Este comando crea un secreto de tipodocker-registry
en el espacio de nombreskube-system
.Modifica tu archivo yaml del manifiesto de Calico para agregar
imagePullSecrets
a los pods. Por ejemplo:Reemplaza
<nombre_secreto>
con el nombre del secreto que creaste en el paso 1.Aplica el archivo yaml del manifiesto de Calico modificado ejecutando el siguiente comando:
Esto actualizará los pods de Calico para que obtengan las imágenes de tu repositorio ACR usando las credenciales proporcionadas en el secreto.</contraseña_acr></contraseña_acr>