Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ụzọ nso Akaraka (Infrastructure as Code) na-agụnye ọ bụghị naanị nke koodu nke echekwara na ebe nchekwa, kamakwa nke ndị mmadụ na usoro ndị gbara gburugburu koodu a. Ọ ga-ekwe omume ijikwa ụzọ sitere na mmepe ngwanrọ gaa na njikwa akụrụngwa na nkọwa? Ọ ga-adị mma iburu echiche a n'uche mgbe ị na-agụ akụkọ ahụ.

English version

Nke a bụ transcript nke m arụmọrụ on DevopsConf 2019-05-28.

Ihe ngosi na vidiyo

Akụrụngwa dị ka akụkọ bash

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ka e were ya na ị bịara ọrụ ọhụrụ, ha asị gị: “anyị nwere Akụrụngwa dị ka Koodu". N'ezie ọ na-apụta Akụrụngwa dị ka akụkọ bash ma ọ bụ ọmụmaatụ Akwụkwọ dị ka akụkọ bash. Nke a bụ ezigbo ọnọdụ, dịka ọmụmaatụ, otu okwu yiri nke Denis Lysenko kọwara n'okwu Otu esi edochi akụrụngwa niile wee malite ịrahụ ụra nke ọma, ọ gwara ka ha si nweta akụrụngwa na-arụkọ ọrụ ọnụ site na akụkọ bash.

Site n'ọchịchọ ụfọdụ, anyị nwere ike ikwu nke ahụ Akụrụngwa dị ka akụkọ bash Nke a dị ka koodu:

  1. reproducibility: Ị nwere ike iwere akụkọ ihe mere eme bash, na-agba ọsọ iwu site n'ebe ahụ, ma ị nwere ike, site n'ụzọ, nweta nhazi ọrụ dị ka mmepụta.
  2. nsụgharị: ị maara onye batara na ihe ha mere, ọzọ, ọ bụghị eziokwu na nke a ga-eduga gị na nhazi ọrụ na ọpụpụ.
  3. akụkọ ihe mere eme: akụkọ onye mere ihe. naanị ị gaghị enwe ike iji ya ma ọ bụrụ na ihe nkesa efunahụ gị.

Kedu ihe m kwesịrị ime?

Akụrụngwa dị ka Koodu

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ọbụna ndị dị otú ahụ a iju ikpe dị ka Akụrụngwa dị ka akụkọ bash ị nwere ike ịdọrọ ya na ntị Akụrụngwa dị ka Koodu, ma mgbe anyị chọrọ ime ihe dị mgbagwoju anya karịa ezigbo ihe nkesa LAMP ochie, anyị ga-abịa na njedebe na koodu a kwesịrị ka a gbanwee, gbanwee, melite. Ọzọ anyị ga-achọ ịtụle myirịta dị n'etiti Akụrụngwa dị ka Koodu na mmepe software.

Akọrọ

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

N'elu ọrụ mmepe sistemụ nchekwa, enwere obere ọrụ hazie SDS kwa oge: anyị na-ahapụ ntọhapụ ọhụrụ - ọ dị mkpa ka ebupụ ya maka nyocha ọzọ. Ọrụ a dị nnọọ mfe:

  • banye ebe a site na ssh wee mebie iwu.
  • detuo faịlụ ebe ahụ.
  • dozie nhazi ebe a.
  • malite ọrụ ahụ
  • ...
  • PROFIT!

