Kedu ihe bụ DevOps

Nkọwa nke DevOps dị mgbagwoju anya, yabụ anyị ga-amalite mkparịta ụka banyere ya ọzọ oge ọ bụla. Enwere puku akwụkwọ gbasara isiokwu a na Habré naanị. Mana ọ bụrụ na ị na-agụ nke a, ị nwere ike ịma ihe DevOps bụ. N'ihi na abụghị m. Ndewo aha m bụ Alexander Titov (@osminog), na anyị ga-ekwu maka DevOps na m ga-ekekọrịta ahụmahụ m.

Kedu ihe bụ DevOps

Anọ m na-eche ogologo oge ka m ga-esi mee ka akụkọ m baa uru, ya mere a ga-enwe ọtụtụ ajụjụ ebe a - ndị m na-ajụ onwe m na ndị m na-ajụ ndị ahịa ụlọ ọrụ anyị. Site n'ịza ajụjụ ndị a, nghọta ga-aka mma. M ga-agwa gị ihe mere DevOps ji dị mkpa site n'echiche m, ihe ọ bụ, ọzọ, site n'echiche m, na otu esi aghọta na ị na-aga n'ihu DevOps ọzọ site n'echiche m. Isi ihe ikpeazụ ga-abụ site na ajụjụ. Site na ịza ha n'onwe gị, ị nwere ike ịghọta ma ụlọ ọrụ gị na-aga na DevOps ma ọ bụ na enwere nsogbu n'ụzọ ụfọdụ.


N'otu oge, m nọ n'elu ebili mmiri nke mergers na nnweta. Nke mbụ, arụrụ m ọrụ maka obere ụlọ ọrụ a na-akpọ Qik, wee zụta ya site n'otu ụlọ ọrụ buru ibu nke a na-akpọ Skype, nke ụlọ ọrụ na-akpọ Microsoft zụtara ya. N'oge ahụ, amalitere m ịhụ ka echiche nke DevOps si gbanwee na ụlọ ọrụ nha dị iche iche. Mgbe nke ahụ gasịrị, enwere m mmasị n'ile anya DevOps site n'echiche ahịa, mụ na ndị ọrụ ibe m tọrọ ntọala ụlọ ọrụ Express 42. Maka afọ 6 ugbu a, anyị na-agagharị na ebili mmiri nke ahịa.

Tinyere ihe ndị ọzọ, abụ m otu n'ime ndị na-ahazi obodo DevOps Moscow na onye nhazi nke DevOps-Days 2017, mana ahazighị m 2018. Express 42 na-arụ ọrụ na ọtụtụ ụlọ ọrụ. Anyị na-etolite DevOps ebe ahụ, lelee ka ọ na-eme, na-eme mkpebi, nyochaa, gwa onye ọ bụla nkwubi okwu anyị, ma zụọ ndị mmadụ na omume DevOps. N'ozuzu, anyị na-eme ike anyị niile iji mee ka ahụmịhe na nka anyị dị na nke a.

Gịnị kpatara DevOps

Ajụjụ mbụ na-amasị onye ọ bụla na mgbe niile bụ - gịnị kpatara? Ọtụtụ ndị mmadụ na-eche na DevOps bụ naanị akpaaka ma ọ bụ ihe yiri ya nke ụlọ ọrụ ọ bụla nweburu.

- Anyị nwere njikọta na-aga n'ihu - nke a pụtara na anyị enweelarị DevOps, kedu ihe kpatara eji achọ ihe a niile? Ha na-ekpori ndụ ná mba ọzọ, ma ha na-egbochi anyị ịrụ ọrụ!

N'ime afọ 9 nke mmepe obodo na usoro, ọ pụtalarị na nke a ka na-adịghị ere ahịa na-egbukepụ egbukepụ, ma ọ ka edochaghị anya ihe mere o ji dị mkpa. Dị ka ngwá ọrụ na usoro ọ bụla, DevOps nwere ebumnuche akọwapụtara nke ọ na-emecha nweta.

Ihe a niile bụ n'ihi na ụwa na-agbanwe. Ọ na-esi na ụlọ ọrụ ahụ na-abịaru nso, mgbe ụlọ ọrụ na-aga n'ihu na nrọ, dị ka anyị St. Petersburg kpochapụwo bụrụ abụ, site n'ókè A ruo n'ókè B dị ka ụfọdụ atụmatụ, na a ụfọdụ Ọdịdị wuru maka nke a.

Kedu ihe bụ DevOps

Na ụkpụrụ, ihe niile dị na IT kwesịrị ka e wulite dịka usoro a si dị. N'ebe a, a na-eji IT naanị iji megharịa usoro.

Automation anaghị agbanwe mgbe mgbe, n'ihi na mgbe ụlọ ọrụ na-ada na nke ọma na-azọda rut, kedu ihe ga-agbanwe? Ọ na-arụ ọrụ - emetụla ya aka. Ugbu a ịbịaru nso n'ụwa na-agbanwe, na nke a na-akpọ Agile na-egosi na njedebe njedebe B adịghị ahụ anya ozugbo.

Kedu ihe bụ DevOps

Mgbe ụlọ ọrụ na-agafe ahịa, na-arụ ọrụ na onye ahịa, ọ na-enyocha ahịa mgbe niile ma gbanwee njedebe njedebe B. Ọzọkwa, ọtụtụ mgbe ụlọ ọrụ na-agbanwe ntụziaka ya, otú ahụ ka ọ na-aga nke ọma na njedebe, n'ihi na ọ na-ahọrọ ahịa ndị ọzọ. niches.

E gosipụtara atụmatụ a site na ụlọ ọrụ na-adọrọ mmasị nke m mụtara na nso nso a. One Box Shave bụ ọrụ nnyefe ndenye aha maka agụba na ngwa ịkpụ ntutu n'ime igbe. Ha maara ka esi hazie "igbe" ha maka ndị ahịa dị iche iche. A na-eme nke a site na otu ngwanrọ, nke na-eziga iwu na ụlọ ọrụ Korea nke na-emepụta ngwaahịa ahụ.

