Puncte:1

Cum se conectează configurația la fișierul extern?

drapel ke

Cu aceasta putem crea o configurație legată de fișierul extern.

kubectl crea configmap database-config --from-file=database.properties

Dar când edităm yaml, acesta va arăta că conținutul complet al fișierului este aruncat acolo.

Există oricum să indicați doar un fișier din yaml, astfel încât să păstrez fișierul de proprietăți în același folder ca și configmap yaml și să apy folderul cu toate yaml-urile:

kubectl aplică -f folder_țintă\

Sugerați vă rog.

Puncte:0
drapel in

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.

Wytrzymały Wiktor avatar
drapel it
Salut @uday. Acesta [răspunde la întrebarea dvs.](https://stackoverflow.com/help/someone-answers)?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.