Maka mgbagha a kọwara, bash karịrị nke ọma, karịsịa na mmalite nke ọrụ ahụ, mgbe ọ na-amalite. Nke a ọ dịghị njọ na ị na-eji bash, ma ka oge na-aga, a na-arịọ arịrịọ ka itinye ihe yiri ya, mana dịtụ iche. Ihe mbụ na-abata n'uche bụ copy-paste. Ma ugbu a, anyị enweelarị edemede abụọ yiri nke ahụ nke na-eme ihe fọrọ nke nta ka ọ bụrụ otu ihe. Ka oge na-aga, ọnụ ọgụgụ nke scripts toro, na anyị chere ihu n'eziokwu na e nwere ụfọdụ azụmahịa mgbagha maka deploying ihe nrụnye nke kwesịrị ka mekọrịta n'etiti dị iche iche scripts, nke a bụ nnọọ mgbagwoju anya.

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ọ na-apụta na enwere omume dị ka MKWA (Emeghachila Onwe Gị). Echiche a bụ ijikwa koodu dị adị. Ọ dị ka ọ dị mfe, mana anyị abịaghị na nke a ozugbo. N'ọnọdụ anyị, ọ bụ echiche banal: ikewapụ nhazi na scripts. Ndị ahụ. azụmahịa mgbagha nke otú echichi na-deployed iche iche, configs iche iche.

SOLID maka CFM

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ka oge na-aga, ọrụ ahụ toro na eke n'ihu bụ ntoputa nke Ansible. Isi ihe kpatara ọdịdị ya bụ na enwere ọkachamara na otu ahụ na emebeghị bash maka mgbagha mgbagwoju anya. Ansible malitekwara inwe mgbagha mgbagwoju anya. Iji gbochie mgbagwoju anya mgbagha ka ọ bụrụ ọgba aghara, enwere ụkpụrụ nhazi koodu na mmepe ngwanrọ OKWU Ọzọkwa, dịka ọmụmaatụ, Grigory Petrov na akụkọ "Gịnị kpatara onye ọkachamara IT ji chọọ akara nkeonwe" welitere ajụjụ ahụ na e mere mmadụ n'ụzọ ga-adịrị ya mfe ịrụ ọrụ na ụfọdụ ụlọ ọrụ ọha na eze, na mmepe software ndị a. bụ ihe. Ọ bụrụ na anyị ejikọta echiche abụọ a ma nọgide na-azụlite ha, anyị ga-achọpụta na anyị nwekwara ike iji OKWU iji mee ka ọ dịkwuo mfe idobe na gbanwee echiche a n'ọdịnihu.

Ụkpụrụ Ọrụ Otu

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Klas ọ bụla na-arụ naanị otu ọrụ.

Ọ dịghị mkpa ịgwakọta koodu na-eme monolithic Chineke spaghetti nnukwu anụ mmiri. Ihe akụrụngwa kwesịrị ịbụ brik dị mfe. Ọ na-apụta na ọ bụrụ na ị kewaa akwụkwọ egwu egwu nke nwere ike ịbụ n'ime obere iberibe, gụọ ọrụ ndị nwere ike ime, mgbe ahụ ọ dị mfe idowe ha.

Ụkpụrụ mechiri emechi

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ụkpụrụ mepere emepe/emechi.

  • Mepee ka ndọtị: pụtara na enwere ike ịgbatị omume nke ụlọ ọrụ site na imepụta ụdị ụlọ ọrụ ọhụrụ.
  • Emechiri ka ịgbanwee: N'ihi ịgbatị omume nke ụlọ ọrụ, enweghị mgbanwe ọ bụla a ga-eme na koodu na-eji ụlọ ọrụ ndị ahụ.

Na mbido, anyị bufere akụrụngwa nnwale na igwe mebere, mana n'ihi na mgbagha azụmaahịa nke ntinye dị iche na mmejuputa ya, anyị gbakwunyere na-atụgharị gaa na baremetall n'enweghị nsogbu ọ bụla.

Ụkpụrụ ngbanwe nke Liskov

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ụkpụrụ ngbanwe nke Barbara Liskov. A ghaghị iji ihe atụ nke subtypes dochie ihe ndị dị na mmemme na-enweghị ịgbanwe usoro nhazi nke ọma.

