No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Gestionando la configuración aplicativas utilizando Config Maps

25/33
Recursos

Tenemos diferentes formas de configurar nuestras aplicaciones:

  • Argumentos por línea de comandos
  • Variables de entorno (env map en el spec)
  • Archivos de configuración (config maps)
    – Guardan tanto archivo como valores clave/valor

Aportes 11

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Un configmap es un objeto de la API utilizado para almacenar datos no confidenciales en el formato clave-valor.
Un ConfigMap te permite desacoplar la configuración de un entorno específico de una imagen de contenedor, así las aplicaciones son fácilmente portables.

#create configmaps
kubectl create configmap haproxy --from-file=haproxy.cfg
#see configmaps
kubectl get configmap haproxy -o yaml | less
kubectl apply -f haproxy.yaml
kubectl create configmap registry --from-literal=http.addr=0.0.0.0:80
vi registry.yaml
kubectl apply -f  registry.yaml

Hay cuatro maneras diferentes de usar un ConfigMap para configurar un contenedor dentro de un Pod:

  1. Argumento en la linea de comandos como entrypoint de un contenedor
  2. Variable de enorno de un contenedor
  3. Como fichero en un volumen de solo lectura, para que lo lea la aplicación
  4. Escribir el código para ejecutar dentro de un Pod que utiliza la API para leer el ConfigMap

Si queréis actualizar el configmap para hacer algún cambio en la configuración, lo podéis hacer con la orden:

kubectl edit configmap haproxy

DownwardAPI: a Pod can use a DownwardAPIVolumeFile to expose information about itself to Containers running in the Pod. A DownwardAPIVolumeFile can expose Pod fields and Container fields
.
En esta documentación se explica más sobre el DownwardAPI y otro tipo de ejemplos:
https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/

no me quedo claro, tienes algún enlaces en donde profundice el tema?

si queremos ver que los configmap guardaron nuestro archivos y varbiles de entorno dentro de los pod. ingresamos a cada pod

kubectl exec -it  pod/haproxy bash
cd /usr/local/etc/haproxy/
cat  haproxy.cfg

y la variable de entorno dentro del pod registry

kubectl exec -it registry sh
env | grep REGISTRY_HTTP

Muestra
REGISTRY_HTTP_ADDR=0.0.0.0:80

En mi caso el pod registry no me permitió ingresar con bash, me salía **error 126 **como si no encontrara el **bash **para poder ejecutarlo.

Listo se entendio mejor

Visualizar la configuración de ConfigMap como un fichero .yaml

Muy potente CONFIG MAPS

k create configmap haproxy --from-file=haproxy.cfg
kg configmaps haproxy -o yaml
k apply -f haproxy.yaml
kgp haproxy -o wide

k apply -f registry.yaml
curl http://192.168.172.175:5000
curl http://192.168.172.175/v2/_catalog

entendido 😃