3-njira kuphatikiza ku werf: kutumizidwa ku Kubernetes ndi Helm "pa steroids"
Zomwe ife (osati ife tokha) takhala tikudikirira kwa nthawi yayitali zidachitika: werf, chida chathu Open Source pomanga mapulogalamu ndikuwapereka ku Kubernetes, tsopano amathandizira kugwiritsa ntchito zosintha pogwiritsa ntchito njira zitatu zophatikizira! Kuphatikiza pa izi, ndizotheka kutengera zida za K3s zomwe zilipo kale kutulutsa Helm popanda kumanganso zinthuzi.
Ngati ili lalifupi kwambiri, ndiye timayika WERF_THREE_WAY_MERGE=enabled - timatumizidwa "monga mu kubectl apply", yogwirizana ndi kukhazikitsa kwa Helm 2 komwe kulipo komanso zochulukirapo.
Koma tiyeni tiyambire ndi chiphunzitsocho: ndi zigamba zotani za 3-way-merge, anthu adabwera bwanji ndi njira yopangira, ndipo chifukwa chiyani ali ofunikira munjira za CI / CD zokhala ndi maziko a Kubernetes? Ndipo zitatha izi, tiyeni tiwone zomwe 3-way-merge ili mu werf, ndi mitundu iti yomwe imagwiritsidwa ntchito mosakhazikika komanso momwe mungayendetsere.
Kodi 3-way-merge patch ndi chiyani?
Chifukwa chake, tiyeni tiyambe ndi ntchito yotulutsa zomwe zafotokozedwa mu YAML zikuwonekera ku Kubernetes.
Kuti mugwire ntchito ndi zothandizira, Kubernetes API imapereka ntchito zotsatirazi: pangani, pangani, sinthani ndikuchotsa. Zimaganiziridwa kuti ndi chithandizo chawo m'pofunika kupanga njira yabwino yopititsira patsogolo zinthu zamagulu. Bwanji?
kubectl imperative commands
Njira yoyamba yoyendetsera zinthu ku Kubernetes ndikugwiritsa ntchito malamulo ofunikira a kubectl kupanga, kusintha, ndikuchotsa zinthuzo. Mwachidule:
gulu kubectl run mutha kuyendetsa Deployment kapena Job:
kubectl run --generator=deployment/apps.v1 DEPLOYMENT_NAME --image=IMAGE
gulu kubectl scale - sinthani kuchuluka kwa zofananira:
minda yomwe inalipo kale mu mtundu womaliza womwe wagwiritsidwa ntchito ndipo zomwe sizinalipo mu mtundu womwe mukufuna zimakonzedwanso pogwiritsa ntchito chigamba;
madera omwe ali mumtundu wapano wa chinthu chomwe chimasiyana ndi mtundu womwe mukufuna wa chiwonetserochi amasinthidwa pogwiritsa ntchito chigambacho.
Ndi pa mfundo imeneyi kuti amapanga zigamba kubectl apply:
mawonekedwe omaliza a chiwonetserochi amasungidwa muzofotokozera za chinthucho,
target - yotengedwa pa fayilo ya YAML yotchulidwa,
ndemanga: gawoli lidawonekera mu werf pazotulutsa zingapo: mu njira ya alpha idakonzeka ndi mtundu v1.0.5-alpha.19, ndi njira ya beta - ndi v1.0.4-beta.20.
3-way-merge chigamba pazotulutsa zonse
Kuyambira pa Disembala 15, 2019, mitundu ya beta ndi alpha ya werf imayamba kugwiritsa ntchito zigamba za 3-way-merge mwachisawawa kuti zisinthe pazotulutsa zonse.
Ndikukhulupirira kuti pambuyo pa nkhaniyi zadziwika bwino zomwe zigamba za 3-way-merge ndi chifukwa chake zidabwera kwa iwo. Kuchokera pamalingaliro othandiza a chitukuko cha polojekiti ya werf, kukhazikitsidwa kwawo kunali sitepe ina yopititsa patsogolo kutumizidwa kwa Helm ngati. Tsopano mutha kuyiwala za zovuta ndi kalumikizidwe kasinthidwe, komwe kaΕ΅irikaΕ΅iri kanayamba mukamagwiritsa ntchito Helm 2. Nthawi yomweyo, chinthu chatsopano chothandizira kugwiritsa ntchito zida za Kubernetes zomwe zidatsitsidwa kale zidawonjezedwa pakumasulidwa kwa Helm.
Palinso zovuta ndi zovuta zomwe zimagwiritsidwa ntchito ngati Helm, monga kugwiritsa ntchito ma templates a Go, zomwe tidzapitiriza kuthana nazo.
Zambiri zokhudzana ndi njira zosinthira zida ndi kukhazikitsidwa zitha kupezekanso pa tsamba lolemba ili.
Mtsinje 3
Zoyenera kuzindikiridwa mwapadera kumasulidwa tsiku lina buku latsopano lalikulu la Helm - v3 - lomwe limagwiritsanso ntchito zigamba za 3-way-merge ndikuchotsa Tiller. Mtundu watsopano wa Helm umafunika kusamuka makhazikitsidwe omwe alipo kuti awasinthe kukhala mawonekedwe atsopano osungira.
Werf, kumbali yake, adasiya kugwiritsa ntchito Tiller, kusinthira ku 3-way-merge ndikuwonjezera. zambiri, pomwe ikugwirizana ndi kukhazikitsa kwa Helm 2 komwe kulipo (palibe zolembera zosamukira zomwe ziyenera kuchitidwa). Chifukwa chake, mpaka werf asinthira ku Helm 3, ogwiritsa ntchito ma werf samataya zabwino zazikulu za Helm 3 pa Helm 2 (werf ilinso nawo).
Komabe, kusintha kwa werf kupita ku Helm 3 codebase sikungapeweke ndipo zidzachitika posachedwa. Mwina izi zidzakhala werf 1.1 kapena werf 1.2 (pakadali pano, mtundu waukulu wa werf ndi 1.0; kuti mumve zambiri za chipangizo chosinthira werf, onani apa). Panthawi imeneyi, Helm 3 adzakhala ndi nthawi yokhazikika.