Ọ bụrụ na ị na-ele ya anya nke ọma, ọ bụghị akụkụ nke otu ọrụ ọ bụla nwere ike itinye n'ọrụ ebe ahụ OKWU, ọ na-adịkarị gbasara CFM, dịka ọmụmaatụ, na ọrụ ọzọ ọ dị mkpa iji tinye ngwa Java igbe n'elu Java dị iche iche, sava ngwa, ọdụ data, OS, wdg. N'iji ihe atụ a mee ihe, m ga-atụle ụkpụrụ ndị ọzọ OKWU

N'ọnọdụ anyị, enwere nkwekọrịta n'ime ndị otu akụrụngwa na ọ bụrụ na anyị arụnyere ọrụ imbjava ma ọ bụ oraclejava, mgbe ahụ anyị nwere ọnụọgụ abụọ java. Nke a dị mkpa n'ihi na Ọrụ elu na-adabere na omume a; N'otu oge ahụ, nke a na-enye anyị ohere iji dochie otu Java mmejuputa iwu / ụdị na-enweghị na-agbanwe agbanwe nke ntinye uche mgbagha.

Nsogbu dị ebe a bụ n'eziokwu na ọ gaghị ekwe omume ịme ihe a na Ansible, n'ihi nke a ụfọdụ nkwekọrịta pụtara n'ime otu.

Ụkpụrụ nkewa nke Interface

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ụkpụrụ nkewa nke interface: “Ọtụtụ ihu ndị ahịa kpọmkwem dị mma karịa otu interface ebumnuche izugbe.

Na mbụ, anyị gbalịrị itinye mgbanwe niile nke ntinye ngwa n'ime otu akwụkwọ egwu nwere ike, ma ọ siri ike ịkwado, na ịbịaru nso mgbe anyị nwere interface mpụga akọwapụtara (onye ahịa na-atụ anya ọdụ ụgbọ mmiri 443), mgbe ahụ enwere ike ikpokọta akụrụngwa site na onye ọ bụla. brik maka otu mmejuputa iwu.

Ụkpụrụ Mgbanwe Ndabere

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ụkpụrụ nke ntụgharị ịdabere na ya. Modul na ọkwa dị elu ekwesịghị ịdabere na modul na ọkwa dị ala. Ụdị modul abụọ ahụ ga-adabere na abstractions. Abstraction ekwesịghị ịdabere na nkọwa. Nkọwa ga-adabere na abstractions.

N'ebe a, ihe atụ ga-adabere na ihe mgbochi.

  1. Otu n'ime ndị ahịa ahụ nwere igwe ojii nkeonwe.
  2. Anyị nyere iwu igwe mebere n'ime igwe ojii.
  3. Ma n'ihi ọdịdị nke ígwé ojii, ejikọtara ntinye ngwa na nke hypervisor VM nọ.

Ndị ahụ. Esemokwu ntinye ngwa ngwa dị elu na-aga na ịdabere na ọkwa dị ala nke hypervisor, nke a pụtara nsogbu mgbe ị na-ejighachi echiche a. Emela ya otú a.

Mmekọrịta

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Akụrụngwa dị ka koodu abụghị naanị maka koodu, kamakwa maka mmekọrịta dị n'etiti koodu na ndị mmadụ, banyere mmekọrịta n'etiti ndị na-emepụta akụrụngwa.

Ihe kpatara ụgbọ ala

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ka anyị were ya na ị nwere Vasya na ọrụ gị. Vasya maara ihe niile gbasara akụrụngwa gị, gịnị ga-eme ma ọ bụrụ na Vasya ga-apụ na mberede? Nke a bụ ọnọdụ dị adị n'ezie, n'ihi na ụgbọ ala nwere ike ịkụ ya. Mgbe ụfọdụ ọ na-eme. Ọ bụrụ na nke a emee na ihe ọmụma banyere koodu ahụ, usoro ya, otú o si arụ ọrụ, ọdịdị na okwuntughe adịghị ekesa n'etiti otu, mgbe ahụ ị nwere ike izute ọtụtụ ọnọdụ na-adịghị mma. Iji belata ihe egwu ndị a ma kesaa ihe ọmụma n'ime otu, ị nwere ike iji ụzọ dị iche iche

Na-emekọ ihe ọnụ

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ọ dịghị ka dị ka egwuregwu, na ndị admins na-aṅụ biya, gbanwere okwuntughe, na ihe analog nke mmemme abụọ. Ndị ahụ. ndị injinia abụọ na-anọdụ ala n'otu kọmpụta, otu keyboard wee malite ịhazi akụrụngwa gị ọnụ: ịtọlite ​​​​sava, dee ọrụ nwere ike ime, wdg. Ọ dị mma, mana ọ naghị arụ ọrụ maka anyị. Mana ikpe pụrụ iche nke omume a rụrụ ọrụ. Onye ọrụ ọhụrụ abatala, onye ndụmọdụ ya na-arụkọ ọrụ ọnụ na ya, na-arụ ọrụ ma na-enyefe ihe ọmụma.

Ihe ọzọ pụrụ iche bụ oku merenụ. N'oge nsogbu, otu ndị nọ n'ọrụ na ndị na-etinye aka na-ezukọ, a na-ahọpụta otu onye ndu, bụ onye na-ekerịta ihuenyo ya ma na-ekwupụta ụgbọ oloko nke echiche. Ndị ọzọ sonyere na-agbaso echiche onye ndu, ledo aghụghọ site na njikwa, lelee na ha agbagharaghị ahịrị n'ime ndekọ ahụ, wee mụta ihe ọhụrụ gbasara sistemụ. Ụzọ a na-arụ ọrụ karịa ka ọ dị.

Nyochaa Usoro

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

N'iburu n'uche, ọ dị irè karịa ikesa ihe ọmụma gbasara akụrụngwa yana otu o si arụ ọrụ site na iji nyocha koodu:

  • A kọwara akụrụngwa ahụ site na koodu dị na ebe nchekwa.
  • Mgbanwe na-eme na ngalaba dị iche.
  • N'oge a na-arịọ arịrịọ, ị nwere ike ịhụ delta nke mgbanwe na akụrụngwa.

Ihe pụtara ìhè ebe a bụ na ahọpụtara ndị na-enyocha ya n'otu n'otu, dịka usoro nhazi, ya bụ. na ụfọdụ ogo nke puru omume ị ga-arịgo n'ime a ọhụrụ mpempe akụrụngwa.

Ụdị koodu

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ka oge na-aga, squabbles malitere ịpụta n'oge nyocha, n'ihi na ... ndị na-enyocha ya nwere ụdị nke ha na ntụgharị nke ndị nyocha ji ụdị dị iche iche dokọba ha: oghere 2 ma ọ bụ 4, camelCase ma ọ bụ snake_case. Ọ gaghị ekwe omume ime nke a ozugbo.

  • Echiche mbụ bụ ịkwado iji linter, mgbe niile, onye ọ bụla bụ onye injinia, onye ọ bụla maara ihe. Mana ndị editọ dị iche iche, OS, adịghị adaba
  • Nke a ghọrọ bot nke na-ede na slack maka nsogbu ọ bụla na-eme ma jikọta mmepụta linter. Mana n'ọtụtụ ọnọdụ enwere ihe ndị ka mkpa ịme yana koodu ahụ ka edoghị ya.

Green Mee Master

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Oge na-aga, na anyị abịawo ná nkwubi okwu na-eme nke na-agaghị agabiga ule ụfọdụ enweghị ike kwere na nna ukwu. Voila! Anyị chepụtara Green Build Master, nke a na-eme na mmepe ngwanrọ ogologo oge:

  • A na-eme mmepe na ngalaba dị iche.
  • Ule na-agba na eri a.
  • Ọ bụrụ na ule ahụ daa, koodu ahụ agaghị eme ya na nna ukwu.

Ime mkpebi a wutere nke ukwuu, n'ihi na... kpatara ọtụtụ esemokwu, mana ọ bara uru, n'ihi na. Nyocha malitere ịnata arịrịọ maka mergers na-enweghị ọdịiche dị na ụdị, na ka oge na-aga, ọnụ ọgụgụ nke ebe nsogbu malitere ibelata.