Unilever zụtara ngwaahịa a maka ijeri $1. Ọ na-asọmpi ugbu a na Gillette ma wepụrụ oke oke nke ndị na-azụ ahịa n'ahịa America. Otu Box Shave kwuru:

- 4 agba? Ị dị egwu? Gịnị mere ị chọrọ nke a - ọ dịghị eme ka mma nke ịkpụ ntutu. Ude ahọpụtara nke ọma, ihe na-esi ísì ụtọ na agụba dị elu nke nwere agụba abụọ na-edozi ọtụtụ nsogbu karịa agụba 4 Gillette nzuzu ahụ! Anyị ga-eru 10 ngwa ngwa?

Otú a ka ụwa si agbanwe. Unilever na-ekwu na ha nwere usoro IT dị mma na-enye gị ohere ime nke a. N'ikpeazụ ọ dị ka echiche Oge-na-ahịa, nke o nwebeghị onye kwurula banyere ya.

Kedu ihe bụ DevOps

Isi ihe nke Oge-ahịa abụghị ugboro ole anyị na-ebuga. Ị nwere ike ibuga ọtụtụ oge, mana usoro ntọhapụ ga-adị ogologo. Ọ bụrụ na usoro ntọhapụ ọnwa atọ na-ekpuchi ibe ha, na-agbanwe ha otu izu, ọ na-apụta na ụlọ ọrụ ahụ yiri ka ọ na-ebuga otu ugboro n'izu. Na site n'echiche ruo na mmejuputa ikpeazụ ọ na-ewe ọnwa 3.

Oge na-ahịa bụ ibelata oge site n'echiche ruo na mmejuputa ikpeazụ.

N'okwu a, ngwanrọ na-emekọrịta ihe na ahịa. Nke a bụ otu ebe nrụọrụ weebụ One Box Shave si emekọrịta onye ahịa. Ha enweghị ndị na-ere ahịa - naanị webụsaịtị ebe ndị ọbịa pịa wee hapụ ọchịchọ. N'ihi ya, a ga-etinyerịrị ihe ọhụrụ na saịtị ahụ mgbe niile ma na-emelite ya dịka ọchịchọ siri dị. Dịka ọmụmaatụ, na South Korea ha na-akpụ isi dị iche iche karịa na Russia, ha na-amasịkwa ísì ụtọ ọ bụghị pine, kama, dịka ọmụmaatụ, carrots na vanilla.

Ebe ọ bụ na ọ dị mkpa ịgbanwe ọdịnaya nke saịtị ngwa ngwa, mmepe ngwanrọ na-agbanwe nke ukwuu. Site na ngwanrọ, anyị ga-achọpụta ihe onye ahịa chọrọ. Na mbụ, anyị mụtara nke a site n'ụzọ ụfọdụ, dịka ọmụmaatụ, site na njikwa azụmahịa. Mgbe ahụ, anyị haziri ya, tinye ihe ndị a chọrọ n'ime usoro IT, ihe niile dị mma. Ugbu a ọ dị iche - software bụ nke onye ọ bụla na-etinye aka na usoro a na-emepụta, gụnyere ndị injinia, n'ihi na site na nkọwa teknụzụ ha na-amụta otú ahịa ahụ si arụ ọrụ ma na-ekerịtakwa nghọta ha na azụmahịa.

Dịka ọmụmaatụ, na Qik anyị mụtara na mberede na ndị mmadụ na-enwe mmasị na-ebugo ndepụta kọntaktị na sava ahụ, ha wetara anyị ngwa. Na mbụ anyị echeghị maka ya. N'ime ụlọ ọrụ kpochapụwo, onye ọ bụla ga-ekpebi na nke a bụ ahụhụ, ebe ọ bụ na nkọwa ahụ ekwughị na ọ ga-arụ ọrụ nke ọma ma na-emekarị ya na ikpere, ha ga-agbanyụrịrị atụmatụ ahụ wee sị: "Ọ dịghị onye chọrọ nke a, Ihe kacha mkpa bụ na isi ọrụ na-arụ ọrụ. " Na ụlọ ọrụ nkà na ụzụ na-ahụ nke a dị ka ohere ma malite ịgbanwe ngwanrọ dịka nke a si dị.

Kedu ihe bụ DevOps

Na 1968, otu nwoke nwere ọhụụ, Melvin Conway, chepụtara echiche a.

Ụlọ ọrụ na-emepụta usoro a na-amachibido ya site na nhazi nke na-emegharị usoro nkwurịta okwu nke nzukọ ahụ.

Na nkọwa ndị ọzọ, iji mepụta usoro nke ụdị dị iche iche, ị ga-enwekwa usoro nkwurịta okwu n'ime ụlọ ọrụ nke ụdị dị iche iche. Ọ bụrụ na usoro nzikọrịta ozi gị bụ ọkwa kachasị elu, mgbe ahụ nke a agaghị enye gị ohere ịmepụta sistemu nwere ike inye akara ngosi oge na ahịa dị elu.

Gụọ gbasara iwu Conway nwere ike site na njikọ. Ọ dị mkpa maka ịghọta omenala DevOps ma ọ bụ nkà ihe ọmụma n'ihi na Naanị ihe na-agbanwe agbanwe na DevOps bụ usoro nkwukọrịta n'etiti otu.

Site na echiche usoro, tupu DevOps, usoro niile: nyocha, mmepe, nnwale, ọrụ, bụ ahịrị.Kedu ihe bụ DevOps
N'ihe banyere DevOps, usoro ndị a niile na-eme n'otu oge.

Kedu ihe bụ DevOps

Oge na-ahịa bụ naanị ụzọ enwere ike isi mee ya. Maka ndị na-arụ ọrụ na usoro ochie, nke a na-ele anya dịtụ mbara igwe, na n'ozuzu ya.

Yabụ kedu ihe ị chọrọ DevOps?

Maka mmepe ngwaahịa dijitalụ. Ọ bụrụ na ụlọ ọrụ gị enweghị ngwaahịa dijitalụ, DevOps adịghị mkpa - ọ dị ezigbo mkpa.

DevOps meriri mmachi ọsọ nke mmepụta ngwanrọ usoro. N'ime ya usoro niile na-eme n'otu oge.

