Ndondomeko Zoyendetsera Ntchito. Machitidwe ambiri a Git mwachibadwa amathandizira ndondomeko za nthambi ndi nthambi-mwachitsanzo, zopempha zokhazokha zomwe zingasinthire masters, ndipo zosintha ziyenera kuwunikiridwa ndikuvomerezedwa ndi membala wina wa gulu. Monga momwe zilili ndi ulamuliro wofikira, ndondomeko zomwezo zimagwiranso ntchito pazosintha zotumizira.
Monga mukuwonera, pali zabwino zambiri panjira ya GitOps. M'chaka chatha, njira ziwiri zatchuka kwambiri. Imodzi ndi yokhazikika, ina ndi kukoka. Tisanawayang'ane, tiyeni tiwone kaye momwe ma Kubernetes amawonekera.
Njira Zotumizira
M'zaka zaposachedwa, njira ndi zida zosiyanasiyana zotumizira zidakhazikitsidwa ku Kubernetes:
Kutengera ma tempulo aku Kubernetes/Kustomize. Iyi ndiye njira yosavuta yotumizira mapulogalamu pa Kubernetes. Wopanga mapulogalamu amapanga mafayilo oyambira a YAML ndikuwagwiritsa ntchito. Kuchotsa nthawi zonse kulembanso ma tempuleti omwewo, Kustomize idapangidwa (imasintha ma tempuleti a Kubernetes kukhala ma module). Zindikirani. transl.: Kustomize yaphatikizidwa mu kubectl ndi kutulutsidwa kwa Kubernetes 1.14.
Ma chart a Helm. Ma chart a helm amakulolani kuti mupange ma templates, zotengera za init, sidecars, ndi zina zotere, zomwe zimagwiritsidwa ntchito poyika mapulogalamu ndi njira zosinthira makonda kuposa momwe amapangira ma template. Njirayi imachokera pamafayilo a YAML a template. Helm imawadzaza ndi magawo osiyanasiyana kenako imawatumiza ku Tiller, gawo lamagulu lomwe limawatumiza kumaguluwo ndikulola zosintha ndi kubweza. Chofunikira ndichakuti Helm imangoyika zomwe mukufuna m'matemplate ndikuzigwiritsa ntchito mofanana ndi momwe zimachitikira pachikhalidwe. (Werengani zambiri za momwe zonsezi zimagwirira ntchito komanso momwe mungagwiritsire ntchito m'nkhani yathu nkhani ndi Helm - pafupifupi. transl.). Pali mitundu ingapo ya ma chart okonzeka a Helm omwe ali ndi ntchito zosiyanasiyana.
Zida Zina. Pali zida zina zambiri. Zomwe onse amafanana ndikuti amasintha mafayilo a template kukhala mafayilo a YAML owerengeka a Kubernetes ndiye kuwagwiritsa ntchito.
Pantchito yathu, timagwiritsa ntchito ma chart a Helm pazida zofunika (popeza ali ndi zinthu zambiri zokonzeka kale, zomwe zimapangitsa moyo kukhala wosavuta) komanso mafayilo "oyera" a Kubernetes YAML oti titumizire zomwe tikufuna.
Kokani & Kankhani
Mu imodzi mwazolemba zanga zaposachedwa zabulogu, ndidayambitsa chida Weave Flux, zomwe zimakulolani kuti mupereke ma templates kumalo osungirako a Git ndikusintha zotumizidwa pambuyo pa kudzipereka kulikonse kapena kukankhira chidebecho. Zomwe ndakumana nazo zikuwonetsa kuti chida ichi ndi chimodzi mwazinthu zazikulu zolimbikitsira njira yokoka, choncho nthawi zambiri ndimatchula. Ngati mukufuna kudziwa zambiri za momwe mungagwiritsire ntchito, apa ulalo ku nkhani.
Zida zokoka zitha kugawidwa m'malo osiyanasiyana okhala ndi nkhokwe zosiyanasiyana za Git ndi zilolezo. Chifukwa cha ichi, chitsanzo cha multitenant chingagwiritsidwe ntchito. Mwachitsanzo, gulu A lingagwiritse ntchito dzina la A, gulu B lingagwiritse ntchito malo a mayina B, ndipo gulu la zomangamanga lingagwiritse ntchito malo padziko lonse lapansi.
Monga lamulo, zidazo ndizopepuka kwambiri.
Kuphatikiza ndi zida monga woyendetsa Zinsinsi Zosindikizidwa za Bitnami, zinsinsi zitha kusungidwa zobisika munkhokwe ya Git ndikubwezeredwa mkati mwa tsango.
Palibe kulumikizana ndi mapaipi a CD popeza kutumizidwa kumachitika mkati mwa gulu.
ΠΠΈΠ½ΡΡΡ:
Kuwongolera zinsinsi zotumizira kuchokera ku ma chart a Helm ndikovuta kwambiri kuposa nthawi zonse, popeza zimayamba kupangidwa mwanjira ya, titi, zinsinsi zosindikizidwa, kenako zimachotsedwa ndi wogwiritsa ntchito mkati, ndipo zitatha izi zimapezeka ku chida chokokera. Kenako mutha kuyendetsa kumasulidwa ku Helm ndi zomwe zili muzinsinsi zomwe zayikidwa kale. Njira yosavuta ndiyo kupanga chinsinsi ndi mfundo zonse za Helm zomwe zimagwiritsidwa ntchito potumiza, kuzilemba ndikuzipereka kwa Git.
Munjira yokankhira, makina akunja (makamaka mapaipi a CD) amayambitsa zotumiza ku gululo pambuyo podzipereka kumalo osungira a Git kapena ngati mapaipi am'mbuyomu a CI apambana. Mwa njira iyi, dongosololi limakhala ndi mwayi wopita kumagulu.
ΠΠ»ΡΡΡ:
Chitetezo chimatsimikiziridwa ndi malo a Git ndikumanga mapaipi.
Kutumiza ma chart a Helm ndikosavuta ndipo kumathandizira mapulagini a Helm.
Mtundu wokankhira wozikidwa pa GitLab CI ndiwoyenera kutulutsa mapulogalamu pogwiritsa ntchito ma chart a Helm. Pa nthawi yomweyi, kutulutsidwa kwa kutumizidwa mkati mwa mapaipi kumayang'aniridwa pogwiritsa ntchito chida werf. Mwa njira, mu gawo la polojekiti yathuyi, tidamva "GitOps" nthawi zonse tikamakambirana za zovuta zamainjiniya a DevOps pamalo athu a KubeCon Europe'19.