Nlele IaC

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Na mgbakwunye na ịlele ụdị, ị nwere ike iji ihe ndị ọzọ, dịka ọmụmaatụ, lelee na akụrụngwa gị nwere ike ibunye n'ezie. Ma ọ bụ lelee na mgbanwe na akụrụngwa agaghị eduga na mfu ego. Gịnị mere nke a nwere ike ịdị mkpa? Ajụjụ dị mgbagwoju anya na nke nkà ihe ọmụma, ọ ka mma iji akụkọ zaa na n'ụzọ ụfọdụ enwere auto-scaler na Powershell nke na-enyochaghị ọnọdụ oke => e kere VM karịa ka ọ dị mkpa => onye ahịa mefuru ego karịa atụmatụ. Nke a adịghị ụtọ nke ukwuu, mana ọ ga-ekwe omume ịnweta njehie a n'oge mbụ.

Mmadụ nwere ike ịjụ, gịnị kpatara na-eme ka akụrụngwa dị mgbagwoju anya dị mgbagwoju anya karị? Nnwale maka akụrụngwa, dịka maka koodu, abụghị maka ime ka ọ dị mfe, mana gbasara ịmara ka akụrụngwa gị kwesịrị isi rụọ ọrụ.

Pyramid Nnwale IaC

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Nnwale IaC: Nyocha nke Static

Ọ bụrụ na i tinye akụrụngwa niile n'otu oge wee lelee na ọ na-arụ ọrụ, ị nwere ike ịchọpụta na ọ na-ewe oge buru ibu ma chọọ nnukwu oge. Ya mere, ihe ndabere ga-abụrịrị ihe na-arụ ọrụ ngwa ngwa, enwere ọtụtụ ya, ọ na-ekpuchikwa ọtụtụ ebe ochie.

Bash dị aghụghọ

Ka anyị lee otu ihe atụ na-enweghị isi. họrọ faịlụ niile dị ugbu a ma detuo ya na ebe ọzọ. Ihe mbụ na-abata n'uche:

for i in * ; do 
    cp $i /some/path/$i.bak
done

Kedu ihe ma ọ bụrụ na enwere oghere na aha faịlụ? Ọ dị mma, ọ dị mma, anyị maara ihe, anyị maara ka esi eji nkwuputa okwu:

for i in * ; do cp "$i" "/some/path/$i.bak" ; done

Ị mere nke ọma? Mba! Gịnị ma ọ bụrụ na ọ dịghị ihe na ndekọ, i.e. globbing agaghị arụ ọrụ.

find . -type f -exec mv -v {} dst/{}.bak ;

Emeela nke ọma ugbu a? Mba... Chefuru ihe nwere ike ịbụ na aha faịlụ n.

touch x
mv x  "$(printf "foonbar")"
find . -type f -print0 | xargs -0 mv -t /path/to/target-dir

Ngwa nyocha static

Enwere ike ijide nsogbu ahụ site na nzọụkwụ gara aga mgbe anyị chefuru okwu ndị ahụ, maka nke a, enwere ọtụtụ ọgwụgwọ na okike. Shellcheck, n'ozuzu, e nwere ọtụtụ n'ime ha, ma eleghị anya ị nwere ike ịchọta linter maka nchịkọta gị n'okpuru IDE gị.

asụsụ
Ngwá Ọrụ

bash
Shellcheck

Ruby
RuboCop

eke
pylint

azịza
Lint nwere ike

Nnwale IaC: Nnwale nkeji

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Dị ka anyị hụrụ site na ihe atụ gara aga, linters adịghị enwe ike ime ihe niile na enweghị ike ịkọwa ebe nsogbu niile. Ọzọkwa, site na ntụnyere na nnwale na mmepe ngwanrọ, anyị nwere ike icheta ule otu. Ihe na-abata n'uche ozugbo bụ shunit, junit, spec, nke kacha mma. Ma kedu ihe a ga-eme na onye nwere ike, onye isi nri, saltstack na ndị ọzọ dị ka ha?

