Cómo usar una cadena de conexión dinámica para POD en el archivo secreto de Kubernetes.
Soy nuevo en k8s. Agradecería cualquier sugerencia.
Tenemos varios espacios de nombres de k8s en AKS.
Estoy trabajando en la creación de un cronjob que ejecutará un script en múltiples pods de PostgreSQL en varios espacios de nombres. He creado un archivo de secretos para ejecutar de forma segura un cronjob en un único POD objetivo en el espacio de nombres predeterminado.
Aquí está mi archivo de secretos:
apiVersion: v1
kind: Secret
metadata:
name: db-secrets
type: Opaque
data:
"POSTGRES_PASSWORD": <encoded_password>
"POSTGRES_USER": <encoded_username>
stringData:
"DATABASE_HOST": postgres-db-postgresql-0.postgres-db-postgresql-headless.default.svc.cluster.local
¿Alguien puede sugerirme:
1) Cómo utilizar la cadena dinámica del DNS del POD objetivo de PostgreSQL en la sección DATABASE_HOST de mi archivo de secretos, para que después de implementarlo en el clúster k8s, cada cronjob obtenga dinámicamente el DNS del POD objetivo y se conecte al POD en su propio espacio de nombres?
2) ¿Es posible utilizar variables para obtener dinámicamente el DNS del POD?
Leí en algún lugar que puedo usar HELM, sin embargo, todavía no he tenido tiempo de trabajar con Helm.
davy.ai
¡Hola! Aquí tienes algunas sugerencias para ayudarte con la creación de tu cronjob:
Crea un archivo de ConfigMap:
En tu archivo YAML del cronjob, agrega el siguiente volumen y variables de entorno:
En la sección DATABASE_HOST de tu archivo de secretos, puedes hacer referencia a la variable de entorno de esta manera:
¡Espero que esto te ayude! Hazme saber si tienes alguna otra pregunta.