Ihe isi ike na-abawanye. Mgbe ndị na-ezisa ozi ọma DevOps gwara gị na ọ ga-eme ka ọ dịrị gị mfe ịhapụ ngwanrọ, nke a bụ nzuzu.

Site na DevOps, ihe ga-agbagwojuru anya karị.

Na ogbako dị na ọdụ Avito, ị nwere ike ịhụ ihe ọ dị ka ibunye akpa Docker - ọrụ na-enweghị isi. Ihe mgbagwoju anya na-aghọ ihe mgbochi; ị ga-agbanye ọtụtụ bọọlụ n'otu oge.

DevOps na-agbanwe kpamkpam usoro na nhazi na ụlọ ọrụ - Kpọmkwem, ọ bụghị DevOps na-agbanwe, mana ngwaahịa dijitalụ. Iji bịa na DevOps, ị ka kwesịrị ịgbanwe usoro a kpamkpam.

Ajụjụ maka ọkachamara

Kedu ihe ị nwere? Ajụjụ ndị ị nwere ike ịjụ onwe gị mgbe ị na-arụ ọrụ na ụlọ ọrụ ma na-etolite dị ka ọkachamara.

Ị nwere atụmatụ maka ịmepụta ngwaahịa dijitalụ? Ọ bụrụ na ọ dị, nke ahụ adịlarị mma. Nke a pụtara na ụlọ ọrụ gị na-aga n'ihu DevOps.

Ụlọ ọrụ gị ọ na-emepụta ngwaahịa dijitalụ? Nke a pụtara na ị nwere ike ibili ọkwa ọzọ dị elu wee mee ihe na-atọ ụtọ karịa - ọzọ site na echiche DevOps. M na-ekwu naanị site n'echiche a.

Ụlọ ọrụ gị ọ bụ otu n'ime ndị isi ahịa na niche ngwaahịa dijitalụ? Spotify, Yandex, Uber bụ ụlọ ọrụ ndị nọ n'ọganihu teknụzụ ugbu a.

Jụọ onwe gị ajụjụ ndị a, ma ọ bụrụ na azịza niile abụghị mba, mgbe ahụ ikekwe ị gaghị eme DevOps na ụlọ ọrụ a. Ọ bụrụ na isiokwu nke DevOps na-amasị gị n'ezie, ikekwe ... ị kwesịrị ịkwaga na ụlọ ọrụ ọzọ? Ọ bụrụ na ụlọ ọrụ gị chọrọ ịbanye na DevOps, mana ị zara "Ee e" na ajụjụ niile, mgbe ahụ ọ dị ka rhinoceros mara mma nke na-agaghị agbanwe agbanwe.

Kedu ihe bụ DevOps

nzukọ

Dịka m kwuru, dịka iwu Conway siri dị, nhazi nke ụlọ ọrụ na-agbanwe. M ga-amalite na ihe na-egbochi DevOps ịbanye n'ime ụlọ ọrụ site na echiche nhazi.

Nsogbu nke "olulu mmiri"

A sụgharịrị okwu Bekee "Silo" ebe a na Russian dị ka "nke ọma". Isi ihe kpatara nsogbu a bụ nke ahụ ọ dịghị mgbanwe ozi n'etiti otu. Otu ọ bụla na-egwupụta omimi n'ime nka ya, na-ewuliteghị maapụ a na-ahụkarị ka ịnyagharịa.

N'ụzọ ụfọdụ, nke a na-echetara m onye ka bịarutere Moscow ma na-amabeghị otú e si akwọ ụgbọ mmiri na map metro. Ndị Muscovites na-amakarị mpaghara ha nke ọma, na Moscow niile, ha nwere ike iji map metro mee njem. Mgbe ị bịarutere Moscow maka oge mbụ, ị nweghị nkà a, na ị na-enwekwa nkụda mmụọ.

DevOps na-atụ aro ịgabiga oge mgbakasị ahụ yana ngalaba niile na-arụkọ ọrụ ọnụ iji wuo maapụ mmekọrịta.

Ihe abụọ na-egbochi nke a.

Nsonaazụ nke usoro njikwa ụlọ ọrụ. A na-ewu ya na "olulu mmiri" dị iche iche. Dịka ọmụmaatụ, enwere ụfọdụ KPI na ụlọ ọrụ na-akwado usoro a. N'aka nke ọzọ, ụbụrụ onye ọ na-esiri ike ịgafe ókè nke ọkachamara ha ma na-agagharị na usoro dum na-abanye n'ụzọ. Ọ bụ nnọọ ahụ erughị ala. Were ya na ị nọ n'ọdụ ụgbọ elu Bangkok - ị gaghị ahụ ụzọ gị ngwa ngwa. DevOps na-esikwa ike ịnyagharịa, ya mere ndị mmadụ na-ekwu na ị ga-achọta onye nduzi iji ruo ebe ahụ.

Ma ihe kachasị mkpa bụ na nsogbu nke "olulu mmiri" maka onye injinia na-ejupụta na mmụọ nke DevOps, agụwo Fowler na ụyọkọ akwụkwọ ndị ọzọ, na-egosipụta n'eziokwu na. "olulu mmiri" anaghị ekwe ka ịme ihe " doro anya. Anyị na-ezukọtakarị mgbe DevOps Moscow gasịrị, na-ekwurịta okwu, ndị mmadụ na-eme mkpesa:

- Anyị chọrọ ịmalite CI, mana ọ tụgharịrị na njikwa ahụ achọghị ya.

Nke a na-eme kpọmkwem n'ihi na CI и Usoro nnyefe na-aga n'ihu nọ n'ókè nke ọtụtụ ule. Nanị na-enweghị imeri nsogbu nke "olulu mmiri" na ọkwa nhazi, ị gaghị enwe ike ịga n'ihu, n'agbanyeghị ihe ị na-eme na n'agbanyeghị otú ọ dị mwute.

Kedu ihe bụ DevOps

Onye ọ bụla so na usoro na ụlọ ọrụ: backend na frontend mmepe, ule, DBA, ọrụ, netwọk, igwu na ha onwe ha ntụziaka, na ọ dịghị onye nwere a nkịtị map ma e wezụga onye njikwa, onye n'ụzọ ụfọdụ nyochaa ha na-ejikwa ha na-eji "nkewa. wee merie” usoro.