Na mmalite anyị kwuru banyere ya OKWU nakwa na akụrụngwa anyị kwesịrị ịbụ obere brik. Oge ha eruola.

  1. A na-ekewa akụrụngwa ahụ na obere brik, dịka ọmụmaatụ, ọrụ ndị nwere ike ime.
  2. A na-etinye ụfọdụ ụdị gburugburu ebe obibi, ma ọ bụ docker ma ọ bụ VM.
  3. Anyị na-etinye ọrụ anyị nwere ike ime na gburugburu ule a.
  4. Anyị na-elele na ihe niile na-arụ ọrụ dị ka anyị tụrụ anya ya (anyị na-agba ọsọ ule).
  5. Anyị na-ekpebi OK ma ọ bụ na ọ bụghị mma.

Nnwale IaC: Ngwa nnwale nkeji

Ajụjụ, kedu ihe bụ ule maka CFM? Ị nwere ike ịme edemede ahụ naanị, ma ọ bụ ị nwere ike iji ngwọta emebere maka nke a:

CFM
Ngwá Ọrụ

Eziokwu
Testinfra

isi
Inyepu

isi
Ụdị nke sava

nnu nnu
Gos

Ọmụmaatụ maka testinfra, ịlele ndị ọrụ test1, test2 dị ma nọ na otu sshusers:

def test_default_users(host):
    users = ['test1', 'test2' ]
    for login in users:
        assert host.user(login).exists
        assert 'sshusers' in host.user(login).groups

Kedu ihe ị ga-ahọrọ? Ajụjụ a dị mgbagwoju anya na enweghị mgbagwoju anya, nke a bụ ọmụmaatụ mgbanwe na ọrụ na github maka 2018-2019:

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Usoro ule IaC

Ajụjụ na-ebilite: otu esi etinye ya niile ma malite ya? Nwere ike were ya mee ya onwe gi ọ bụrụ na enwere ọnụ ọgụgụ ndị injinia zuru oke. Ma ọ bụ ị nwere ike were ngwọta edoziworo, n'agbanyeghị na ọ bụghị ọtụtụ n'ime ha:

CFM
Ngwá Ọrụ

Eziokwu
Molekul

isi
Nwalee kichin

Terraform
Nke kacha njọ

Ọmụmaatụ mgbanwe na oru ngo na github maka 2018-2019:

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Molecule vs. Ụlọ nyocha

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Na mbụ anyị nwara iji testkitchen:

  1. Mepụta VM n'otu aka ahụ.
  2. Tinye ọrụ kwesịrị ekwesị.
  3. Gbaa nyocha.

Maka ọrụ 25-35 ọ na-arụ ọrụ 40-70 nkeji, nke dị ogologo.

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Nzọụkwụ ọzọ bụ mgbanwe na jenkins/docker/ansible/molecule. Idiologically ihe niile bụ otu

  1. Akwụkwọ egwuregwu.
  2. Hazie ọrụ ndị ahụ.
  3. Mwepụta akpa
  4. Tinye ọrụ kwesịrị ekwesị.
  5. Gbaa testinfra.
  6. Lelee onwe ike.

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ịkọ maka ọrụ 40 na ule maka iri na abuo malitere iwe ihe dị ka nkeji iri na ise.

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ihe ị ga-ahọrọ dabere n'ọtụtụ ihe, dị ka nchịkọta ejiri, nka na otu, wdg. ebe a onye ọ bụla na-ekpebi n'onwe ya ka ọ ga-esi mechie ajụjụ ule Unit

