ืงืืืฆื
ืืืืืื ืืื ืืืื. ืืืชืืื ืืืืชื ื ืื ืืืื (ืื ื ื ืืื ืืืืืืช ืืื), ืืื ืขืืฉืื ืื ื ืชืืื ืืืืืืื ืืฉืืืืฉ ืืืื ืืืืืื ืืื. ืื ืืชื ืงืืจื ืืช ืื, ืืงืืื ืฉื ืืืืช ืืืฆืืื ืืื ืฉื Docker, ืืื ืช ืืช ืืืชืจืื ืืช ืฉื Kubernetes, ืืืคืืช ืืช ืืืื ืืืจืื ืืืชืจ ืงืืื ืขื Helm.
ืขื ืืืช, ืืจืืจ ืฉืืืง ืืืืืจืื ืงืฉืื ืืืชืจ ืืื ืฉืื ืฆืจืืืื ืืืืืช.
ืืืฆื ืืืฆืืจ ืกืืืืช ืืืืคื ืืืืืืื ืืขืช ืขืืืื?
ืกืื Kubernetes ืืื ืืฉืื ืืืืื ืฆืืื ืืคืชื/ืขืจื ืฉืืื ืืจืฆืื ื ืืืฉืชืืฉ ืืงืื ืฉืื. ืืื ืืืืืื ืืืืืช ืืืจืืืืช ืืืืืจ ืืืกื ื ืชืื ืื, ืกืืกืืืืช ืืืืจ ืืืงืืจืื ื ืืื ืืืื. ืขื ืืื ืฉืืืืฉ ืืกืืืืช, ืืชื ืืืฆืจ ืืคืจืื ืืจืืจื ืืื ืงืื ืืืืืจืืช, ืืืืคืฉืจ ืื ืืืชืืื ืืืฉืืช ืืงืืืช ืคืจืืกืืช ืฉืื ืืช ืืืื ืืฉื ืืช ืืช ืืกืืก ืืงืื.
ืืฆื ืฉืืื ืืื ืืืฉืจ ืฉื ื ืืืืืืื ืืืืืื ืืชืงืฉืจ ืืืืฆืขืืช ืืคืชื ืืฉืืชืฃ. ืืฃ ืืื ืืืืฅ ืืืฉืืื ืฆืจืื ืืืขืช ืืช ืืืคืชื ืืื, ืืืืืื ืฉืืื ืืืืขื ืืชืงืฉืืจืช ืืื ืืืื ืืชืื ืืืฉืืื.
ืขืืฉื ืกืืืืช
ืืืจื ืืื, ืืื ืืืฆืืจ ืกืื ืืืื ืืชื ืฆืจืื:
- ืชืืจ ืืช ืืกืื ืืงืืืฅ ืืขืจืืื;
- ืืืืืืจ ืืืชื ืืืืฉ ืืืืื ืืคืจืืกื;
- ืขืืื ืื ืืชืื ืืคืจืืกื/ืชืจืืื;
- ... ืจืืื!
ืืืจื ืืื ืื ื ืจืื ืืขืจื ืื:
apiVersion: v1
kind: Secret
metadata:
name: my-super-awesome-api-key
type: Opaque
stringData:
apiKey: {{ .Values.MyApiKeySecret | quote }}
ืกืื Kubernetes ืคืฉืื ืืืืฆืขืืช ืขืจืืื ื-values.yml
ืืื ื ื ืื ืฉืืชื ืื ืจืืฆื ืืฆืืื ืืช ืืกืื ืฉืื ืืงืืืฅ ืืขืจืืื.
ืืฉื ื ืืคืฉืจืืืืช ืจืืืช ืืืฉืจ ืืคืจืืกื ืืืจืฉืช ืืคืชื ืืฉืืชืฃ, ืืฉืจ ืืืื ืืืืืืฆืจ ืืืืื ืืืชืงื ื.
ืืืืืื ืฉื ืชืงืฉืืจืช ืืืืื ืืืืืื ืืขืื, ืื ืจืฆืื ืืฉืชืฃ ืืช ืืกืื ืืืืฅ ืืคืจืืกื. ืืื, ืจืฆืื ืืืื ืฉืืืื ืืืื ืื ืื ืื ืื ืืืฆืืจ ืกืื ืืืืคื ืืืืืืื ืืืื ืืฆืืื ืืืชื ืืฉืืจืืช.
ืืืื
Hooks ืืืคืฉืจืื ืื ืืืจืืฅ ืงืื ืืืงืืืืช ืกืคืฆืืคืืื ืืืืื ืชืืืื ืืืชืงื ื. ืืืชืื ืฉืืฉ ืขืืืืช ืชืฆืืจื ืฉืฆืจืื ืืืคืขืื ืืืืจ ืืืชืงื ื ืืจืืฉืื ื, ืื ืืืื ืฆืจืื ืืืฆืข ื ืืงืื ืืคื ื ืืืฆืืข ืขืืืื ืืืฉืื.
ืืื ืืคืชืืจ ืืช ืืืขืื ืฉืื ื ืฉื ืืืกืคืช ืืคืชื ืฉื ืืฆืจ ืืืืื ืืืชืงื ื, ืืื ืืจืื ืืชืงื ื ืื ืืืืืืืืื. ืืื ืืฉ ืืืืื: ืืชื ืื ืืืื ืืืฆืืจ ืืช ืืกืื ืืืืคื ืืืืืืื ืคืขื ืืืช ืืขืืืื. ืืืงืก ืืขืืื ืขื ืื ืขืืืื.
ืื ืืฆืจืช ืืช ืืกืื ืฉืื ืืืืชืงื ื ืืจืืฉืื ื ืฉืื ืขืืืื ืื ืืชืจืืฉื ืื ืชืคืกืืง ืืงืจืื, ืื ืืืชืงื ื ืืจืืฉ ืืขืืื ืื ืืฆืืื.
ืืื ืื ืืกืื ืืื ืืืง ืืขืืืื (ืืืื ืชืืื ื ืืืฉื ืฉืื ืืืืชื ืฉื ืืืืื ืืืชืงื ื), ืื ืืื ืฉืื ืืคืฉืจ ืืืฆืืจ ืื ืืจืื ืืชืงื ื ืฉืขืืื ืจืง ืคืขื ืืืช.
ืคืื ืงืฆืืืช
ืคืื ืงืฆืืืช ืืืื ืืืคืฉืจืืช ืื ืืืืกืืฃ ืจืืืื ืกืงืจืืคืืื ืฉืื ืื ืืชืกืจืืื ืืคืจืืกื ืฉืื.
apiVersion: v1
kind: Secret
metadata:
name: my-super-awesome-api-key
type: Opaque
stringData:
apiKey: {{ uuidv4 | quote }} #Generate a new UUID and quote it
ืืืืื ืื ืืจืื ืฉืืขืจื ืฉื ืกืื apiKey ืืืื ื-UUID ืืืืฉ ืฉื ืืฆืจ ืืืืื ืืืชืงื ื.
Helm ืืืื ืกืคืจืืืช ืชืืื ืืช ื ืจืืืช ืืืืช ืืืื ืคืช ืืช ืืชืืื ืืช ืืืืืืืืช ืฉื ืชืื ืืช GO ืืืช ืกืคืจืืืช ืืชืืื ืืช ืฉื Sprig ืืื ืืืฆืืจ ืคืจืืกืืช ืืืชืืืืช ืืืฉืืช.
ืคืื ืงืฆืืืช ืืืคืืฉ
ื ืืกืฃ ื- Helm 3.1
- ืืืืืง ืืช ืงืืืื ืฉื ืืฉืืืื;
- ืืืืืืจ ืืช ืืขืจื ืฉื ืืฉืื ืงืืื ืืฉืืืืฉ ืืืืืจ ืืืชืจ.
ืืืืฆืขืืช ืฉืชื ืืืืืืืช ืืืื, ื ืืื ืืืฆืืจ ืกืื ืื ืคืขืื ืฉื ืืฆืจ ืืืืคื ืืื ืื!
# 1. ะะฐะฟัะพัะธัั ัััะตััะฒะพะฒะฐะฝะธะต ัะตะบัะตัะฐ ะธ ะฒะตัะฝััั ะฒ ะฟะตัะตะผะตะฝะฝะพะน $secret
{{- $secret := (lookup "v1" "Secret" .Release.Namespace "some-awesome-secret" -}}
apiVersion: v1
kind: Secret
metadata:
name: some-awesome-secret
type: Opaque
# 2. ะัะปะธ ัะตะบัะตั ัััะตััะฒัะตั, ะฒะทััั ะตะณะพ ะทะฝะฐัะตะฝะธะต ะบะฐะบ apiKey (ัะตะบัะตั ะธัะฟะพะปัะทัะตั ะบะพะดะธัะพะฒะฐะฝะธะต Base64, ัะฐะบ ััะพ ะธัะฟะพะปัะทัะนัะต ะบะปัั "data")
{{ if $secret -}}
data:
apiKey: {{ $secret.data.apiKey }}
# 3. ะัะปะธ ัะตะบัะตั ะฝะต ัััะตััะฒัะตั โ ัะพะทะดะฐัั ะตะณะพ (ะฒ ััะพั ัะฐะท ะธัะฟะพะปัะทัะนัะต "stringData", ัะฐะบ ะบะฐะบ ะฑัะดะตั ะพะฑััะฝะพะต ะทะฝะฐัะตะฝะธะต)!
{{ else -}}
stringData:
apiKey: {{ uuidv4 | quote }}
{{ end }}
ืืื ืคืขื ืฉืขืืืื ืืืฉ ืืืื ืขื ืืฉืจืช, Helm ืืคืืง ืขืจื ืกืืื ืืืฉ (ืื ืืื ืขืืืื ืกืื) ืื ืืขืฉื ืฉืืืืฉ ืืืืจ ืืขืจื ืืงืืื.
ืืื ืืื!
ืื ืขืื ืืงืจืื ืื ืืฉื:
ืฉืืืฉ ืจืืืช ืฉื ืงื ื ืืืื ืืืืืืื ื-Kubernetes ืืืืฆื ืืืฉืชืืฉ ืืื ืืืขืืืืช .Kubernetes ืืจืื ืืคืืจืืืืืช ืขื ืชืื ืืช ืืืืฉืื .ืืขืจืืฅ ืฉืื ื Around Kubernetes ืืืืืจื .
ืืงืืจ: www.habr.com