Ndị mmadụ na-alụ ọgụ maka ụfọdụ kpakpando ma ọ bụ ọkọlọtọ, onye ọ bụla na-egwupụta nkà ha.

N'ihi ya, mgbe ọrụ ahụ bilitere nke ijikọta ihe a niile na ịmepụta pipeline nkịtị, ma ọ dịghịzi mkpa ịlụ ọgụ maka kpakpando na ọkọlọtọ, ajụjụ na-ebilite - gịnị ga-eme? Anyị kwesịrị inwe nkwekọrịta n'ụzọ ụfọdụ, ma ọ dịghị onye kụziiri anyị otú e si eme nke a n'ụlọ akwụkwọ. Akuziri anyi kamgbe ulo akwukwo: klaasị asatọ - chai! - atụnyere ọkwa nke asaa! Otú ahụ ka ọ dịkwa ebe a.

Ọ bụ otu ihe ahụ na ụlọ ọrụ gị?

Iji lelee nke a, ị nwere ike ịjụ onwe gị ajụjụ ndị a.

Ndị otu na-eji ngwá ọrụ a na-ahụkarị ma na-atụnye aka na mgbanwe na ngwaọrụ ndị ahụ?

Ugboro ole ka ndị otu na-ahazigharị-ụfọdụ ndị ọkachamara si n'otu otu na-akwaga otu ọzọ? Ọ bụ na gburugburu DevOps ka nke a na-adị mma, n'ihi na mgbe ụfọdụ mmadụ enweghị ike ịghọta ihe mpaghara ọkachamara na-eme. Ọ na-akwaga na ngalaba ọzọ, na-arụ ọrụ ebe ahụ maka izu abụọ iji mepụta onwe ya map nke nhazi na mmekọrịta ya na ngalaba a.

Ọ ga-ekwe omume ịmepụta kọmitii mgbanwe ma gbanwee ihe? Ma ọ bụ na ọ chọrọ aka siri ike nke njikwa na ntụziaka kachasị elu? M dere n'oge na-adịbeghị anya na Facebook ka otu ụlọ akụ ama ama na-emejuputa ngwaọrụ site na iwu: anyị na-ede iwu, anyị na-emejuputa ya otu afọ, ma hụ ihe na-eme. Nke a, n'ezie, dị ogologo na mwute.

Kedu ka ọ dị mkpa ka ndị njikwa nata mmezu nke onwe ha n'atụleghị ihe ụlọ ọrụ ahụ rụzuru?

Ọ bụrụ na ị zaa ajụjụ ndị a n'onwe gị, ọ ga-edo anya ma ị nwere nsogbu dị otú ahụ na ụlọ ọrụ gị.

Akụrụngwa dị ka koodu

Mgbe nsogbu a gafechara, omume mbụ dị mkpa, na-enweghị nke ọ siri ike ịga n'ihu na DevOps, bụ akụrụngwa dị ka koodu.

Ọtụtụ mgbe, akụrụngwa dị ka koodu ka a na-aghọta dị ka ndị a:

- Ka anyị megharịa ihe niile na bash, kpuchie onwe anyị na scripts ka admins nwee obere ọrụ ntuziaka!

Mana nke ahụ abụghị eziokwu.

Akụrụngwa dị ka koodu pụtara na ị na-akọwa usoro IT ị na-arụ ọrụ n'ụdị koodu iji ghọta ọnọdụ ya mgbe niile.

Gị na ndị otu ndị ọzọ, ị na-emepụta maapụ n'ụdị koodu nke onye ọ bụla nwere ike ịghọta ma nwee ike ịnyagharịa na ịnyagharịa. Ọ baghị uru ihe a na-eme na - Onye isi nri, ihe nwere ike ime, nnu, ma ọ bụ iji faịlụ YAML na Kubernetes - ọ dịghị ihe dị iche.

Na ogbako ahụ, onye ọrụ ibe si na 2GIS gwara otu ha si mee ihe dị n'ime ha maka Kubernetes, nke na-akọwa nhazi nke usoro onye ọ bụla. Iji kọwaa usoro 500, ha chọrọ ngwá ọrụ dị iche iche nke na-emepụta nkọwa a. Mgbe enwere nkọwa a, onye ọ bụla nwere ike ịlele ibe ya, nyochaa mgbanwe, otu esi agbanwe ya ma melite ya, ihe na-efu.

Kwere, scripts bash nke ọ bụla anaghị enye nghọta a. N'otu n'ime ụlọ ọrụ ndị m na-arụ ọrụ, e nwere ọbụna aha maka edemede "dee naanị" - mgbe edere ederede, ma ọ gaghị ekwe omume ịgụ ya. Echere m na nke a makwaara gị nke ọma.

Akụrụngwa dị ka koodu bụ koodu nke na-akọwa ọnọdụ akụrụngwa ugbu a. Ọtụtụ ngwaahịa, akụrụngwa, na otu ọrụ na-arụkọ ọrụ ọnụ na koodu a, na nke kachasị mkpa, ha niile kwesịrị ịghọta ka koodu a si arụ ọrụ n'ezie.

A na-edobe koodu ahụ dịka omume koodu kacha mma si dị: nkwonkwo mmepe, koodu nyochaa, XP-mmemme, ule, ịdọrọ arịrịọ, CI maka koodu infrastructures - ihe a niile dabara na ike ga-eji.

Koodu na-aghọ asụsụ nkịtị maka ndị injinia niile.

Ịgbanwe akụrụngwa na koodu anaghị ewe oge buru ibu. Ee, koodu akụrụngwa nwekwara ike ịnwe ụgwọ ọrụ nka. Ọtụtụ mgbe, ndị otu na-ezute ya otu afọ na ọkara mgbe ha malitesịrị imejuputa "akụrụngwa dị ka koodu" n'ụdị ụyọkọ nke scripts ma ọ bụ ọbụna A pụrụ ime ihe, nke ha na-ede dị ka koodu spaghetti, ha na-atụbakwa bash scripts na mix!