Nnwale IaC: Nnwale njikọta

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Nzọụkwụ ọzọ na pyramid nnwale akụrụngwa ga-abụ ule ntinye. Ha yitere ule Unit:

  1. A na-ekewa akụrụngwa ahụ na obere brik, dịka ọmụmaatụ ọrụ ndị nwere ike ime.
  2. A na-etinye ụfọdụ ụdị gburugburu ebe obibi, ma ọ bụ docker ma ọ bụ VM.
  3. Maka gburugburu ule a tinye ụyọkọ Ọrụ kwesịrị ekwesị.
  4. Anyị na-elele na ihe niile na-arụ ọrụ dị ka anyị tụrụ anya ya (anyị na-agba ọsọ ule).
  5. Anyị na-ekpebi OK ma ọ bụ na ọ bụghị mma.

N'ikwu okwu n'ụzọ dị mfe, anyị anaghị elele arụmọrụ nke otu akụkụ nke sistemu ahụ dị ka na nnwale otu, anyị na-elele ka esi ahazi sava ahụ n'ozuzu ya.

Nnwale IaC: Ọgwụgwụ ruo ngwụcha ule

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

N'elu pyramid ahụ, ule Ọgwụgwụ ruo Ọgwụgwụ na-ekele anyị. Ndị ahụ. Anyị anaghị elele arụmọrụ nke sava dị iche, edemede dị iche, ma ọ bụ brik dị iche nke akụrụngwa anyị. Anyị na-enyocha na ọtụtụ sava jikọtara ọnụ, akụrụngwa anyị na-arụ ọrụ dịka anyị tụrụ anya ya. N'ụzọ dị mwute, ahụtụbeghị m ngwọta igbe igbe dị njikere, eleghị anya n'ihi na ... Akụrụngwa na-abụkarị ihe pụrụ iche ma sie ike ịmepụta ma mepụta usoro maka ule. N'ihi ya, onye ọ bụla na-emepụta ihe ngwọta nke ya. Enwere ọchịchọ, mana ọ nweghị azịza. Ya mere, m ga-agwa gị ihe e nwere iji mee ka ndị ọzọ na-ada ụda echiche ma ọ bụ na-ete imi m n'eziokwu na ihe niile e chepụtara ogologo oge gara aga n'ihu anyị.

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ọrụ nwere akụkọ ihe mere eme bara ụba. A na-eji ya na nnukwu ụlọ ọrụ ma eleghị anya, onye ọ bụla n'ime gị ejirila ya gafee ụzọ na-apụtaghị ìhè. Ngwa na-akwado ọtụtụ ọdụ data, ntinye, wdg. Ịmara ihe akụrụngwa nwere ike ịdị ka ọtụtụ faịlụ docker, na ịmara ule ndị a ga-agba na gburugburu ebe Jenkins.

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Atụmatụ a na-arụ ọrụ ruo ogologo oge, ruo n'ime usoro nnyocha anyị anwabeghị ibufe nke a na Openshift. Akpa ndị ahụ ka dị otu, mana ebe mmalite agbanweela (ndewo DRY ọzọ).

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Echiche nyocha ahụ gara n'ihu, na n'ime ọrụ mepere emepe, ha chọtara ihe dị ka APB (Akwụsịghị Playbook Bundle), nke na-enye gị ohere ị nweta ihe ọmụma maka otu esi ebuga akụrụngwa n'ime akpa. Ndị ahụ. enwere ihe omuma nke enwere ike imeghari, nke a ga-anwale maka otu esi etinye akụrụngwa.

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Ihe ndị a niile dị mma ruo mgbe anyị banyere n'ime akụrụngwa dị iche iche: anyị chọrọ Windows maka ule. N'ihi ya, ihe ọmụma nke ihe, ebe, otu esi ebuga, na ule dị na jenkins.

mmechi

Ihe m mụtara site na Nnwale 200 ahịrị nke koodu akụrụngwa

Akụrụngwa dị ka Koodu bụ

  • Koodu n'ime ebe nchekwa.
  • Mmekọrịta mmadụ.
  • Nnwale akụrụngwa.

njikọ

isi: www.habr.com

Tinye a comment