He aha te GitOps?

Tuhipoka. whakamaori.: Whai muri i te panuitanga tata nei rauemi mo nga tikanga kume me te pana i roto i te GitOps, i kite matou i te hiahia ki tenei tauira i te nuinga, engari he iti noa nga whakaputanga reo Ruhia mo tenei kaupapa (kare noa he korero mo Habré). No reira, e koa ana matou ki te tuku atu ki a koutou he whakamaoritanga o tetahi atu tuhinga - ahakoa tata ki te kotahi tau ki muri! — mai i Weaveworks, na te upoko i hanga te kupu "GitOps." Ka whakamāramahia e te tuhinga te ngako o te huarahi me nga rereketanga nui mai i nga huarahi o mua.

He tau ki muri ka whakaputa matou whakataki ki GitOps. I tera wa, i korero matou me pehea i whakarewahia e te roopu Weaveworks tetahi SaaS i runga katoa i nga Kubernetes me te whakawhanake i tetahi huinga o nga whakaritenga pai mo te tuku, te whakahaere, me te aroturuki i roto i te taiao taketake kapua.

Ko te tuhinga i puta he rongonui. I timata etahi atu tangata ki te korero mo GitOps ka timata ki te whakaputa taputapu hou mo git, whanaketanga, mea ngaro, mahi, te whakauru tonu me etahi atu. I puta mai i to maatau paetukutuku he maha nui nga whakaputanga me nga keehi whakamahi a GitOps. Engari he patai tonu etahi. He pehea te rereke o te tauira ki te tauira tawhito? hanganga hei waehere me te tuku tonu (te tuku tonu)? Me whakamahi nga Kubernetes?

Kaore i roa ka mohio matou ka hiahiatia he whakaahuatanga hou, e tuku ana:

  1. He maha nga tauira me nga korero;
  2. Whakamaramatanga motuhake o GitOps;
  3. Whakataurite ki te tuku tuku iho tonu.

I roto i tenei tuhinga kua whakamatau matou ki te korero i enei kaupapa katoa. Ka whakaratohia he korero whakataki hou ki GitOps me tetahi kaiwhakawhanake me te tirohanga CI/CD. Ka aro nui matou ki nga Kubernetes, ahakoa ka taea te whaanui te tauira.

Tutaki ki a GitOps

Whakaarohia a Alice. Ka whakahaerehia e ia nga Inihua Whānau, e tuku inihua hauora, motuka, kaainga me te haerenga ki nga tangata e tino pukumahi ana ki te mohio ki nga ahuatanga o nga kirimana. I timata tana pakihi hei kaupapa taha i te wa e mahi ana a Alice i te peeke hei kaiputaiao raraunga. I tetahi ra ka mohio ia ka taea e ia te whakamahi i nga huringa rorohiko matatau kia pai ake ai te tātari raraunga me te whakatakoto i nga putea inihua. I putea e nga kaipupuri moni te kaupapa, a inaianei ka nui atu i te $20 miriona tana kamupene i te tau, a kei te tere haere. I tenei wa, 180 nga tangata e mahi ana ki nga momo tuunga. Kei roto i tenei ko te roopu hangarau e whakawhanake ana, e pupuri ana i te paetukutuku, i te papaa raraunga, me te tātari i te turanga kaihoko. Ko te roopu 60 nga tangata kei te arahihia e Bob, te kaiwhakahaere hangarau o te kamupene.

Ka tukuna e te roopu a Bob nga punaha whakaputa ki te kapua. Ko o raatau tono matua kei runga i te GKE, ma te whakamahi i nga Kubernetes i runga i a Google Cloud. I tua atu, ka whakamahia e ratou nga momo raraunga me nga taputapu tātaritanga i roto i a raatau mahi.

Karekau te Inihua Whānau i haere ki te whakamahi ipu, engari ka mau ki te hikaka o Docker. Kaore i roa ka kitea e te kamupene na GKE i ngawari me te ngawari ki te tuku i nga tautau hei whakamatautau i nga ahuatanga hou. I whakauruhia a Jenkins mo CI me Quay ki te whakarite i te rehita ipu, i tuhia nga tuhinga mo Jenkins i pana nga ipu hou me nga whirihoranga ki te GKE.

Kua pahemo etahi wa. I pouri a Alice raua ko Bob mo te mahi o ta raua huarahi i whiriwhiria me tona paanga ki te pakihi. Ko te whakaurunga o nga ipu kaore i pai ake te hua mai i ta te roopu i tumanako ai. I etahi wa ka pakaru nga tukunga, a kaore i te maarama mena ko nga huringa waehere te he. He uaua hoki ki te whai i nga huringa whirihora. I te nuinga o nga wa me hanga he kahui hou me te neke tono ki reira, na te mea koinei te huarahi ngawari ki te whakakore i te raru kua puta mai te punaha. I mataku a Alice kei kino ake te ahuatanga i te wa i whakawhanakehia ai te tono (i tua atu, he kaupapa hou e hangai ana i runga i te ako miihini). I whakaaunoatia e Bob te nuinga o nga mahi, a, kaore i te marama he aha te paipa i noho puhoi tonu, kaore i pai te awhata, me te wawaotanga a-ringa i ia wa?

Na ka ako ratou mo GitOps. I puta mai ko tenei whakatau ko te mea e tika ana kia ahu whakamua.

Kua rongo a Alice raua ko Bob mo Git, DevOps, me nga hanganga hei rerengamahi waehere mo nga tau. He aha te mea ahurei mo GitOps ko tana kawe mai i te huinga o nga mahi tino pai—he mea tuturu me te tikanga—mo te whakatinana i enei whakaaro i roto i te horopaki o Kubernetes. Ko tenei kaupapa whakatika tonu, tae atu ki roto rangitaki Weaveworks.

Ka whakatauhia e te Inihua Whānau ki te whakatinana i a GitOps. He tauira mahi aunoa a te kamupene e hototahi ana ki a Kubernetes me te whakakotahi tere me pūmautangano te mea ratou:

  • i kitea e rua nga hua o te kapa kaore he tangata e porangi ana;
  • ka mutu te mahi tuhinga. Engari, ka taea e ratou te aro inaianei ki nga ahuatanga hou me te whakapai ake i nga tikanga miihini - hei tauira, te whakauru i nga riipene canary me te whakapai ake i nga whakamatautau;
  • kua whakapai ake matou i te tikanga tuku kia kore ai e pakaru;
  • i whai waahi ki te whakahoki mai i nga tukunga i muri i nga ngoikoretanga o te waahanga kaore he wawaotanga a-ringa;
  • hokona whakamahiaоKa nui ake te maia ki nga punaha tuku. I kitea e Alice raua ko Bob ka taea e raua te wehewehe i te roopu ki nga roopu ratonga miihini e mahi whakarara ana;
  • ka taea te whakarereke i te 30-50 ki te kaupapa i ia ra ma te kaha o ia roopu me te whakamatau i nga tikanga hou;
  • he ngawari ki te kukume i nga kaiwhakawhanake hou ki te kaupapa, e whai waahi ana ki te whakaputa i nga whakahoutanga ki te whakaputa ma te whakamahi i nga tono kume i roto i etahi haora;
  • ngawari ki te tuku i te arotake i roto i te anga o SOC2 (mo te hanganga ture o nga kaiwhakarato ratonga me nga whakaritenga mo te whakahaere raraunga haumaru; panui atu, hei tauira, konei — āhua. whakawhiti.).

He aha te mea i tupu?

E rua nga mea a GitOps:

  1. Tauira whakahaere mo Kubernetes me te kapua taketake. Ka whakaratohia he huinga o nga mahi pai mo te tohatoha, te whakahaere, me te aro turuki i nga kohinga me nga tono kua oti te whakamaarama. He whakamārama huatau i te ahua kotahi kiriata i Ko Luis Faceira:
  2. Ko te huarahi ki te hanga i tetahi taiao whakahaere tono-a-kaiwhakawhanake. Ka hoatu e matou te rerengamahi Git ki nga mahi me te whanaketanga. Kia mahara ko tenei ehara i te mea mo te pana a Git anake, engari mo te whakarite i te huinga katoa o nga taputapu CI/CD me UI/UX.

He kupu torutoru mo Git

Mena kaore koe i te mohio ki nga punaha whakahaere putanga me nga rerenga mahi-a-Git, ka tino taunaki matou ki te ako mo enei. Ko te mahi me nga manga me nga tono toia ka rite ki te makutu pango i te tuatahi, engari he pai te whakapau kaha. I konei tuhinga pai ki te timata.

Me pehea te mahi a Kubernetes

I roto i ta maatau korero, i huri a Alice raua ko Bob ki GitOps i muri i te mahi tahi me Kubernetes mo etahi wa. Ae, he hononga tata a GitOps ki a Kubernetes - he tauira whakahaere mo nga hanganga me nga tono e pa ana ki a Kubernetes.

He aha ta Kubernetes e hoatu ki nga kaiwhakamahi?

Anei etahi ahuatanga matua:

  1. I roto i te tauira Kubernetes, ka taea te whakaahua i nga mea katoa i roto i te ahua korero.
  2. Ko te tūmau API Kubernetes te tango i tenei whakapuakanga hei whakaurunga ka ngana tonu ki te kawe mai i te tautau ki roto i te ahua e whakaahuatia ana i roto i te whakapuakanga.
  3. He ranea nga whakapuakanga hei whakaahua me te whakahaere i te tini o nga momo taumahatanga mahi—“tono.”
  4. Ko te mutunga, ka puta nga huringa ki te tono me te roopu na:
    • nga huringa o nga whakaahua ipu;
    • nga huringa ki te korero whakapuakanga;
    • he hapa i roto i te taiao - hei tauira, te tukinga ipu.

Nga Mahinga Hurihuri Nui a Kubernetes

Ina whakarereketia e te kaiwhakahaere nga whirihoranga, ka tukuna e te Kaihautu Kubernetes ki te tautau i te mea e rite ana tona ahua. e kore e tata ki te whirihoranga hou. Ka mahi tenei tauira mo tetahi rauemi Kubernetes, ka taea te whakawhanui me nga Whakaritenga Rauemi Ritenga (CRDs). No reira, ko nga tukunga a Kubernetes nga ahuatanga whakamiharo e whai ake nei:

  • Aunoa: Ko nga whakahoutanga a Kubernetes e whakarato ana i tetahi tikanga ki te whakaaunoa i te tukanga o te tono huringa ma te ataahua me te wa tika.
  • Hurihanga: Ka ngana tonu a Kubernetes ki nga whakahou kia angitu ra ano.
  • Te ngoikoretanga: Ko nga tono honohono ka puta he hua kotahi.
  • Whakatakotoranga: Ina rawaka nga rauemi, ka whakawhirinaki te ahua o te kahui kua whakahoutia ki te ahua e hiahiatia ana.

Me pehea te mahi a GitOps

Kua nui ta matou ako mo nga Kubernetes hei whakamarama me pehea te mahi a GitOps.

Me hoki ano ki nga roopu ratonga miihini a Family Insurance. He aha te tikanga me mahi ratou? Titiro ki te rarangi kei raro nei (mehemea he ahua ke, he tauhou ranei etahi mea kei roto, tena koa noho mai ki te whakahee ka noho ki a matou). He tauira noa enei o nga rerenga mahi a Jenkins. He maha atu nga tukanga i te wa e mahi tahi ana me etahi atu taputapu.

Ko te mea nui ka kite tatou ka mutu ia whakahou me nga huringa ki nga konae whirihoranga me nga putunga Git. Ko enei huringa ki a Git ka whakahouhia e te "GitOps operator" te tautau:

1.Tukanga mahi: "Hanga Jenkins - peka matua".
Rārangi tūmahi:

  • Ka pana a Jenkins i nga whakaahua kua tohua ki Quay;
  • Ka pana a Jenkins i te whirihora me te Helm tūtohi ki te peere rokiroki matua;
  • Ko te mahinga kapua ka kape i te whirihora me nga tūtohi mai i te peere rokiroki matua ki te putunga matua Git;
  • Ka whakahouhia e te kaiwhakahaere GitOps te kohinga.

2. Hangaia a Jenkins - te tuku, te peka wera ranei:

  • Ka pana a Jenkins i nga whakaahua kaore i tohua ki Quay;
  • Ka pana a Jenkins i te whirihora me te Helm tūtohi ki te peere rokiroki mahi;
  • Ko te mahinga kapua ka kape i te whirihora me nga tūtohi mai i te peere rokiroki mahi ki te putunga putunga Git;
  • Ka whakahouhia e te kaiwhakahaere GitOps te kohinga.

3. Te hanga a Jenkins - te whakawhanake, te whakaatu peka ranei:

  • Ka pana a Jenkins i nga whakaahua kaore i tohua ki Quay;
  • Ka pana a Jenkins i te whirihora me nga tūtohi Helm ki te peere rokiroki whakawhanake;
  • Ko te mahinga kapua ka kape i te whirihora me nga tūtohi mai i te peere rokiroki whakawhanake ki te putunga whakawhanake Git;
  • Ka whakahouhia e te kaiwhakahaere GitOps te kohinga.

4. Te taapiri i tetahi kaihoko hou:

  • Ka karanga te kaiwhakahaere, kaiwhakahaere ranei (LCM/ops) ki a Gradle ki te tuku tuatahi me te whirihora i nga taurite kawenga whatunga (NLBs);
  • Ka mahia e te LCM/ops he whirihora hou hei whakarite i te tukunga mo nga whakahou;
  • Ka whakahouhia e te kaiwhakahaere GitOps te kohinga.

Whakaahuatanga poto mo GitOps

  1. Whakaahuahia te ahua e hiahiatia ana o te punaha katoa ma te whakamahi i nga korero korero mo ia taiao (i roto i ta maatau korero, ka tautuhia e te roopu a Bob te whirihoranga punaha katoa i Git).
    • Ko te putunga Git te puna kotahi o te pono mo te ahua e hiahiatia ana o te punaha katoa.
    • Ko nga huringa katoa ki te ahua e hiahiatia ana ka mahia ma te commits i Git.
    • Ka kitea ano nga tawhā tautau e hiahiatia ana i roto i te tautau. Ma tenei ka taea e tatou te whakatau mena ka rite ranei (ka hono, ūngutungutu) rereke ranei (rereke, rereke) nga ahua e hiahiatia ana, e kitea ana.
  2. Mena he rereke nga ahuatanga e hiahiatia ana me nga ahuatanga e kitea ana, na:
    • He tikanga whakakotahi ka tukutahi aunoa i te whaainga me nga ahuatanga kua kitea. I roto i te roopu, ka mahia e Kubernetes tenei.
    • Ka timata tonu te mahi me te matohi "whakarereke".
    • Whai muri i etahi wa ka taea te whirihora, ka tukuna he matohi "rereke" mena he rereke nga kawanatanga.
  3. Ma tenei ara, ko nga mahi katoa i roto i te Git ka puta he whakahōutanga manatoko me te whakamohio ki te tautau.
    • Ko te hurihanga he hurihanga ki te ahua e hiahiatia ana i mua.
  4. He whakamutunga te whakakotahitanga. Ko tona ahuatanga ka tohuhia e:
    • Karekau he matohi rereke mo tetahi waa.
    • "whakakotahi" matohi (hei tauira, webhook, takahanga Tuhituhi Git).

He aha te rereketanga?

Kia tuaruatia ano: me kitea nga ahuatanga tautau katoa e hiahiatia ana i roto i te tautau.

Ko etahi tauira o te rereketanga:

  • Hurihia te konae whirihoranga na te whakakotahi i nga manga i Git.
  • He huringa i roto i te konae whirihoranga na te mahi a Git i mahia e te kiritaki GUI.
  • He maha nga huringa ki te ahua e hiahiatia ana na te PR i Git ka whai i te hanga i te ahua ipu me nga huringa whirihora.
  • He panoni i te ahua o te kahui na te he, he raruraru rauemi ka hua mai he "whanonga kino", he rereke noa ranei mai i te ahua taketake.

He aha te tikanga o te whakakotahitanga?

He tauira:

  • Mo nga ipu me nga tautau, na Kubernetes te tikanga whakakotahi.
  • Ka taea te whakamahi i taua tikanga ki te whakahaere i nga tono me nga hoahoa-a-Kubernetes (penei i a Istio me Kubeflow).
  • He tikanga mo te whakahaere i te taunekeneke whakahaere i waenga i nga Kubernetes, nga putunga whakaahua me nga Git e whakarato ana Kaiwhakahaere GitOps Weave Flux, he wahanga Raranga Kapua.
  • Mo nga miihini turanga, me whakaatu me te mana motuhake te tikanga whakakotahi. Mai i o maatau ake wheako ka taea e taatau te kii Terraform tino tata ki tenei whakamaramatanga, engari me whai mana tonu te tangata. I runga i tenei tikanga, ka whakawhānuihia e GitOps te tikanga o te Hangahanga hei Waehere.

Ka whakakotahihia e GitOps a Git me te miihini whakakotahi pai o Kubernetes hei whakarato tauira mo te whakamahi.

Ka taea e GitOps te kii: Ko nga punaha anake ka taea te whakaahua me te mataki ka taea te mahi aunoa me te whakahaere.

Ko GitOps te tikanga mo te katoa o te kapua taketake (hei tauira, Terraform, etc.)

Ko GitOps ehara i te Kubernetes anake. E hiahia ana matou kia peia te punaha katoa me te whakamahi i te whakakotahitanga. Ko te tikanga o te punaha katoa he kohinga taiao e mahi tahi ana me Kubernetes - hei tauira, "dev cluster 1", "production", etc. Kei ia taiao nga miihini, nga tautau, nga tono, me nga hononga mo nga ratonga o waho e whakarato ana i nga raraunga, te aroturuki. me etahi atu.

Tirohia te hiranga o Terraform ki te raru bootstrapping i tenei keehi. Me tuku nga Kubernetes ki tetahi waahi, a ma te whakamahi i a Terraform ka taea e tatou te whakamahi i nga rerengamahi GitOps rite tonu hei hanga i te paparanga mana e tautoko ana i nga Kubernetes me nga tono. He mahi tino pai tenei.

He kaha te aro ki te whakamahi i nga aria GitOps ki nga paparanga kei runga ake o Kubernetes. I tenei wa, kei reira nga momo rongoa GitOps mo Istio, Helm, Ksonnet, OpenFaaS me Kubeflow, me, hei tauira, mo Pulumi, e hanga ana i tetahi paparanga mo te whakawhanake i nga tono mo te kapua taketake.

Kubernetes CI/CD: te whakatairite i nga GitOps me etahi atu huarahi

Ka rite ki te korero, e rua nga mea a GitOps:

  1. Ko te tauira whakahaere mo Kubernetes me te kapua taketake i whakaahuatia i runga ake nei.
  2. Ko te ara ki te taiao whakahaere tono-a-kaiwhakawhanake.

Mo te nuinga, ko GitOps he rerenga mahi i runga i nga pana a Git. E pai ana matou ki a ia. Engari ehara ko tera anake: me titiro inaianei ki nga paipa CI/CD.

Ka taea e GitOps te tuku tonu (CD) mo nga Kubernetes

Kei te tuku a GitOps i tetahi tikanga tuku tonu e whakakore ana i te hiahia mo te wehe "nga punaha whakahaere tuku." Ma Kubernetes nga mahi katoa mo koe.

  • Ko te whakahou i te tono me whakahou ki a Git. He whakahoutanga tauwhitinga tenei ki te ahua e hiahiatia ana. Ka mahia te "Whakatuwhera" i roto i te roopu e Kubernetes ake i runga i te whakaahuatanga kua whakahoutia.
  • Na te ahua o te mahi a Kubernetes, ka whakakotahi enei whakahou. Ka whakarato tenei i te tikanga mo te tuku tonu i nga whakahoutanga katoa he ngota.
  • Tuhipoka: Raranga Kapua ka tuku he kaiwhakahaere GitOps e whakauru ana i a Git me Kubernetes me te tuku i te CD kia mahia ma te whakakotahi i te ahua e hiahiatia ana me te ahuatanga o naianei o te roopu.

Kaore he kubectl me nga tuhinga

Me karo koe ki te whakamahi i te Kubectl ki te whakahou i to huinga, ina koa me karo i te whakamahi i nga tuhinga hei whakarōpū i nga whakahau kubectl. Engari, me te paipa GitOps, ka taea e te kaiwhakamahi te whakahou i tana roopu Kubernetes ma te Git.

Ko nga painga ko:

  1. Matau. Ka taea te tono he roopu whakahōutanga, te whakakotahi me te whakamana i te mutunga, ka whakatata atu tatou ki te whainga o te tuku ngota. Engari, ko te whakamahi i nga tuhinga kaore he taurangi mo te whakakotahitanga (he korero kei raro nei).
  2. Haumarutanga. Te whakahua Kelsey Hightower: "Whakawhāitihia te uru atu ki to huinga Kubernetes ki nga taputapu aunoa me nga kaiwhakahaere kei a raatau te kawenga mo te tarai, te pupuri ranei." titiro hoki taku whakaputanga e pā ana ki te haumaru me te hanganga ture ki nga whakaritenga hangarau, me tuhinga mo te hacking Homebrew na roto i te tahae i nga tohu tohu mai i tetahi tuhinga tuhi a Jenkins.
  3. Wheako Kaiwhakamahi. Ka whakaatu a Kubectl i nga miihini o te tauira ahanoa Kubernetes, he tino uaua. Ko te tikanga, me taunekeneke nga kaiwhakamahi me te punaha i te taumata teitei o te tangohanga. I konei ka korero ano ahau ki a Kelsey ka tūtohu kia matakitaki he korero ano.

Te rereketanga i waenga i te CI me te CD

Ka whakapai ake a GitOps i nga tauira CI/CD.

Ko te tūmau CI hou he taputapu whakarite. Ina koa, he taputapu mo te whakarite i nga paipa CI. Kei roto i enei ko te hanga, te whakamatautau, te hanumi ki te pouaka, me era atu. Ka whakaaunoa e nga kaitoro CI te whakahaere i nga paipa maha-taahiraa uaua. Ko te whakamatautau noa ko te tuhi i tetahi huinga whakahōutanga Kubernetes ka whakahaere hei waahanga o te paipa hei pana i nga huringa ki te tautau. Ae ra, he maha nga tohunga e mahi ana. Heoi, ehara tenei i te mea tino pai, koinei te take.

Me whakamahi te CI ki te pana whakahōutanga ki te kātua, me huri te kāhui Kubernetes i runga i aua whakahōutanga hei whakahaere i te CD ki roto. Ka karanga matou tauira kumea mo te CD, kaore i rite ki te tauira pana CI. Ko te CD tetahi waahanga whakahaerenga mahi.

He aha te take e kore ai e mahia e nga Kaituku CI nga CD ma nga Whakahoutanga Tika ki Kubernetes

Kaua e whakamahi i te tūmau CI ki te whakarite i nga whakahou tika ki a Kubernetes hei huinga mahi CI. Koinei te tauira anti-tauira e korero nei matou kua korerotia i runga i to rangitaki.

Kia hoki ki a Alice raua ko Bob.

He aha nga raruraru i pa ki a ratou? Ka tukuna e te tūmau CI a Bob nga huringa ki te tautau, engari ki te pakaru i roto i te mahi, kare a Bob e mohio he aha te ahua o te tautau (me noho ranei) kei roto, me pehea ranei te whakatika. He pera ano mo te angitu.

Me whakaaro tatou na te roopu a Bob i hanga he ahua hou katahi ka papaki i a raatau mahi ki te whakatakoto i te ahua (mai i te paipa CI).

Mena ka hanga noa te ahua, engari ka rahua te paipa, me whakaaro te roopu:

  • Kua hurihia te whakahou?
  • Kei te whakarewahia he hanga hou? Ma tenei ka arahi ki nga paanga taha kore - me te tupono ka rua nga hanga o te ahua koretake?
  • Me tatari tatou mo te whakahou hou i mua i te whakahaere i te hanga?
  • He aha te mea i he? Ko ēhea nga hikoinga me mahi ano (a ko wai nga mea e haumaru ana ki te tukurua)?

Ko te whakatu i tetahi rerengamahi-a-Git e kore e kii ka kore te roopu a Bob e pa ki enei raru. Ka taea tonu e ratou te he ki te pana commit, te tohu, etahi atu tawhā ranei; heoi, he tata tonu tenei huarahi ki te huarahi tino marama-kore-kore ranei.

Hei whakarāpopoto, koinei te take e kore ai nga kaitoro CI e mahi ki te CD:

  • Ko nga tuhinga whakahōu kaore i te whakatau i nga wa katoa; He ngawari ki te mahi he i roto i a raatau.
  • Ko nga tūmau CI e kore e huri ki te tauira kapoi korero.
  • He uaua ki te whakapumau i te ngoikoretanga. Me mohio nga kaiwhakamahi ki nga tikanga hohonu o te punaha.
  • He uaua ake te whakaora mai i te hapa hapa.

Panui mo te Helm: Mena kei te pirangi koe ki te whakamahi i te Helm, ka tūtohu kia whakakotahi me tetahi kaiwhakahaere GitOps penei Rerenga-Helm. Ka awhina tenei ki te whakarite i te whakakotahitanga. Ko te Helm ake ehara i te mea whakatau, i te ngota ranei.

Ko GitOps te huarahi pai ki te whakatinana i te Tukunga Tonu mo nga Kubernetes

Ka whakatinanahia e te roopu a Alice raua ko Bob a GitOps ka kitea kua ngawari ake te mahi me nga hua rorohiko, te pupuri i nga mahi teitei me te pumau. Ka mutu tenei tuhinga me tetahi whakaahua e whakaatu ana i te ahua o to raatau huarahi hou. Kia maumahara ko te nuinga o taatau e korero ana mo nga tono me nga ratonga, engari ka taea te whakamahi a GitOps ki te whakahaere i tetahi papaaho katoa.

Tauira whakahaere mo Kubernetes

Tirohia te hoahoa e whai ake nei. Kei te whakaatu a Git me te putunga whakaahua ipu hei rauemi tiritahi mo nga huringa ora e rua.

  • He paipa whakauru tonu e panui ana, e tuhi ana i nga konae ki a Git ka taea te whakahou i te putunga o nga whakaahua ipu.
  • He paipa GitOps Runtime e whakakotahi ana i te tukunga me te whakahaere me te tirohanga. Ka panui me te tuhi i nga konae ki a Git ka taea te tango whakaahua ipu.

He aha nga kitenga matua?

  1. Te wehenga o nga awangawanga: Kia mahara ka taea e nga paipa e rua te whakawhitiwhiti korero ma te whakahou i a Git, te putunga whakaahua ranei. I etahi atu kupu, he papaahi kei waenganui i te CI me te taiao oma. Ka kiia e matou ko te "paahi ahi kore e taea te whakarereke" (pātūahi kore huri), i te mea ka hangaia e nga whakahōunga putunga katoa he putanga hou. Mo etahi atu korero mo tenei kaupapa, tirohia nga kiriata 72-87 tenei whakaaturanga.
  2. Ka taea e koe te whakamahi i tetahi tūmau CI me Git: Ka mahi a GitOps me tetahi waahanga. Ka taea e koe te whakamahi tonu i o tūmau CI me te Git tino pai, nga putunga whakaahua, me nga huinga whakamatautau. Tata ki etahi atu taputapu Tukunga Tonu i runga i te maakete e hiahia ana ki a raatau ake CI/Git tūmau, te putunga whakaahua ranei. Ka noho pea tenei hei take aukati i te whanaketanga o te kapua taketake. Ma te GitOps, ka taea e koe te whakamahi i nga taputapu mohio.
  3. Ko nga huihuinga hei taputapu whakauru: Ina whakahouhia nga raraunga i roto i te Git, ka whakamohio te Weave Flux (te kaiwhakahaere Weave Cloud ranei) i te wa whakahaere. I nga wa katoa ka whakaae a Kubernetes ki tetahi huinga huringa, ka whakahoutia a Git. He tauira whakauru ngawari tenei mo te whakarite rerengamahi mo GitOps, penei i raro nei.

mutunga

Ko nga GitOps e whakarato ana i nga taurangi whakahou kaha e hiahiatia ana e tetahi taputapu CI/CD hou:

  • aunoatanga;
  • whakakotahitanga;
  • ngoikoretanga;
  • whakatau.

He mea nui tenei na te mea he tauira whakahaere mo nga kaiwhakawhanake taketake kapua.

  • Ko nga taputapu tawhito mo te whakahaere me te aro turuki i nga punaha e hono ana ki nga roopu whakahaere e mahi ana i roto i te pukapuka whakahaere (he huinga tikanga me nga mahi o ia ra - tata ki te whakamaori), herea ki te whakatakotoranga motuhake.
  • I roto i te whakahaeretanga kapua maori, ko nga taputapu tirohanga te huarahi pai ki te ine i nga hua o nga tukunga kia tere te whakautu a te roopu whanaketanga.

Whakaarohia he maha nga tautau ka marara puta noa i nga kapua rereke me te maha o nga ratonga me o raatau ake roopu me o raatau mahere tuku. Ka tukuna e GitOps he tauira tauine-kore mo te whakahaere i enei taonga katoa.

PS mai i te kaiwhakamaori

Pānuihia hoki i runga i ta maatau blog:

Ko nga kaiwhakamahi kua rehita anake ka uru ki te rangahau. Waitohu maitēnā.

I mohio koe mo GitOps i mua i te putanga o enei whakamaoritanga e rua ki runga i a Habré?

  • Ae, i mohio ahau ki nga mea katoa

  • Ma runga noa iho

  • No

35 nga kaiwhakamahi i pooti. 10 nga kaiwhakamahi i aukati.

Source: will.com

Tāpiri i te kōrero