เจคเฉเจธเฉเจ เจนเฉเจฒเจฎเจซเจพเจเจฒ เจฌเจพเจฐเฉ เจ
เจคเฉ เจเจธเจฆเฉ เจตเจฐเจคเฉเจ เจฆเฉเจเจ เจเจฆเจพเจนเจฐเจฃเจพเจ เจฌเจพเจฐเฉ เจชเฉเฉเจน เจธเจเจฆเฉ เจนเฉ
เจ เจธเฉเจ เจนเฉเจฒเจฎเจซเจพเจเจฒ เจตเจฟเฉฑเจ เจฐเจฟเจฒเฉเจเจผเจพเจ เจฆเจพ เจตเจฐเจฃเจจ เจเจฐเจจ เจฆเฉ เจเฉเจฐ-เจธเจชเฉฑเจธเจผเจ เจคเจฐเฉเจเจฟเจเจ เจจเจพเจฒ เจเจพเจฃเฉ เจนเฉเจตเจพเจเจเฉ
เจฎเฉฐเจจ เจฒเจ เจเจฟ เจธเจพเจกเฉ เจเฉเจฒ เจนเฉเจฒเจฎ เจเจพเจฐเจ เจฆเจพ เจเฉฑเจ เจชเฉเจ เจนเฉ (เจเจฆเจพเจนเจฐเจฃ เจฒเจ, เจเจ เจชเฉเจธเจเจเฉเจฐเฉเจธ เจ เจคเฉ เจเฉเจ เจฌเฉเจเจเจเจก เจเจชเจฒเฉเจเฉเจธเจผเจจ เจเจนเฉเจ) เจ เจคเฉ เจเจ เจตเจพเจคเจพเจตเจฐเจฃ (เจเจ เจเฉเจฌเจฐเจจเฉเจเจธ เจเจฒเฉฑเจธเจเจฐ, เจเจ เจจเฉเจฎเจธเจชเฉเจธ, เจเจพเจ เจฆเฉเจตเจพเจ เจตเจฟเฉฑเจเฉเจ เจเจ)เฅค เจ เจธเฉเจ เจนเฉเจฒเจฎเจซเจพเจเจฒ เจฒเฉเจเจฆเฉ เจนเจพเจ, เจฆเจธเจคเจพเจตเฉเจเจผเจพเจ เจจเฉเฉฐ เจชเฉเฉเจนเจฆเฉ เจนเจพเจ เจ เจคเฉ เจเจชเจฃเฉ เจตเจพเจคเจพเจตเจฐเจจ เจ เจคเฉ เจฐเฉเจฒเฉเจเจผเจพเจ เจฆเจพ เจตเจฐเจฃเจจ เจเจฐเจจเจพ เจธเจผเฉเจฐเฉ เจเจฐเจฆเฉ เจนเจพเจ:
.
โโโ envs
โ โโโ devel
โ โ โโโ values
โ โ โโโ backend.yaml
โ โ โโโ postgres.yaml
โ โโโ production
โ โโโ values
โ โโโ backend.yaml
โ โโโ postgres.yaml
โโโ helmfile.yaml
helmfile.yaml
environments:
devel:
production:
releases:
- name: postgres
labels:
app: postgres
wait: true
chart: stable/postgresql
version: 8.4.0
values:
- envs/{{ .Environment.Name }}/values/postgres.yaml
- name: backend
labels:
app: backend
wait: true
chart: private-helm-repo/backend
version: 1.0.5
needs:
- postgres
values:
- envs/{{ .Environment.Name }}/values/backend.yaml
เจ เจธเฉเจ 2 เจตเจพเจคเจพเจตเจฐเจฃเจพเจ เจฆเฉ เจจเจพเจฒ เจเจคเจฎ เจนเฉเจ: เจตเจฟเจตเฉเจ, เจฆเฉ เจเจคเจชเจพเจฆเจจ - เจนเจฐ เจเฉฑเจ เจนเฉเจฒเจฎ เจฐเฉเจฒเฉเจเจผ เจเจพเจฐเจ เจฒเจ เจเจธเจฆเฉ เจเจชเจฃเฉ เจฎเฉเฉฑเจฒ เจฐเฉฑเจเจฆเจพ เจนเฉเฅค เจ เจธเฉเจ เจเจนเจจเจพเจ เจจเฉเฉฐ เจเจธ เจคเจฐเฉเจนเจพเจ เจคเฉเจจเจพเจค เจเจฐเจพเจเจเฉ:
helmfile -n <namespace> -e <env> apply
เจตเฉฑเจ-เจตเฉฑเจ เจตเจพเจคเจพเจตเจฐเจฃ เจตเจฟเฉฑเจ เจนเฉเจฒเจฎ เจเจพเจฐเจ เจฆเฉ เจตเฉฑเจ-เจตเฉฑเจ เจธเฉฐเจธเจเจฐเจฃ
เจเฉ เจเฉ เจธเจพเจจเฉเฉฐ เจฌเฉเจเจเจเจก เจฆเฉ เจตเฉฑเจ-เจตเฉฑเจ เจธเฉฐเจธเจเจฐเจฃเจพเจ เจจเฉเฉฐ เจตเฉฑเจ-เจตเฉฑเจ เจตเจพเจคเจพเจตเจฐเจฃเจพเจ เจตเจฟเฉฑเจ เจฐเฉเจฒ เจเจเจ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ? เจฐเฉเจฒเฉเจเจผ เจธเฉฐเจธเจเจฐเจฃ เจจเฉเฉฐ เจชเฉเจฐเจพเจฎเฉเจเจฐเจพเจเจเจผ เจเจฟเจตเฉเจ เจเจฐเฉเจ? เจฆเฉเจเจฐเจพ เจเจชเจฒเจฌเจง เจตเจพเจคเจพเจตเจฐเจฃเจ เจฎเฉเฉฑเจฒ {{ .Values }}
helmfile.yaml
environments:
devel:
+ values:
+ - charts:
+ versions:
+ backend: 1.1.0
production:
+ values:
+ - charts:
+ versions:
+ backend: 1.0.5
...
- name: backend
labels:
app: backend
wait: true
chart: private-helm-repo/backend
- version: 1.0.5
+ version: {{ .Values.charts.versions.backend }}
...
เจตเฉฑเจ-เจตเฉฑเจ เจตเจพเจคเจพเจตเจฐเจฃ เจตเจฟเฉฑเจ เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจฆเจพ เจตเฉฑเจ-เจตเฉฑเจ เจธเฉเฉฑเจ
เจฌเจนเฉเจค เจตเจงเฉเจ, เจชเจฐ เจเฉ เจเฉ เจธเจพเจจเฉเฉฐ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉ production
เจชเฉเจธเจเจเฉเจฐเฉเจธ เจจเฉเฉฐ เจฐเฉเจฒ เจเจเจ เจเจฐเฉ, เจเจฟเจเจเจเจฟ เจ
เจธเฉเจ เจเจพเจฃเจฆเฉ เจนเจพเจ เจเจฟ เจธเจพเจจเฉเฉฐ เจกเจพเจเจพเจฌเฉเจธ เจจเฉเฉฐ k8s เจตเจฟเฉฑเจ เจงเฉฑเจเจฃ เจฆเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉ เจ
เจคเฉ เจตเจฟเจเจฐเฉ เจฒเจ เจธเจพเจกเฉ เจเฉเจฒ เจเฉฑเจ เจธเจผเจพเจจเจฆเจพเจฐ เจตเฉฑเจเจฐเจพ เจชเฉเจธเจเจเฉเจฐเฉเจธ เจเจฒเฉฑเจธเจเจฐ เจนเฉ? เจเจธ เจธเจฎเฉฑเจธเจฟเจ เจจเฉเฉฐ เจนเฉฑเจฒ เจเจฐเจจ เจฒเจ เจธเจพเจกเฉ เจเฉเจฒ เจฒเฉเจฌเจฒ เจนเจจ
helmfile -n <namespace> -e devel apply
helmfile -n <namespace> -e production -l app=backend apply
เจเจน เจฌเจนเฉเจค เจตเจงเฉเจ เจนเฉ, เจชเจฐ เจจเจฟเฉฑเจเฉ เจคเฉเจฐ 'เจคเฉ เจฎเฉเจ เจเจน เจตเจฐเจฃเจจ เจเจฐเจจเจพ เจชเจธเฉฐเจฆ เจเจฐเจฆเจพ เจนเจพเจ เจเจฟ เจตเจพเจคเจพเจตเจฐเจฃ เจตเจฟเฉฑเจ เจเจฟเจนเฉเฉเจเจ เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจจเฉเฉฐ เจฒเจพเจเจ เจเจฐเจจ เจตเจพเจฒเฉ เจเจฐเจเฉเจฎเฉเจเจเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจจเจนเฉเจ เจเจฐเจจเจพ เจนเฉ, เจชเจฐ เจตเจพเจคเจพเจตเจฐเจฃ เจฆเฉ เจตเจฐเจฃเจจ เจตเจฟเฉฑเจ. เจฎเฉเจ เจเฉ เจเจฐเจพเจ? เจคเฉเจธเฉเจ เจฐเฉเจฒเฉเจเจผ เจตเฉเจฐเจตเฉ เจจเฉเฉฐ เจเฉฑเจ เจตเฉฑเจเจฐเฉ เจซเฉเจฒเจกเจฐ เจตเจฟเฉฑเจ เจฐเฉฑเจ เจธเจเจฆเฉ เจนเฉ, เจตเจพเจคเจพเจตเจฐเจฃ เจฆเฉ เจตเจฐเจฃเจจ เจตเจฟเฉฑเจ เจฒเฉเฉเฉเจเจฆเฉเจเจ เจฐเฉเจฒเฉเจเจผเจพเจ เจฆเฉ เจเฉฑเจ เจธเฉเจเฉ เจฌเจฃเจพ เจธเจเจฆเฉ เจนเฉ เจ เจคเฉ เจฌเจพเจเฉ เจจเฉเฉฐ เจจเจเจผเจฐเจ เฉฐเจฆเจพเจเจผ เจเจฐเจฆเฉ เจนเฉเจ, เจธเจฟเจฐเจซ เจฒเฉเฉเฉเจเจฆเฉเจเจ เจฐเฉเจฒเฉเจเจผเจพเจ เจจเฉเฉฐ "เจชเจฟเจเจ เฉฑเจช" เจเจฐ เจธเจเจฆเฉ เจนเฉเฅค
.
โโโ envs
โ โโโ devel
โ โ โโโ values
โ โ โโโ backend.yaml
โ โ โโโ postgres.yaml
โ โโโ production
โ โโโ values
โ โโโ backend.yaml
โ โโโ postgres.yaml
+ โโโ releases
+ โ โโโ backend.yaml
+ โ โโโ postgres.yaml
โโโ helmfile.yaml
helmfile.yaml
environments:
devel:
values:
- charts:
versions:
backend: 1.1.0
- apps:
- postgres
- backend
production:
values:
- charts:
versions:
backend: 1.0.5
- apps:
- backend
- releases:
- - name: postgres
- labels:
- app: postgres
- wait: true
- chart: stable/postgresql
- version: 8.4.0
- values:
- - envs/{{ .Environment.Name }}/values/postgres.yaml
- - name: backend
- labels:
- app: backend
- wait: true
- chart: private-helm-repo/backend
- version: {{ .Values.charts.versions.backend }}
- needs:
- - postgres
- values:
- - envs/{{ .Environment.Name }}/values/backend.yaml
+ ---
+ bases:
+ {{- range .Values.apps }}
+ - releases/{{ . }}.yaml
+ {{- end }}
releases/postgres.yaml
releases:
- name: postgres
labels:
app: postgres
wait: true
chart: stable/postgresql
version: 8.4.0
values:
- envs/{{ .Environment.Name }}/values/postgres.yaml
releases/backend.yaml
releases:
- name: backend
labels:
app: backend
wait: true
chart: private-helm-repo/backend
version: {{ .Values.charts.versions.backend }}
needs:
- postgres
values:
- envs/{{ .Environment.Name }}/values/backend.yaml
เจจเฉเจ
เจตเจฐเจคเจฃ เจตเฉเจฒเฉ bases:
yaml เจตเจฟเจญเจพเจเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจเจพ เจเจผเจฐเฉเจฐเฉ เจนเฉ ---
, เจคเจพเจ เจเฉ เจคเฉเจธเฉเจ เจตเจพเจคเจพเจตเจฐเจจ เจคเฉเจ เจฎเฉเฉฑเจฒเจพเจ เจจเจพเจฒ เจฐเฉเจฒเฉเจเจผเจพเจ (เจ
เจคเฉ เจนเฉเจฐ เจญเจพเจเจพเจ, เจเจฟเจตเฉเจ เจเจฟ เจนเฉเจฒเจฎเจกเจฟเจซเจพเจฒเจเจธ) เจจเฉเฉฐ เจเฉเจชเจฒเฉเจ เจเจฐ เจธเจเฉ
เจเจธ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ, เจชเฉเจธเจเจเฉเจฐเฉเจธ เจฐเฉเจฒเฉเจเจผ เจจเฉเฉฐ เจเจคเจชเจพเจฆเจจ เจฆเฉ เจตเจฐเจฃเจจ เจตเจฟเฉฑเจ เจตเฉ เจธเจผเจพเจฎเจฒ เจจเจนเฉเจ เจเฉเจคเจพ เจเจพเจตเฉเจเจพเฅค เจฌเจนเฉเจค เจเจฐเจพเจฎ เจจเจพเจฒ!
เจฐเฉเจฒเฉเจเจผเจพเจ เจฒเจ เจเจตเจฐเจฐเจพเจเจกเฉเจฌเจฒ เจเจฒเฉเจฌเจฒ เจฎเฉเฉฑเจฒ
เจฌเฉเจธเจผเฉฑเจ, เจเจน เจฌเจนเฉเจค เจตเจงเฉเจ เจนเฉ เจเจฟ เจคเฉเจธเฉเจ เจนเจฐเฉเจ เจตเจพเจคเจพเจตเจฐเจฃ เจฒเจ เจนเฉเจฒเจฎ เจเจพเจฐเจ เจฒเจ เจฎเฉเฉฑเจฒ เจธเฉเฉฑเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ, เจชเจฐ เจเฉ เจนเฉเจตเฉเจเจพ เจเฉเจเจฐ เจธเจพเจกเฉ เจเฉเจฒ เจเจ เจตเจพเจคเจพเจตเจฐเจฃ เจตเจฐเจฃเจฟเจค เจนเจจ, เจ
เจคเฉ เจ
เจธเฉเจ เจเจพเจนเฉเฉฐเจฆเฉ เจนเจพเจ, เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจธเจพเจฐเจฟเจเจ เจฒเจ เจเฉฑเจเฉ เจเจฟเจนเจพ เจธเฉเฉฑเจ เจเจฐเจจเจพ affinity
, เจชเจฐ เจ
เจธเฉเจ เจเจธเจจเฉเฉฐ เจฎเฉเจฒ เจฐเฉเจช เจตเจฟเฉฑเจ เจเจพเจฐเจ เจตเจฟเฉฑเจ เจธเฉฐเจฐเจเจฟเจค เจจเจนเฉเจ เจเจฐเจจเจพ เจเจพเจนเฉเฉฐเจฆเฉ, เจเฉ เจเจฟ เจเจฐเจจเจฟเจชเจธ เจตเจฟเฉฑเจ เจธเจเฉเจฐ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเจจเฅค
เจเจธ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ, เจนเจฐเฉเจ เจฐเฉเจฒเฉเจเจผ เจฒเจ เจ เจธเฉเจ เจฎเฉเฉฑเจฒเจพเจ เจจเจพเจฒ 2 เจซเจพเจเจฒเจพเจ เจจเฉเฉฐ เจจเจฟเจธเจผเจเจฟเจค เจเจฐ เจธเจเจฆเฉ เจนเจพเจ: เจชเจนเจฟเจฒเฉ เจกเจฟเจซเฉเจฒเจ เจฎเฉเฉฑเจฒเจพเจ เจฆเฉ เจจเจพเจฒ, เจเฉ เจเจพเจฐเจ เจฆเฉ เจฎเฉเฉฑเจฒเจพเจ เจจเฉเฉฐ เจเฉเจฆ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเฉเจเฉ, เจ เจคเฉ เจฆเฉเจเฉ เจตเจพเจคเจพเจตเจฐเจฃ เจฒเจ เจฎเฉเฉฑเจฒเจพเจ เจฆเฉ เจจเจพเจฒ, เจเฉ เจฌเจฆเจฒเฉ เจตเจฟเฉฑเจ เจเจตเจฐเจฐเจพเจเจก เจนเฉ เจเจพเจตเฉเจเฉเฅค เจกเจฟเจซเจพเจฒเจ เจตเจพเจฒเฉเฅค
.
โโโ envs
+ โ โโโ default
+ โ โ โโโ values
+ โ โ โโโ backend.yaml
+ โ โ โโโ postgres.yaml
โ โโโ devel
โ โ โโโ values
โ โ โโโ backend.yaml
โ โ โโโ postgres.yaml
โ โโโ production
โ โโโ values
โ โโโ backend.yaml
โ โโโ postgres.yaml
โโโ releases
โ โโโ backend.yaml
โ โโโ postgres.yaml
โโโ helmfile.yaml
releases/backend.yaml
releases:
- name: backend
labels:
app: backend
wait: true
chart: private-helm-repo/backend
version: {{ .Values.charts.versions.backend }}
needs:
- postgres
values:
+ - envs/default/values/backend.yaml
- envs/{{ .Environment.Name }}/values/backend.yaml
envs/default/values/backend.yaml
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 1
podAffinityTerm:
labelSelector:
matchExpressions:
- key: app.kubernetes.io/name
operator: In
values:
- backend
topologyKey: "kubernetes.io/hostname"
เจตเจพเจคเจพเจตเจฐเจฃ เจชเฉฑเจงเจฐ 'เจคเฉ เจธเจพเจฐเฉ เจฐเฉเจฒเฉเจเจผเจพเจ เจฆเฉ เจนเฉเจฒเจฎ เจเจพเจฐเจ เจฒเจ เจเจฒเฉเจฌเจฒ เจฎเฉเฉฑเจฒเจพเจ เจจเฉเฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจเจฐเจจเจพ
เจฎเฉฐเจจ เจฒเจ เจเจฟ เจ
เจธเฉเจ เจเจ เจฐเฉเจฒเฉเจเจผเจพเจ เจตเจฟเฉฑเจ เจเจ เจชเฉเจฐเจตเฉเจธเจผ เจฌเจฃเจพเจเจเจฆเฉ เจนเจพเจ - เจ
เจธเฉเจ เจนเจฐเฉเจ เจเจพเจฐเจ เจฒเจ เจนเฉฑเจฅเฉเจ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจเจฐ เจธเจเจฆเฉ เจนเจพเจ hosts:
, เจชเจฐ เจธเจพเจกเฉ เจเฉเจธ เจตเจฟเฉฑเจ เจกเฉเจฎเฉเจจ เจเฉฑเจเฉ เจเจฟเจนเจพ เจนเฉ, เจคเจพเจ เจเจฟเจเจ เจจเจพ เจเจธเจจเฉเฉฐ เจเฉเจ เจเจฒเฉเจฌเจฒ เจตเฉเจฐเฉเจเจฌเจฒ เจตเจฟเฉฑเจ เจชเจพเจ เจ
เจคเฉ เจเจธเจฆเฉ เจฎเฉเฉฑเจฒ เจจเฉเฉฐ เจเจพเจฐเจ เจตเจฟเฉฑเจ เจฌเจฆเจฒ เจฆเจฟเจ? เจ
เจเจฟเจนเจพ เจเจฐเจจ เจฒเจ, เจฎเฉเฉฑเจฒเจพเจ เจตเจพเจฒเฉเจเจ เจซเจพเจเจฒเจพเจ เจเจฟเจจเฉเจนเจพเจ เจจเฉเฉฐ เจ
เจธเฉเจ เจชเฉเจฐเจพเจฎเฉเจเจฐเจพเจเจเจผ เจเจฐเจจเจพ เจเจพเจนเฉเฉฐเจฆเฉ เจนเจพเจ, เจเจนเจจเจพเจ เจเฉเจฒ เจเจเจธเจเฉเจเจธเจผเจจ เจนเฉเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเฉ .gotmpl
, เจคเจพเจ เจเจฟ เจนเฉเจฒเจฎเจซเจพเจเจฒ เจจเฉเฉฐ เจชเจคเจพ เจนเฉเจตเฉ เจเจฟ เจเจธเจจเฉเฉฐ เจเฉเจเจชเจฒเฉเจ เจเฉฐเจเจฃ เจฆเฉเจเจฐเจพ เจเจฒเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉเฅค
.
โโโ envs
โ โโโ default
โ โ โโโ values
- โ โ โโโ backend.yaml
- โ โ โโโ postgres.yaml
+ โ โ โโโ backend.yaml.gotmpl
+ โ โ โโโ postgres.yaml.gotmpl
โ โโโ devel
โ โ โโโ values
โ โ โโโ backend.yaml
โ โ โโโ postgres.yaml
โ โโโ production
โ โโโ values
โ โโโ backend.yaml
โ โโโ postgres.yaml
โโโ releases
โ โโโ backend.yaml
โ โโโ postgres.yaml
โโโ helmfile.yaml
helmfile.yaml
environments:
devel:
values:
- charts:
versions:
backend: 1.1.0
- apps:
- postgres
- backend
+ - global:
+ ingressDomain: k8s.devel.domain
production:
values:
- charts:
versions:
backend: 1.0.5
- apps:
- backend
+ - global:
+ ingressDomain: production.domain
---
bases:
{{- range .Values.apps }}
- releases/{{ . }}.yaml
{{- end }}
envs/default/values/backend.yaml.gotmpl
ingress:
enabled: true
paths:
- /api
hosts:
- {{ .Values.global.ingressDomain }}
envs/default/values/postgres.yaml.gotmpl
ingress:
enabled: true
paths:
- /
hosts:
- postgres.{{ .Values.global.ingressDomain }}
เจจเฉเจ
เจธเจชเฉฑเจธเจผเจ เจคเฉเจฐ 'เจคเฉ, เจชเฉเจธเจเจเฉเจฐเฉเจธ เจเจพเจฐเจ เจตเจฟเฉฑเจ เจฆเจพเจเจฒ เจนเฉเจฃเจพ เจฌเจนเฉเจค เจนเฉ เจธเจผเฉฑเจเฉ เจนเฉ, เจเจธเจฒเจ เจเจน เจฒเฉเจ เจธเจฟเจฐเจซเจผ เจเฉฑเจ เจเจฒเจพเจ เจตเจฟเฉฑเจ เจเฉฑเจ เจเฉเจฒเจพเจเจพเจฐ เจเจฆเจพเจนเจฐเจจ เจตเจเฉเจ เจฆเจฟเฉฑเจคเจพ เจเจฟเจ เจนเฉ เจ เจคเฉ เจธเจฟเจฐเจซเจผ เจชเฉเจฐเจตเฉเจธเจผ เจฆเจพ เจตเจฐเจฃเจจ เจเจฐเจจ เจฒเจ เจฒเฉเจ เจตเจฟเฉฑเจ เจเฉเจ เจจเจตเจพเจ เจฐเฉเจฒเฉเจเจผ เจชเฉเจธเจผ เจจเจพ เจเจฐเจจ เจฒเจเฅค
เจตเจพเจคเจพเจตเจฐเจฃ เจฎเฉเฉฑเจฒเจพเจ เจคเฉเจ เจญเฉเจฆ เจฌเจฆเจฒเจฃเจพ
เจเจชเจฐเฉเจเจค เจเจฆเจพเจนเจฐเจจ เจฆเฉ เจธเจฎเจพเจจเจคเจพ เจจเจพเจฒ, เจคเฉเจธเฉเจ เจเจจเจเฉเจฐเจฟเจชเจเจก เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจฌเจฆเจฒ เจธเจเจฆเฉ เจนเฉ
.
โโโ envs
โ โโโ default
โ โ โโโ values
โ โ โโโ backend.yaml
โ โ โโโ postgres.yaml
โ โโโ devel
โ โ โโโ values
โ โ โ โโโ backend.yaml
โ โ โ โโโ postgres.yaml
+ โ โ โโโ secrets.yaml
โ โโโ production
โ โโโ values
โ โ โโโ backend.yaml
โ โ โโโ postgres.yaml
+ โ โโโ secrets.yaml
โโโ releases
โ โโโ backend.yaml
โ โโโ postgres.yaml
โโโ helmfile.yaml
helmfile.yaml
environments:
devel:
values:
- charts:
versions:
backend: 1.1.0
- apps:
- postgres
- backend
- global:
ingressDomain: k8s.devel.domain
+ secrets:
+ - envs/devel/secrets.yaml
production:
values:
- charts:
versions:
backend: 1.0.5
- apps:
- backend
- global:
ingressDomain: production.domain
+ secrets:
+ - envs/production/secrets.yaml
---
bases:
{{- range .Values.apps }}
- releases/{{ . }}.yaml
{{- end }}
envs/devel/secrets.yaml
secrets:
elastic:
password: ENC[AES256_GCM,data:hjCB,iv:Z1P6/6xBJgJoKLJ0UUVfqZ80o4L84jvZfM+uH9gBelc=,tag:dGqQlCZnLdRAGoJSj63rBQ==,type:int]
...
envs/production/secrets.yaml
secrets:
elastic:
password: ENC[AES256_GCM,data:ZB/VpTFk8f0=,iv:EA//oT1Cb5wNFigTDOz3nA80qD9UwTjK5cpUwLnEXjs=,tag:hMdIUaqLRA8zuFBd82bz6A==,type:str]
...
envs/default/values/backend.yaml.gotmpl
elasticsearch:
host: elasticsearch
port: 9200
password: {{ .Values | getOrNil "secrets.elastic.password" | default "password" }}
envs/devel/values/backend.yaml
elasticsearch:
host: elastic-0.devel.domain
envs/production/values/backend.yaml
elasticsearch:
host: elastic-0.production.domain
เจจเฉเจ
เจคเจฐเฉเจเฉ เจจเจพเจฒ เจเจฐ เจเฉ, getOrNil
- เจนเฉเจฒเจฎเจซเจพเจเจฒ เจตเจฟเฉฑเจ เจเฉ เจเฉเจเจชเจฒเฉเจเจธ เจฒเจ เจเฉฑเจ เจตเจฟเจธเจผเฉเจธเจผ เจซเฉฐเจเจธเจผเจจ, เจเฉ เจเจฟ, เจญเจพเจตเฉเจ .Values.secrets
เจฎเฉเจเฉเจฆ เจจเจนเฉเจ เจนเฉเจตเฉเจเจพ, เจเฉเจ เจเจฒเจคเฉ เจจเจนเฉเจ เจธเฉเฉฑเจเฉเจเจพ, เจชเจฐ เจซเฉฐเจเจธเจผเจจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจจเจคเฉเจเฉ เจฆเฉ เจเจเจพเจเจผเจค เจฆเฉเจตเฉเจเจพ default
เจกเจฟเจซเจพเจฒเจ เจฎเฉเฉฑเจฒ เจฌเจฆเจฒเฉ
เจธเจฟเฉฑเจเจพ
เจตเจฐเจฃเจจ เจเฉเจคเฉเจเจ เจเฉเจเจผเจพเจ เจเจพเจซเจผเฉ เจธเจชเฉฑเจธเจผเจ เจเจพเจชเจฆเฉเจเจ เจนเจจ, เจชเจฐ เจนเฉเจฒเจฎเจซเจพเจเจฒ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ เจเจ เจตเจพเจคเจพเจตเจฐเจฃเจพเจ เจตเจฟเฉฑเจ เจคเฉเจจเจพเจคเฉ เจฆเฉ เจธเฉเจตเจฟเจงเจพเจเจจเจ เจตเจฐเจฃเจจ เจฌเจพเจฐเฉ เจเจพเจฃเจเจพเจฐเฉ เจฌเจนเฉเจค เจเฉฑเจ เจนเฉ, เจ เจคเฉ เจฎเฉเจ IaC (เจเจจเจซเจฐเจพเจธเจเจฐเฉฑเจเจเจฐ-เจเจเจผ-เจเฉเจก) เจจเฉเฉฐ เจชเจฟเจเจฐ เจเจฐเจฆเจพ เจนเจพเจ เจ เจคเฉ เจคเฉเจจเจพเจคเฉ เจธเจฅเจฟเจคเฉ เจฆเจพ เจธเจชเจธเจผเจ เจตเจฐเจฃเจจ เจเจฐเจจเจพ เจเจพเจนเฉเฉฐเจฆเจพ เจนเจพเจเฅค
เจ เฉฐเจค เจตเจฟเฉฑเจ, เจฎเฉเจ เจเจน เจเฉเฉเจจเจพ เจเจพเจนเจพเจเจเจพ เจเจฟ เจกเจฟเจซเฉเจฒเจ เจตเจพเจคเจพเจตเจฐเจฃ เจฒเจ เจตเฉเจฐเฉเจเจฌเจฒ, เจฌเจฆเจฒเฉ เจตเจฟเฉฑเจ, เจเฉฑเจ เจเจพเจธ เจฐเจจเจฐ เจฆเฉ OS เจฆเฉ เจตเจพเจคเจพเจตเจฐเจฃ เจตเฉเจฐเฉเจเจฌเจฒเจพเจ เจฆเฉ เจจเจพเจฒ เจชเฉเจฐเจพเจฎเฉเจเจฐเจพเจเจเจผ เจเฉเจคเฉ เจเจพ เจธเจเจฆเฉ เจนเจจ เจเจฟเจธ เจคเฉเจ เจคเฉเจจเจพเจคเฉ เจธเจผเฉเจฐเฉ เจเฉเจคเฉ เจเจพเจตเฉเจเฉ, เจ เจคเฉ เจเจธ เจคเจฐเฉเจนเจพเจ เจเจคเฉเจธเจผเฉเจฒ เจตเจพเจคเจพเจตเจฐเจฃ เจชเฉเจฐเจพเจชเจค เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉเฅค
helmfile.yaml
environments:
default:
values:
- global:
clusterDomain: {{ env "CLUSTER_DOMAIN" | default "cluster.local" }}
ingressDomain: {{ env "INGRESS_DOMAIN" }}
เจธเจฐเฉเจค: www.habr.com