Ce configurație este
Un ConfigMap este un obiect API folosit pentru a stoca date neconfidențiale
perechi cheie-valoare.Pod-urile pot consuma ConfigMaps ca variabile de mediu,
argumente din linia de comandă sau ca fișiere de configurare într-un volum.
Un ConfigMap vă permite să decuplați configurația specifică mediului
din imaginile containerului dvs., astfel încât aplicațiile dvs. să fie ușor
portabil.
Cu alte cuvinte când configurație este creat dintr-un fișier extern (cum ar fi cazul dvs.) sau din alte valori, serverul API va valida dacă totul este corect și apoi îl va salva în etcd. Acest lucru explică și motivele pentru care atunci când tu Editați | × ta configurație vezi întregul său context. Acest lucru se întâmplă pentru că configurație se citește din etcd, nu orice sursă externă.
Acesta este, de asemenea, unul dintre motivele pentru care nu este recomandat să stocați fișierele de salvare mari ca configurații sau secrete - va afecta performanța clusterului kubernetes deoarece toate obiectele clusterului sunt stocate în etcd.
Personalizați
Aceasta este una dintre modalitățile de a vă îndeplini cerințele de a rula o comandă la crearea/configurarea configurație pe baza fișierului din același director.
Este un instrument autonom pentru a personaliza obiectele Kubernetes printr-un fișier de personalizare.
Am creat un exemplu scurt și simplu pentru a arăta ideea:
$ copac
.
âââ aplicaţie.proprietăţi
âââ kustomization.yaml
0 directoare, 2 fișiere
$ cat kustomization.yaml
generatorOptions:
disableNameSuffixHash: true # acest indicator este folosit pentru a evita crearea unei noi configurații, în schimb va fi modificat când contextul fișierului este schimbat
configMapGenerator:
- nume: application-config
fisiere:
- aplicaţie.proprietăţi
$ cat application.properties
listen.url=localhost:9010
client.url=some_url:3000
Testați acest lucru, această comandă va fi doar reda configmap, nu o va crea încă:
$ kubectl kustomize application.settings/
apiVersion: v1
date:
aplicație.proprietăți: |
listen.url=localhost:9010
client.url=some_url:3000
fel: ConfigMap
metadate:
nume: application-config
Pasul final este să aplica aceasta:
$ kubectl aplica -k application.settings/
configmap/application-config creat
$ kubectl obține cm
NUME DATE Vârsta
application-config 1 23s
Scurtă explicație pentru comanda de mai sus:
Pentru a aplica acele Resurse, rulați kubectl apply cu --kustomize sau -k
steag.
Link-uri utile: