GitOps: lwm lo lus buzz lossis kev ua tiav hauv automation?

GitOps: lwm lo lus buzz lossis kev ua tiav hauv automation?

Peb feem ntau, pom lwm lo lus tshiab hauv IT blogosphere lossis lub rooj sib tham, sai lossis tom qab nug cov lus nug zoo sib xws: "Qhov no yog dab tsi? Tsuas yog lwm lo lus buzz, ib lo lus "buzzword" lossis ib yam dab tsi tsim nyog ntawm kev mloog zoo, kawm thiab cog lus ntawm lub qab ntug tshiab? Tib yam tshwm sim rau kuv nrog lub sij hawm GitOps qee lub sij hawm dhau los. Armed nrog ntau cov ntawv uas twb muaj lawm, nrog rau kev paub ntawm cov npoj yaig los ntawm lub tuam txhab GitLab, Kuv sim txiav txim siab seb yam tsiaj nyaum no yog dab tsi, thiab nws siv yuav zoo li cas hauv kev xyaum.

Los ntawm txoj kev, txog lub novelty ntawm lub sij hawm GitOps Peb qhov kev tshawb fawb tsis ntev los no tseem hais tias: ntau tshaj li ib nrab ntawm cov kev tshawb fawb tseem tsis tau pib ua haujlwm nrog nws cov hauv paus ntsiab lus.

Yog li, qhov teeb meem ntawm kev tswj hwm infrastructure tsis yog tshiab. Ntau tus neeg muab kev pabcuam huab tau muaj rau cov pej xeem dav dav rau ntau lub xyoo zoo thiab, nws yuav zoo li, yuav tsum tau ua haujlwm ntawm cov pab pawg ua haujlwm rau cov txheej txheem yooj yim thiab ncaj nraim. Txawm li cas los xij, thaum piv rau cov txheej txheem kev tsim kho (qhov twg automation tau nce mus txog qib tshiab), cov phiaj xwm tseem ceeb feem ntau koom nrog ntau phau ntawv ua haujlwm thiab xav tau kev paub tshwj xeeb thiab kev txawj ntse, tshwj xeeb tshaj yog muab niaj hnub no cov cai rau kev ua txhaum cai, yoog raws, scalability thiab elasticity.

Cov kev pabcuam huab tau ua tiav cov kev cai no tau zoo heev thiab nws yog lawv uas tau muab lub zog loj rau kev txhim kho txoj hauv kev IaC. Qhov no yog to taub. Tom qab tag nrho, lawv tau ua kom muaj peev xwm los teeb tsa lub chaw khaws ntaub ntawv virtual tag nrho: tsis muaj lub cev servers, racks, lossis cov khoom siv hauv network; tag nrho cov txheej txheem tuaj yeem piav qhia siv cov ntawv sau thiab cov ntaub ntawv teeb tsa.

Yog li dab tsi yog qhov txawv? GitOps los ntawm IaC? Nws yog nrog lo lus nug no uas kuv tau pib kuv qhov kev tshawb nrhiav. Tom qab tham nrog cov npoj yaig, kuv tuaj yeem tuaj nrog qhov sib piv hauv qab no:

GitOps

IaC

Tag nrho cov code yog khaws cia rau hauv git repository

Code versioning yog xaiv tau

Tshaj Tawm Code Description / Ideempotency

Ob qho kev tshaj tawm thiab cov lus piav qhia tseem ceeb tau txais

Cov kev hloov pauv siv tau siv cov kev thov sib koom ua ke / rub thov cov txheej txheem

Kev pom zoo, kev pom zoo thiab kev sib koom tes yog xaiv tau

Cov txheej txheem rollout hloov tshiab yog automated

Cov txheej txheem hloov tshiab rollout tsis yog tus qauv (tsis siv neeg, phau ntawv, luam cov ntaub ntawv, siv kab hais kom ua, thiab lwm yam)

Hauv lwm lo lus GitOps tau yug los ntawm qhov tseeb ntawm kev siv lub hauv paus ntsiab lus IaC. Ua ntej, kev tsim kho vaj tse thiab kev teeb tsa tam sim no tuaj yeem khaws cia tib yam li kev siv. Cov cai yooj yim khaws cia, yooj yim sib qhia, sib piv, thiab siv cov peev txheej versioning. Versions, ceg, keeb kwm. Thiab tag nrho cov no nyob rau hauv ib qho chaw pej xeem nkag mus rau tag nrho pab neeg. Yog li ntawd, kev siv cov txheej txheem tswj hwm tau dhau los ua kev txhim kho ntuj tsim. Hauv particular, git, raws li qhov nrov tshaj plaws.

Ntawm qhov tod tes, nws tau dhau los ua automate cov txheej txheem tswj kev tswj hwm. Tam sim no qhov no tuaj yeem ua tiav sai dua, ntseeg tau thiab pheej yig dua. Ntxiv mus, cov ntsiab cai ntawm CI / CD twb paub thiab nrov ntawm cov software tsim tawm. Nws tsuas yog tsim nyog los hloov thiab siv cov kev paub thiab kev txawj ntse uas twb muaj lawm rau thaj chaw tshiab. Cov kev coj ua no, txawm li cas los xij, dhau mus dhau tus qauv txhais ntawm Infrastructure raws li txoj cai, yog li lub tswv yim GitOps.

GitOps: lwm lo lus buzz lossis kev ua tiav hauv automation?

Xav paub GitOps, ntawm chav kawm, kuj nyob rau hauv lub fact tias nws tsis yog ib yam khoom, plugin los yog platform txuam nrog ib tug neeg muag khoom. Nws yog ntau lub ntsiab lus thiab cov txheej txheem, zoo ib yam li lwm lo lus uas peb paub: DevOps.

Nyob rau hauv lub tuam txhab GitLab peb tau tsim ob lub ntsiab lus ntawm lo lus tshiab no: theoretical thiab tswv yim. Cia peb pib nrog qhov theoretical:

GitOps yog ib txoj hauv kev uas siv qhov zoo tshaj plaws DevOps cov hauv paus ntsiab lus siv rau kev txhim kho daim ntawv thov, xws li kev tswj hwm, kev sib koom tes, kev sib koom tes, CI / CD, thiab siv lawv rau cov teeb meem ntawm kev tswj hwm kev tswj hwm kev tswj hwm.

Tag nrho cov txheej txheem GitOps Kuv ua haujlwm siv cov cuab yeej uas twb muaj lawm. Tag nrho cov txheej txheem kev tsim kho yog khaws cia rau hauv git repository uas twb paub lawm, kev hloov pauv mus los ntawm tib txoj kev pom zoo raws li lwm yam kev cai lij choj, thiab cov txheej txheem rollout yog automated, uas tso cai rau peb txo qis tib neeg yuam kev, nce kev ntseeg tau thiab rov tsim dua tshiab.

Los ntawm cov tswv yim pom, peb piav qhia GitOps raws li nram no:

GitOps: lwm lo lus buzz lossis kev ua tiav hauv automation?

Peb twb tau tham txog infrastructure raws li txoj cai raws li ib qho ntawm cov ntsiab lus tseem ceeb ntawm cov qauv no. Cia peb qhia cov neeg koom nrog.

Merge Thov (lwm lub npe Rub Thov). Hauv cov txheej txheem, MR yog ib qho kev thov kom siv cov cai hloov pauv thiab tom qab ntawd ua ke cov ceg ntoo. Tab sis nyob rau hauv cov nqe lus ntawm cov cuab yeej peb siv, qhov no yog ib tug ntau ntawm lub sij hawm kom tau ib tug ua tiav daim duab ntawm tag nrho cov kev hloov pauv tau ua: tsis tsuas yog cov cai sib txawv sau los ntawm ib tug xov tooj ntawm commits, tab sis kuj cov ntsiab lus teb, xeem tau, thiab cov qhov kawg xav tau. Yog tias peb tab tom tham txog cov txheej txheem kev tsim kho vaj tse, ces peb xav paub yuav ua li cas raws nraim qhov kev tsim kho vaj tse yuav hloov, pes tsawg cov peev txheej tshiab yuav raug ntxiv lossis tshem tawm, hloov pauv. Zoo dua nyob rau hauv qee qhov yooj yim dua thiab yooj yim rau kev nyeem ntawv. Rau cov neeg muab kev pabcuam huab, nws yog ib lub tswv yim zoo kom paub tias qhov kev cuam tshuam nyiaj txiag ntawm qhov kev hloov no yuav ua li cas.

Tab sis MR kuj yog ib qho kev sib koom tes, kev sib tham, thiab kev sib txuas lus. Qhov chaw qhov system ntawm kev txheeb xyuas thiab sib npaug tuaj rau hauv kev ua si. Los ntawm cov lus yooj yim mus rau kev pom zoo thiab kev pom zoo.

Zoo, qhov kawg tivthaiv: CI / CD, raws li peb twb paub lawm, ua rau nws muaj peev xwm mus automate cov txheej txheem ntawm kev hloov infrastructure thiab kev ntsuam xyuas (los ntawm cov yooj yim syntax check mus rau complex static code tsom xam). Thiab tseem nyob rau hauv qhov kev tshawb nrhiav tom ntej ntawm drift: qhov sib txawv ntawm qhov tseeb thiab qhov xav tau ntawm lub system. Piv txwv li, raws li ib tug tshwm sim ntawm tsis tau tso cai phau ntawv hloov los yog system tsis ua hauj lwm.

Yog, lub sij hawm GitOps tsis qhia peb txog txhua yam tshiab, tsis rov tsim lub log, tab sis tsuas yog siv cov kev paub dhau los hauv thaj chaw tshiab. Tab sis qhov no yog qhov uas nws lub zog dag.

Thiab yog hais tias koj mam li nco dheev xav nyob rau hauv yuav ua li cas tag nrho cov no zoo nyob rau hauv kev xyaum, ces kuv caw koj saib peb npaj chav kawm, nyob rau hauv uas kuv qhia koj ib kauj ruam yog kauj ruam yuav siv GitLab:

  • Ua raws li cov hauv paus ntsiab lus ntawm GitOps

  • Tsim thiab hloov pauv rau huab infrastructure (siv tus piv txwv ntawm Yandex Cloud)

  • Automate nrhiav kom tau qhov system drift los ntawm lub xeev xav tau siv kev saib xyuas

GitOps: lwm lo lus buzz lossis kev ua tiav hauv automation?https://bit.ly/34tRpwZ

Tau qhov twg los: www.hab.com

Ntxiv ib saib