mkpa: Ọ bụrụ na ị nwalebeghị ihe a, cheta nke ahụ Ihe nwere ike ime abụghị bash! Jiri nlezianya gụọ akwụkwọ ahụ, mụọ ihe ha na-ede banyere ya.

Akụrụngwa dị ka koodu bụ nkewa nke koodu akụrụngwa n'ime ọkwa dị iche iche.

N'ime ụlọ ọrụ anyị, anyị na-ama ọdịiche dị n'ụdị 3 isi, nke doro anya ma dị mfe, ma enwere ike inwe ọtụtụ n'ime ha. Ị nwere ike lelee koodu akụrụngwa gị wee gwa ma ị nwere ọnọdụ a ma ọ bụ na ị nweghị. Ọ bụrụ na ọ dịghị akwa akwa ka ọ pụta ìhè, mgbe ahụ ịkwesịrị iwepụta oge na refactor ntakịrị.
Kedu ihe bụ DevOps

isi oyi akwa - otu a ka esi ahazi OS, nkwado ndabere na mpaghara ihe ndị ọzọ dị ala, dịka ọmụmaatụ, otu esi etinye Kubernetes na ọkwa isi.

Ọkwa ọrụ - Ndị a bụ ọrụ ị na-enye onye mmepụta: ịde osisi dị ka ọrụ, nlekota oru dị ka ọrụ, nchekwa data dị ka ọrụ, nhazi dị ka ọrụ, kwụ n'ahịrị dị ka ọrụ, Na-aga n'ihu dị ka ọrụ - ụyọkọ ọrụ ndị otu n'otu n'otu. nwere ike inye mmepe. Ekwesịrị ịkọwa ihe a niile na modul dị iche iche na sistemụ njikwa nhazi gị.

Okpokoro ebe a na-eme ngwa ma kọwaa otu ha ga-esi kpughee n'elu ọkwa abụọ gara aga.

Jikwaa ajụjụ

Ụlọ ọrụ gị ọ nwere ebe nchekwa akụrụngwa nkịtị? Ị na-ejikwa ụgwọ ọrụ aka na akụrụngwa gị? Ị na-eji omume mmepe na ebe nchekwa akụrụngwa? A na-ebiri akụrụngwa gị n'ọkwa? Ị nwere ike ịlele eserese-ọrụ-APP. Olee otú o si esi ike ime mgbanwe?

Ọ bụrụ na ị hụla na ọ were otu ụbọchị na ọkara iji mee mgbanwe, nke a pụtara na ị nwere ụgwọ ọrụ aka na mkpa iji rụọ ọrụ na ya. Ị sụrụ ngọngọ n'elu ụgwọ teknuzu na koodu akụrụngwa gị. M na-echeta ọtụtụ akụkọ ndị dị otú ahụ mgbe, iji gbanwee ụfọdụ CCTL, ọ dị mkpa ka ị degharịa ọkara nke koodu akụrụngwa, n'ihi na imepụta ihe na ọchịchọ imezi ihe niile mere ka eziokwu ahụ bụrụ na ihe niile na-emebi emebi n'ebe niile, ewepụla aka niile, na ọ dị mkpa iji refactor.

Nnyefe na-aga n'ihu

Ka anyị were debit tụnyere kredit. Mbụ na-abịa nkọwa nke akụrụngwa, nke nwere ike ịbụ nnọọ isi. Ịkwesighi ịkọwa ihe niile n'ụzọ zuru ezu, mana achọrọ nkọwa ụfọdụ ka ị nwee ike iji ya rụọ ọrụ. Ma ọ bụghị ya, o doghị anya ihe a ga-eme na nnyefe na-aga n'ihu na-esote. Omume ndị a niile na-apụta n'otu oge mgbe ị bịarutere DevOps, mana ọ na-amalite na ịghọta ihe ị nwere yana otu esi ejikwa ya. Nke a bụ kpọmkwem omume nke akụrụngwa dị ka koodu.

Ozugbo ọ bịara doo anya na ị nwere ya na otu esi ejikwa ya, ị na-amalite ịchọta otú e si ezipụ koodu mmepụta na mmepụta ngwa ngwa o kwere omume. M pụtara ọnụ na onye mmepụta - anyị na-echeta banyere nsogbu nke "olulu mmiri", ya bụ, ọ bụghị ndị mmadụ n'otu n'otu na-abịa na nke a, ma otu.

Mgbe anyị na ya nọ Vanya Evtukhovich hụrụ akwụkwọ mbụ Jez Humble na otu ndị edemede "Nnyefe na-aga n'ihu", nke e wepụtara na 2009, anyị chere ogologo oge banyere otu esi sụgharịa aha ya n'asụsụ Russian. Ha chọrọ ịsụgharị ya dị ka "Na-anapụta mgbe niile", mana, ọ dị nwute, a sụgharịrị ya dị ka "Nnyefe na-aga n'ihu". Ọ dị m ka ọ dị ihe Russian n'aha anyị, na nrụgide.

Ụzọ na-ebufe mgbe niile

Enwere ike ibudata koodu nke dị na ebe nchekwa ngwaahịa mgbe niile na mmepụta. O nwere ike ọ gaghị eme ya, mana ọ na-adị njikere mgbe niile maka ya. N'ihi ya, ị na-ede koodu mgbe niile na mmetụta siri ike ịkọwa nke ụfọdụ nchegbu n'okpuru ọkpụkpụ ọdụ gị. Ọ na-apụtakarị mgbe ị wepụrụ koodu akụrụngwa. Mmetụta a nke ụfọdụ nchegbu kwesịrị ịdị ugbu a - ọ na-ebute usoro ụbụrụ nke na-enye gị ohere ide koodu ntakịrị dị iche iche. Ekwesịrị ịdekọ nke a na iwu n'ime mmepe.

Iji wepụta mgbe niile, ịchọrọ usoro ihe nka na-aga n'ihu ikpo okwu akụrụngwa. Ọ bụrụ na ị na-atụba "n'efu ndụ" nke usoro dị iche iche n'ofe ikpo okwu akụrụngwa, mgbe ahụ ọ na-aghọ otu, ọ na-esiri ike ịnọgide na-enwe, nsogbu nke ụgwọ ọrụ aka na-ebilite. Usoro nke ihe nka kwesiri ka edokọ - nke a bụkwa ọrụ mkpokọta: anyị niile kwesịrị ịgbakọ ọnụ, gbapụta ụbụrụ anyị wee wepụta usoro a.

A na-aga n'ihu na-emeziwanye ihe ahụ ma na-agbanwe ka ọ dabara na gburugburu ebe mmepụta ihe ka ọ na-agafe na pipeline nnyefe. Mgbe ihe arịa na-aga n'akụkụ pipeline, ọ na-ezute mgbe niile ihe ụfọdụ na-adịghị mma maka ya, nke yiri ihe ndị ahụ ị na-etinye na mmepụta ihe na-ezute. Ọ bụrụ na na mmepe oge gboo nke a bụ onye na-ahụ maka sistemụ na-eme mmegharị ahụ, mgbe ahụ na usoro DevOps nke a na-eme oge niile: ebe a, ha jiri ule ụfọdụ nwalee ya, ebe a, ha tụbara ya na ụyọkọ Kubernetes, nke yiri ya ma ọ bụ karịa. na mmepụta, mgbe ahụ na mberede ha malitere ibu ule .

Nke a bụ ihe na-echetara egwuregwu Pac-Man - ihe a na-eme na-aga n'ụdị akụkọ. N'otu oge ahụ, ọ dị mkpa ijikwa ma koodu ahụ na-aga na akụkọ ahụ na ma ọ na-ejikọta ya na mmepụta gị. Enwere ike ịdọrọ akụkọ sitere na mmepụta n'ime usoro nnyefe na-aga n'ihu: ọ dị ka nke a mgbe ihe dara, ugbu a, ka anyị mee ihe ngosi a n'ime usoro. Oge ọ bụla koodu ahụ ga-agafekwa ọnọdụ a, ị gaghị enwe nsogbu a oge ọzọ. Ị ga-amụta banyere ya tupu oge eruo onye ahịa gị.

Atụmatụ mbugharị dị iche iche. Dịka ọmụmaatụ, ị na-eji ule AB ma ọ bụ ntinye canary iji nwalee koodu dị iche iche na ndị ahịa dị iche iche, nweta ozi gbasara otú koodu ahụ si arụ ọrụ, na ọtụtụ tupu mgbe a na-atụgharị ya na ndị ọrụ 100 nde.

"Na-anapụta mgbe niile" dị ka nke a.

Kedu ihe bụ DevOps

Usoro nnyefe Dev, CI, Test, PreProd, Prod abụghị ebe dị iche iche, ndị a bụ ọkwa ma ọ bụ ọdụ ụgbọ mmiri nwere nchikota ọkụ nke artifact gị na-agafe.

Ọ bụrụ na ị nwere koodu akụrụngwa nke akọwara dị ka Base Service APP mgbe ahụ ọ na-enyere aka echefula edemede niile, ma detuo ha n'akwụkwọ ka ha bụrụ koodu maka arịa a. kwalite artifact ma gbanwee ya ka ị na-aga.

Ajụjụ nyocha onwe onye

Oge site na nkọwa njirimara iji wepụta n'ime mmepụta na 95% nke ikpe bụ ihe na-erughị otu izu? Ọdịmma nke arịa ahụ ọ na-akawanye mma na ọkwa ọ bụla nke pipeline? Ọ nwere akụkọ ọ na-aga? Ị na-eji usoro mbugharị dị iche iche?

Ọ bụrụ na azịza niile bụ ee, mgbe ahụ ị dị nnọọ mma! Dee azịza gị na nkọwa - m ga-enwe obi ụtọ).

Nzaghachi

Nke a bụ omume kacha sie ike niile. Na ogbako DevOpsConf, onye ọrụ ibe si Infobip, na-ekwu maka ya, nwere ntakịrị mgbagwoju anya n'okwu ya, n'ihi na nke a bụ n'ezie ihe mgbagwoju anya banyere eziokwu ahụ bụ na ị ga-enyocha ihe niile!

Kedu ihe bụ DevOps

Dịka ọmụmaatụ, ogologo oge gara aga, mgbe m na-arụ ọrụ na Qik ma anyị ghọtara na anyị kwesịrị iji nyochaa ihe niile. Anyị mere nke a, ma ugbu a anyị nwere ihe 150 na Zabbix, bụ ndị a na-enyocha mgbe niile. Ọ dị egwu, onye ntụzi ọrụ nka tụgharịrị mkpịsị aka ya n'ụlọ nsọ ya:

- Ụmụ okorobịa, gịnị kpatara ị na-eji ihe edoghị anya na-edina sava ahụ n'ike?

Mana otu ihe mere nke gosiri na nke a bụ atụmatụ dị mma n'ezie.

Otu n'ime ọrụ ahụ malitere ịdaba mgbe niile. Na mbụ, ọ daghị, nke na-adọrọ mmasị, koodu ahụ adịghị agbakwunye n'ebe ahụ, n'ihi na ọ bụ onye na-ere ahịa bụ isi, nke na-enweghị ọrụ azụmahịa ọ bụla - ọ na-ezigara ozi n'etiti ọrụ onye ọ bụla. Ọrụ ahụ agbanweghị maka ọnwa 4, na mberede ọ malitere ịdaba na njehie "Segmentation mmejọ".

Ọ wụrụ anyị akpata oyi, meghee eserese anyị na Zabbix, wee pụta na otu izu na ọkara gara aga, omume nke arịrịọ na ọrụ API nke onye na-ere ahịa a na-eji gbanwere nke ukwuu. Ọzọ, anyị hụrụ na ugboro ole izipu ụdị ozi agbanweela. Anyị mechara chọpụta na ndị a bụ ndị ahịa android. Anyị jụrụ:

— Ụmụ okorobịa, gịnị mere unu otu izu na ọkara gara aga?

Na nzaghachi, anyị nụrụ akụkọ na-atọ ụtọ gbasara otu ha siri megharịa UI. O yighị ka onye ọ bụla ga-ekwu ozugbo na ha gbanwere ọbá akwụkwọ HTTP. Maka ndị ahịa Android, ọ dị ka ịgbanwe ncha n'ime ụlọ ịsa ahụ - ha anaghị echeta. N'ihi ya, mgbe nkeji 40 mkparịta ụka gasịrị, anyị chọpụtara na ha agbanweela ọbá akwụkwọ HTTP, na oge ndabara gbanwere. Nke a mere ka omume okporo ụzọ na ihe nkesa API gbanwee, nke mere ka ọ bụrụ ọnọdụ kpatara agbụrụ n'ime onye na-ere ahịa, wee malite ịdaba.

Enweghị nyocha miri emi, ọ gaghị ekwe omume imeghe nke a. Ọ bụrụ na nzukọ ahụ ka nwere nsogbu nke "olulu mmiri", mgbe onye ọ bụla na-atụba ego na ibe ya, nke a nwere ike ịdị ndụ ruo ọtụtụ afọ. Naanị ịmalitegharịa ihe nkesa ahụ n'ihi na ọ gaghị ekwe omume idozi nsogbu ahụ. Mgbe ị na-enyocha, soro, soro ihe omume niile ị nwere, ma jiri nlekota oru dị ka ule - dee koodu ozugbo gosi otu esi enyocha ya, nakwa n'ụdị koodu (anyị enweelarị akụrụngwa dị ka koodu), ihe niile na-apụta ìhè na nkwụ. Ọbụna nsogbu ndị dị mgbagwoju anya dị otú ahụ na-adị mfe nyochaa.

Kedu ihe bụ DevOps

Chịkọta ozi niile gbasara ihe na-eme artifact na ọkwa ọ bụla nke usoro nnyefe - ọ bụghị na mmepụta.

Bulite nlekota na CI, na ụfọdụ ihe ndị bụ isi ka a ga-ahụrịrị ebe ahụ. Mgbe e mesịrị, ị ga-ahụ ha na Test, PredProd, na ibu ule. Na-anakọta ozi na ọkwa niile, ọ bụghị naanị metrics, statistics, kamakwa ndekọ: otu esi akpọpụta ngwa ahụ, anomalies - na-anakọta ihe niile.

Ma ọ bụghị ya, ọ ga-esi ike ịchọpụta ya. Ekwuru m na DevOps dị mgbagwoju anya. Iji nagide mgbagwoju anya a, ịkwesịrị ịnwe nyocha nkịtị.

Ajụjụ maka njide onwe onye

Ọ bụ nleba anya na ịdebanye aha akụrụngwa mmepe maka gị? Mgbe ị na-ede koodu, ndị mmepe gị, gụnyere gị, na-eche maka otu esi enyocha ya?

Ị na-anụ maka nsogbu ndị ahịa? Ị ghọtara onye ahịa nke ọma site na nlekota na ndekọ? Ị ghọtara usoro ahụ nke ọma site na nlekota na ịdebanye aha? Ị na-agbanwe usoro ahụ nanị n'ihi na ị hụrụ na omume na usoro na-eto eto na ị ghọtara na ọzọ 3 izu ihe niile ga-anwụ?

Ozugbo ị nwere ihe atọ ndị a, ị nwere ike iche echiche banyere ụdị ikpo okwu akụrụngwa ị nwere na ụlọ ọrụ gị.

Ikpokoro akụrụngwa

Isi ihe abụghị na ọ bụ ngwaọrụ dị iche iche nke ụlọ ọrụ ọ bụla nwere.

Isi ihe dị n'elu ikpo okwu akụrụngwa bụ na otu niile na-eji ngwaọrụ ndị a ma zụlite ha ọnụ.

O doro anya na e nwere ndị otu dị iche iche na-ahụ maka mmepe nke otu akụkụ nke ikpo okwu akụrụngwa. Mana n'otu oge ahụ, onye injinia ọ bụla na-ebu ọrụ maka mmepe, arụmọrụ na nkwalite nke ikpo okwu akụrụngwa. Na ọkwa dị n'ime ọ na-aghọ ngwá ọrụ nkịtị.

Otu niile na-azụlite usoro akụrụngwa ma jiri nlezianya na-emeso ya dị ka IDE nke ha. N'ime IDE gị ị rụnyere plugins dị iche iche iji mee ka ihe niile dị mma na ngwa ngwa, wee hazie hotkeys. Mgbe imepere koodu Sublime, Atom ma ọ bụ Visual Studio Code, njehie koodu na-abanye na ị ghọtara na ọ gaghị ekwe omume ịrụ ọrụ ma ọlị, ọ na-ewute gị ozugbo wee gbaa ọsọ dozie IDE gị.

Na-emeso ikpo okwu akụrụngwa gị otu ụzọ ahụ. Ọ bụrụ na ị ghọtara na ọ dị ihe na-adịghị mma, hapụ arịrịọ ma ọ bụrụ na ịnweghị ike idozi ya n'onwe gị. Ọ bụrụ na enwere ihe dị mfe, dezie ya n'onwe gị, zipu arịrịọ ịdọrọ, ụmụ okorobịa ahụ ga-atụle ya ma tinye ya. Nke a bụ ụzọ dịtụ iche maka ngwaọrụ injinia n'isi onye nrụpụta.

Ngwá ọrụ akụrụngwa na-eme ka a na-ebufe ihe ndị ahụ site na mmepe na onye ahịa na-aga n'ihu na-eme ka mma. A na-ahazi IP ahụ na nchịkọta akụkọ na-eme koodu na mmepụta. N'ime afọ mmepe, enwere ọtụtụ akụkọ ndị a, ụfọdụ n'ime ha pụrụ iche ma na-emetụta naanị gị - ha enweghị ike ịbụ Googled.

N'oge a, ikpo okwu akụrụngwa na-aghọ uru asọmpi gị, n'ihi na o nwere ihe e wuru n'ime ya nke na-adịghị na ngwá ọrụ asọmpi. Ka IP gị dị omimi, ka uru ị na-asọmpi na-abawanye n'ihe gbasara oge-ahịa. Na-apụta ebe a nsogbu mkpọchi onye na-ere ahịa: Ị nwere ike were ikpo okwu onye ọzọ, mana iji ahụmahụ onye ọzọ, ị gaghị aghọta otú ọ dị gị mkpa. Ee, ọ bụghị ụlọ ọrụ ọ bụla nwere ike ịmepụta ikpo okwu dị ka Amazon. Nke a bụ ahịrị siri ike ebe ahụmahụ ụlọ ọrụ dị mkpa na ọnọdụ ya n'ahịa, na ị nweghị ike iji mkpọchi onye na-ere ahịa n'ebe ahụ. Nke a dịkwa mkpa iche echiche.

Atụmatụ ahụ

Nke a bụ eserese bụ isi nke ikpo okwu akụrụngwa nke ga-enyere gị aka melite omume na usoro niile na ụlọ ọrụ DevOps.

Kedu ihe bụ DevOps

Ka anyị lee ihe mejupụtara ya.

Sistemụ orchestration akụrụngwa, nke na-enye CPU, ebe nchekwa, diski na ngwa na ọrụ ndị ọzọ. N'elu nke a - obere ọrụ: nlekota oru, ndekọ, CI / CD Engine, artifact nchekwa, akụrụngwa dị ka usoro koodu.

Ọrụ ọkwa dị elu: nchekwa data dị ka ọrụ, kwụ n'ahịrị dị ka ọrụ, Load Balance dị ka ọrụ, image resizing dị ka ọrụ, Big Data factory dị ka ọrụ. N'elu nke a - pipeline na-ebuga ndị ahịa gị koodu na-agbanwe agbanwe mgbe niile.

Ị na-enweta ozi gbasara otu sọftụwia gị si arụ ọrụ maka onye ahịa, gbanwee ya, nyeghachi koodu a ọzọ, nweta ozi - yabụ ị na-azụlite ma usoro akụrụngwa yana ngwanrọ gị mgbe niile.

Na eserese ahụ, pipeline nnyefe nwere ọtụtụ ọkwa. Mana nke a bụ eserese schematic nke enyere dịka ọmụmaatụ - ọ dịghị mkpa ịmegharị ya otu otu. Usoro na-emekọrịta ihe na ọrụ dị ka a ga-asị na ha bụ ọrụ - brik ọ bụla nke ikpo okwu na-ebu akụkọ nke ya: otu esi ekenye ihe onwunwe, otu esi amalite ngwa ahụ, na-arụ ọrụ na akụrụngwa, nyochaa, na mgbanwe.

Ọ dị mkpa ịghọta na akụkụ nke ọ bụla nke ikpo okwu na-ebu akụkọ, ma jụọ onwe gị akụkọ nke brik a na-ebu, ma eleghị anya, a ga-atụfu ya ma jiri ọrụ ndị ọzọ dochie ya. Dịka ọmụmaatụ, enwere ike itinye okmeter kama ịwụnye brik? Ikekwe ụmụ okorobịa ahụ emepụtala nka nka karịa ka anyị nwere. Ma eleghị anya ọ bụghị - ikekwe anyị nwere ọkachamara pụrụ iche, anyị kwesịrị ịwụnye Prometheus ma zụlite ya n'ihu.

Ịmepụta ikpo okwu

Nke a bụ usoro nkwurịta okwu dị mgbagwoju anya. Mgbe ị nwere omume ndị bụ isi, ị na-amalite nkwurịta okwu n'etiti ndị injinia dị iche iche na ndị ọkachamara na-emepụta ihe ndị chọrọ na ụkpụrụ, ma na-agbanwe ha mgbe niile gaa na ngwaọrụ na ụzọ dị iche iche. Omenala anyị nwere na DevOps dị mkpa ebe a.

Kedu ihe bụ DevOps
Na omenala ihe niile dị nnọọ mfe - ọ bụ maka imekọ ihe ọnụ na nzikọrịta ozi, ya bụ, ọchịchọ ịrụ ọrụ n'otu ubi na ibe ya, ọchịchọ iji otu ngwá ọrụ ọnụ. Enweghị sayensị roket ebe a - ihe niile dị nnọọ mfe, banal. Dịka ọmụmaatụ, anyị niile bi n'ọnụ ụzọ ma na-edebe ya ọcha - ọkwa omenala dị otú ahụ.

Kedu ihe ị nwere?

Ọzọ, ajụjụ ị nwere ike ịjụ onwe gị.

A raara onwe ya nye ikpo okwu akụrụngwa? Kedu onye na-ahụ maka mmepe ya? Ị ghọtara uru asọmpi nke ikpo okwu akụrụngwa gị?

Ikwesiri ka ị na-ajụ onwe gị ajụjụ ndị a mgbe niile. Ọ bụrụ na enwere ike ịnyefe ihe na ọrụ ndị ọzọ, a ga-ebufe ya; ọ bụrụ na ọrụ ndị ọzọ amalite igbochi mmegharị gị, mgbe ahụ ịkwesịrị ịmepụta usoro n'ime onwe gị.

Yabụ, DevOps...

... nke a bụ usoro mgbagwoju anya, ọ ghaghị inwe:

  • Ngwaahịa dijitalụ.
  • Modul azụmahịa na-emepụta ngwaahịa dijitalụ a.
  • Otu ngwaahịa na-ede koodu.
  • Omume nnyefe na-aga n'ihu.
  • Platform dị ka ọrụ.
  • Akụrụngwa dị ka ọrụ.
  • Akụrụngwa dị ka koodu.
  • Omume dị iche iche maka idowe ntụkwasị obi, wuru n'ime DevOps.
  • Omume nzaghachi nke na-akọwa ya niile.

Kedu ihe bụ DevOps

Ị nwere ike iji eserese a, na-akọwapụta na ya ihe ị nwere na ụlọ ọrụ gị n'ụdị ụfọdụ: ọ mepụtara ma ọ bụ ka ọ dị mkpa ka ịmepụta ya.

Ọ ga-agwụ n'ime izu ole na ole DevOpsConf 2019. dị ka akụkụ nke RIT++. Bịa na ogbako ahụ, ebe ị ga-ahụ ọtụtụ akụkọ dị mma gbasara nnyefe na-aga n'ihu, akụrụngwa dịka koodu na mgbanwe DevOps. Debe tiketi gị, ngwụcha ọnụ ahịa ikpeazụ bụ Mee 20

isi: www.habr.com

Tinye a comment