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: