ConfigMap v Kubernetes

Obecne

ConfigMap je klíčový nástroj pro správu konfigurací v Kubernetes, umožňující snadné a flexibilní nasazení konfiguračních dat oddělených od aplikačního kódu. To zjednodušuje správu aplikací a zvyšuje jejich přenositelnost a konzistenci v různých prostředích.

ConfigMap je zdrojový typ v Kubernetes, který umožňuje ukládat konfigurační data ve formě klíč-hodnota. Tyto konfigurační informace pak mohou být použity uvnitř kontejnerových aplikací běžících v Kubernetes clusteru. ConfigMapy jsou užitečné pro oddělení konfiguračních dat od kódu aplikace, což umožňuje snadnější správu a aktualizaci konfigurací bez nutnosti změny nebo opětovného nasazení aplikací.

Použití ConfigMap

Vytvoření ConfigMap

ConfigMap může být vytvořena několika způsoby: použitím YAML souboru, příkazem kubectl create configmap nebo z datového souboru.

YAML Příklad

apiVersion: v1
kind: ConfigMap
metadata:
  name: example-config
data:
  my-key: my-value
  another-key: another-value

Příkazová řádka

kubectl create configmap example-config --from-literal=my-key=my-value --from-literal=another-key=another-value

Použití ConfigMap v podu

Nastavení proměnných prostředí z ConfigMap

apiVersion: v1
kind: Pod
metadata:
  name: mypod
spec:
  containers:
    - name: mycontainer
      image: myimage
      env:
        - name: MY_KEY
          valueFrom:
            configMapKeyRef:
              name: example-config
              key: my-key

Připojení ConfigMap jako svazek

apiVersion: v1
kind: Pod
metadata:
  name: mypod
spec:
  containers:
    - name: mycontainer
      image: myimage
      volumeMounts:
        - name: config-volume
          mountPath: /etc/config
  volumes:
    - name: config-volume
      configMap:
        name: example-config