
timu za momwe mungapangire zokha zinsinsi za Helm pokonzanso. Zotsatirazi ndi mawu ochokera kwa wolemba nkhaniyi - director director a Intoware, kampani yomwe imapanga mayankho a SaaS.
Zotengera ndizozizira. Poyamba ndinali anti-container (ndikuchita manyazi kuvomereza), koma tsopano ndikuthandizira kwathunthu kugwiritsa ntchito lusoli. Ngati mukuwerenga izi, mwachiyembekezo mwayenda bwino panyanja za Docker, mwazindikira zabwino za Kubernetes, ndikupangitsa moyo wanu kukhala wosavuta ndi Helm.
Komabe, zinthu zina ndizovuta kwambiri kuposa momwe ziyenera kukhalira.
Momwe mungapangire zinsinsi zokha mukakonzanso?
Chinsinsi cha Kubernetes ndi chida chomwe chili ndi makiyi / mawiri amtengo wapatali omwe mukufuna kugwiritsa ntchito pamakhodi anu. Izi zitha kukhala zingwe zolumikizirana ndi database, mapasiwedi a imelo, ndi zina zotero. Pogwiritsa ntchito zinsinsi, mumapanga kulekanitsa bwino pakati pa ma code ndi zoikamo, kukulolani kuti musinthe mosavuta ma deployments osiyanasiyana popanda kusintha codebase.
Chochitika chodziwika bwino ndi pamene ma module awiri ayenera kulumikizana pogwiritsa ntchito kiyi wamba. Palibe amene ali kunja kwa gululo ayenera kudziwa kiyi iyi, chifukwa cholinga chake ndi kulumikizana pakati pa gulu.
Kupanga zinsinsi
Nthawi zambiri, kuti mupange chinsinsi ku Helm muyenera:
- fotokozani chinsinsi mu fayilo yamtengo wapatali;
- fotokozeraninso panthawi yotumiza;
- tchulani izo mkati mwa kutumiza / pod;
- ... phindu!
Nthawi zambiri zimawoneka motere:
apiVersion: v1
kind: Secret
metadata:
name: my-super-awesome-api-key
type: Opaque
stringData:
apiKey: {{ .Values.MyApiKeySecret | quote }}
Chinsinsi chosavuta cha Kubernetes chogwiritsa ntchito mfundo zochokera ku values.yml
Koma tinene kuti simukufuna kufotokoza chinsinsi chanu mufayilo yamakhalidwe.
Pali zosankha zambiri pamene kutumizidwa kumafuna kiyi yogawana, yomwe iyenera kupangidwa panthawi ya kukhazikitsa.
Muchitsanzo choyankhulirana cha module-to-module pamwambapa, sikoyenera kugawana chinsinsi kunja kwa kutumizidwa. Chifukwa chake, ndizofunikira kwambiri kuti Helm ikhale ndi njira zopangira chinsinsi popanda kufotokoza mwachindunji.
Ndoko
Hooks amakulolani kuti muthamangitse kachidindo pamalo enaake panthawi yoyika. Pakhoza kukhala ntchito yokonzekera yomwe iyenera kuyendetsedwa pambuyo pa kukhazikitsa koyamba, kapena mwinamwake kuyeretsa kuyenera kuchitidwa musanapange zosintha zilizonse.
Kuti tithane ndi vuto lathu lowonjezera kiyi yomwe idapangidwa panthawi yoyika, ma hook oyikapo ndi abwino. Koma pali chogwira: simungathe kupanga chinsinsi kamodzi pakusintha. Hooks idzagwira ntchito pazosintha zilizonse.
Ngati mwapanga chinsinsi chanu ndipo kuyika kwanu koyamba sikunachitike ndiye siyani kuwerenga, mbedza yoyikapo idzakhala yabwino kwa inu.
Koma ngati chinsinsi ndi gawo la zosintha (mwina chinthu chatsopano chomwe sichinalipo panthawi ya kukhazikitsa), ndiye kuti ndizochititsa manyazi kuti simungathe kupanga mbedza yokonzekera yomwe imagwira ntchito kamodzi kokha.
Ntchito
Ntchito za Helm zimakulolani kuti muwonjezere zolemba zosiyanasiyana pamakalata anu otumizira.
apiVersion: v1
kind: Secret
metadata:
name: my-super-awesome-api-key
type: Opaque
stringData:
apiKey: {{ uuidv4 | quote }} #Generate a new UUID and quote it
Chitsanzochi chikuwonetsa kuti mtengo wachinsinsi wa apiKey udzakhala UUID watsopano wopangidwa panthawi yoyika.
Helm imaphatikizanso laibulale yayikulu kwambiri yomwe imathandizira mawonekedwe odabwitsa a GO template ndi laibulale ya Sprig kuti ipange zotengera.
Kufufuza ntchito
Wowonjezera mu Helm 3.1 , zomwe zimakulolani kuti mupemphe kutumizidwa komwe kulipo ndi:
- fufuzani kukhalapo kwa chuma;
- bwezerani mtengo wa chinthu chomwe chilipo kuti mudzagwiritse ntchito m'tsogolo.
Pogwiritsa ntchito kuthekera konseku, titha kupanga chinsinsi chanthawi imodzi, chopangidwa mwamphamvu!
# 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 }}
Nthawi zonse pamene kusintha kwatsopano kukugwiritsidwa ntchito pa seva, Helm ikhoza kupanga mtengo watsopano wachinsinsi (ngati palibe chinsinsi) kapena kugwiritsanso ntchito mtengo womwe ulipo.
Kupambana!
Chinanso choti muwerenge pamutuwu:
- .
- .
- .
Source: www.habr.com
