Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Indlela yokusondela IaC (I-Infrastructure as Code) ayiquki kuphela ikhowudi egcinwe kwindawo yokugcina, kodwa kunye nabantu kunye neenkqubo ezijikeleze le khowudi. Ngaba kunokwenzeka ukuphinda usebenzise iindlela ukusuka kuphuhliso lwesoftware ukuya kulawulo lweziseko ezingundoqo kunye nenkcazo? Kuya kuba yinto efanelekileyo ukugcina le ngcamango engqondweni ngelixa ufunda inqaku.

IsiNgesi

Lo ngumbhalo wam imisebenzi phezu DevopsConf 2019-05-28.

Izilayidi kunye neevidiyo

Iziseko zophuhliso njengembali ye-bash

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Masithi uza kwiprojekthi entsha, kwaye bathi kuwe: "Siye Izibonelelo njengeKhowudi". Enyanisweni kuvela Iziseko zophuhliso njengembali ye-bash okanye umzekelo Uxwebhu njengembali ye-bash. Le yimeko yangempela, umzekelo, imeko efanayo yachazwa nguDenis Lysenko kwintetho Indlela yokubuyisela yonke iziseko zophuhliso kwaye uqale ukulala ngokuvakalayo, uxelele indlela abasifumana ngayo isiseko esihambelanayo seprojekthi ukusuka kwimbali ye-bash.

Ngomnqweno othile, sinokuthi Iziseko zophuhliso njengembali ye-bash oku kufana nekhowudi:

  1. ukuvelisa kwakhona: Ungathatha imbali ye-bash, sebenzisa imiyalelo ukusuka apho, kwaye unokuthi, ngendlela, ufumane uqwalaselo olusebenzayo njengemveliso.
  2. uguqulelo: uyazi ukuba ngubani ongenayo kunye nento abayenzayo, kwakhona, akusiyo inyani ukuba oku kuya kukukhokelela kuqwalaselo lokusebenza ekuphumeni.
  3. imbali: libali lokuba ngubani owenze ntoni. kuphela awuzukwazi ukuyisebenzisa ukuba ulahlekelwe ngumncedisi.

Yintoni endiyenzayo?

Izibonelelo njengeKhowudi

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Nokuba imeko engaqhelekanga njenge Iziseko zophuhliso njengembali ye-bash ungayitsala ngeendlebe Izibonelelo njengeKhowudi, kodwa xa sifuna ukwenza into enzima ngakumbi kunomncedisi omdala we-LAMP, siya kufikelela kwisigqibo sokuba le khowudi kufuneka iguqulwe ngandlela-thile, iguqulwe, iphuculwe. Okulandelayo singathanda ukuqwalasela ungqamaniso phakathi Izibonelelo njengeKhowudi kunye nophuhliso lwesoftware.

YOMILE

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Kwiprojekthi yophuhliso lwenkqubo yokugcina, bekukho umsebenzi ongaphantsi qwalasela ngamaxesha athile iSDS: sikhupha ukhupho olutsha - lufuna ukukhutshwa kuvavanyo olongezelelweyo. Umsebenzi ulula kakhulu:

  • ngena apha nge ssh kwaye wenze umyalelo.
  • khuphela ifayile apho.
  • lungisa uqwalaselo apha.
  • qala inkonzo apho
  • ...
  • INZUZO!

Kwi-logic echazwe, i-bash ingaphezulu kokwaneleyo, ngakumbi kwizigaba zokuqala zeprojekthi, xa iqala. Oku akulunganga ukuba usebenzise i-bash, kodwa ekuhambeni kwexesha kukho izicelo zokusebenzisa into efanayo, kodwa eyahlukileyo kancinane. Into yokuqala ethi qatha engqondweni kukukopa-uncamathisele. Kwaye ngoku sele sinemibhalo emibini efana kakhulu eyenza into enye. Ngokuhamba kwexesha, inani lezikripthi lakhula, kwaye sasijongene nenyaniso yokuba kukho ingqiqo yeshishini elithile lokuhambisa ufakelo olufuna ukulungelelaniswa phakathi kwemibhalo eyahlukeneyo, oku kunzima kakhulu.

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Kuvela ukuba kukho umkhuba onjengo-DRY (Musa ukuziphindaphinda). Umbono kukusebenzisa kwakhona ikhowudi ekhoyo. Kuvakala kulula, kodwa asizange size kule nto ngoko nangoko. Kwimeko yethu, yayiyingcamango ye-banal: ukwahlula i-configs kwi-scripts. Ezo. ingqiqo yeshishini yendlela ufakelo olusetyenziswa ngayo ngokwahlukeneyo, luqwalasela ngokwahlukeneyo.

I-SOLID ye-CFM

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Ekuhambeni kwexesha iprojekthi yakhula kwaye ukuqhubeka kwendalo yaba kukuvela kweAnsible. Esona sizathu siphambili sokubonakala kwayo kukuba kukho ubuchule kwiqela kwaye i-bash ayilungiselelwe ingqiqo enzima. I-Ansible nayo yaqala ukuqulatha ingqiqo entsonkothileyo. Ukuthintela ingqiqo enzima ekuguqukeni kwisiphithiphithi, kukho imigaqo yombutho wekhowudi ekuphuhliseni isoftware OKUQINISILEYO Kwakhona, umzekelo, uGrigory Petrov kwingxelo ethi "Kutheni ingcali ye-IT idinga uphawu lomntu" iphakamise umbuzo wokuba umntu uyilwe ngendlela yokuba kube lula kuye ukuba asebenze kunye namaqumrhu athile asekuhlaleni, kuphuhliso lwesoftware ezi. zizinto. Ukuba sidibanisa ezi ngcamango zimbini kwaye siqhubeke siziphuhlisa, siya kuqaphela ukuba sinokusebenzisa OKUQINISILEYO ukwenza kube lula ukugcina kunye nokuguqula le ngqiqo kwixesha elizayo.

UmGaqo woXanduva oluNye

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Iklasi nganye yenza umsebenzi omnye kuphela.

Akukho mfuneko yokuxuba ikhowudi kwaye wenze izilo ze-spaghetti zaphezulu ze-monolithic. Isiseko kufuneka sibe nezitena ezilula. Kuyavela ukuba ukuba uyahlulahlula i-Ansible playbook ibe ngamaqhekeza amancinci, funda iindima ezifanelekileyo, ngoko kulula ukuzigcina.

I-Open Closed Principle

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Umgaqo ovuliweyo/ovaliweyo.

  • Vula ulwandiso: kuthetha ukuba ukuziphatha kwequmrhu kunokwandiswa ngokuyila iindidi ezintsha zequmrhu.
  • Ivaliwe ukutshintsha: Ngenxa yokwandisa ukuziphatha kwequmrhu, akukho lutshintsho kufuneka lwenziwe kwikhowudi esebenzisa loo mibutho.

Ekuqaleni, sahambisa isiseko sovavanyo koomatshini ababonakalayo, kodwa ngenxa yokuba ingqiqo yeshishini lokusasaza yayahlukene nokuphunyezwa, songeze ukuqengqeleka kwi-baremetall ngaphandle kweengxaki.

I-Liskov Substitution Principle

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Umgaqo wokuthatha indawo kaBarbara Liskov. Izinto ezikwinkqubo kufuneka zithathelwe indawo ngemizekelo yesubtypes zazo ngaphandle kokutshintsha uphumezo oluchanekileyo lwenkqubo.

Ukuba uyijonga ngokubanzi, ayilophawu lweprojekthi ethile enokusetyenziswa apho OKUQINISILEYO, ngokuqhelekileyo malunga neCFM, umzekelo, kwenye iprojekthi kuyimfuneko ukuhambisa isicelo sebhokisi yeJava phezu kweJava eyahlukeneyo, iiseva zesicelo, i-database, i-OS, njl. Ndisebenzisa lo mzekelo, ndiza kuqwalasela eminye imigaqo OKUQINISILEYO

Kwimeko yethu, kukho isivumelwano phakathi kweqela leziseko ezingundoqo ukuba ukuba sifake i-imbjava okanye indima ye-oraclejava, ngoko sine-java binary executable. Oku kuyimfuneko ngenxa yokuba Iindima eziphezulu zixhomekeke kule ndlela yokuziphatha; Kwangaxeshanye, oku kusivumela ukuba sithathe indawo yokuphunyezwa/uguqulelo lwejava enye ngaphandle kokutshintsha ingqiqo yokusasazwa kwesicelo.

Ingxaki apha ikhona kwinto yokuba akunakwenzeka ukuphumeza oku kwi-Ansible, ngenxa yoko ezinye izivumelwano zivela kwiqela.

I-Interface Segregation Principle

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Umgaqo wokwahlulwa kojongano: “Ujongano oluninzi olungqale ngqo kubathengi lungcono kunojongano lwenjongo enye jikelele.

Ekuqaleni, sizame ukubeka lonke uguquko lokusasazwa kwesicelo kwincwadi yokudlala eAnsible, kodwa kwakunzima ukuxhasa, kunye nendlela xa sinojongano lwangaphandle olukhankanyiweyo (umxhasi ulindele izibuko 443), emva koko isiseko singahlanganiswa kumntu ngamnye. izitena zokuphunyezwa okuthile.

I-Dependency Inversion Principle

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Umgaqo wokuxhomekeka kokuxhomekeka. Iimodyuli kumanqanaba aphezulu akufanele zixhomekeke kwiimodyuli kumanqanaba aphantsi. Zombini iintlobo zeemodyuli kufuneka zixhomekeke kwizinto ezithathwayo. Ukuthabatha akufuneki kuxhomekeke kwiinkcukacha. Iinkcukacha mazixhomekeke kwizinto ezithathwayo.

Apha umzekelo uya kusekelwa kwi-antipattern.

  1. Omnye wabathengi wayenelifu labucala.
  2. Saodola oomatshini bokwenene ngaphakathi kwilifu.
  3. Kodwa ngenxa yobume belifu, ukusasazwa kwesicelo kubotshelelwe apho i-hypervisor i-VM yayikhona.

Ezo. Ingqiqo yokusasazwa kwesicelo esikwinqanaba eliphezulu ihambe ngokuxhomekeke kumanqanaba asezantsi ehypervisor, kwaye oku kuthetha iingxaki xa kuphinda kusetyenziswe le ngqiqo. Musa ukuyenza ngolu hlobo.

Ukuxoxa

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Iziseko zophuhliso njengekhowudi azikho nje ngekhowudi, kodwa nangobudlelwane phakathi kwekhowudi nabantu, malunga nokusebenzisana phakathi kwabaphuhlisi beziseko zophuhliso.

Umba webhasi

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Makhe sicinge ukuba uneVasya kwiprojekthi yakho. UVasya uyazi yonke into malunga neziseko zakho, kuya kwenzeka ntoni ukuba uVasya uyanyamalala ngokukhawuleza? Le yimeko yokwenyani, kuba unokutshayiswa yibhasi. Ngamanye amaxesha kuyenzeka. Ukuba oku kwenzeka kunye nolwazi malunga nekhowudi, isakhiwo sayo, indlela esebenza ngayo, ukubonakala kunye neephasiwedi azihanjiswa phakathi kweqela, ngoko unokuhlangabezana nenani leemeko ezingathandekiyo. Ukunciphisa le mingcipheko kunye nokusabalalisa ulwazi ngaphakathi kweqela, ungasebenzisa iindlela ezahlukeneyo

I-Pair Devopsing

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Akunjalo njengesiqhulo, ukuba ii-admins zisele ibhiya, zatshintsha amagama ayimfihlo, kunye ne-analogue ye-pairing programming. Ezo. iinjineli ezimbini zihlala phantsi kwikhompyuter enye, ikhibhodi enye kwaye ziqale ukuseta iziseko zophuhliso kunye: ukuseta iseva, ukubhala indima eAnsible, njl. Kuvakala kumnandi, kodwa akuzange kusisebenzele. Kodwa iimeko ezikhethekileyo zolu qheliselo zasebenza. Umqeshwa omtsha ufikile, umcebisi wakhe uthatha umsebenzi wokwenyani kunye naye, usebenza kwaye udlulisela ulwazi.

Enye imeko ekhethekileyo kukufowunelwa kwesiganeko. Ngexesha lengxaki, iqela labo basemsebenzini kunye nabo babandakanyekayo bayahlangana, inkokeli enye yonyulwa, eyabelana ngesikrini sayo kwaye ivakalise uloliwe wengcinga. Abanye abathathi-nxaxheba balandela iingcamango zenkokeli, bahlole amaqhinga avela kwi-console, khangela ukuba abazange baphoswe ngumgca kwilogi, kwaye bafunde izinto ezintsha malunga nenkqubo. Le ndlela yayisebenza rhoqo kunokuba ingasebenzi.

Uphengululo lweKhowudi

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Ngokufanelekileyo, bekusebenza ngakumbi ukusasaza ulwazi malunga neziseko zophuhliso kunye nendlela esebenza ngayo ngokuphononongwa kwekhowudi:

  • Iziseko zophuhliso zichazwe ngekhowudi kwindawo yokugcina.
  • Utshintsho lwenzeka kwicandelo elahlukileyo.
  • Ngexesha lokudibanisa isicelo, unokubona i-delta yotshintsho kwisiseko.

Okugqwesileyo apha kukuba abahlaziyi bakhethwa ngabanye, ngokweshedyuli, oko kukuthi. ngeqondo elithile lokunokwenzeka uya kukhwela kwisiqwenga esitsha seziseko ezingundoqo.

Isimbo seKhowudi

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Ngokuhamba kwexesha, ii-squabbles zaqala ukubonakala ngexesha lokuphononongwa, kuba ... ababuyekezi babenesitayile sabo kunye nokujikeleza kwabahlaziyi bapakishe ngeendlela ezahlukeneyo: izithuba ezi-2 okanye ezi-4, ikamela okanye inyoka_case. Kwakungenakwenzeka ukuphumeza oku ngoko nangoko.

  • Umbono wokuqala wawukucebisa ukusebenzisa i-linter, emva kwayo yonke loo nto, wonke umntu uyinjineli, wonke umntu uhlakaniphile. Kodwa abahleli abahlukeneyo, i-OS, abafanelekanga
  • Oku kuye kwavela kwi-bot eyabhala ukudelela kwisibophelelo ngasinye esiyingxaki kwaye yancamathela isiphumo se-linter. Kodwa kwiimeko ezininzi bekukho izinto ezibaluleke ngakumbi ekufuneka zenziwe kwaye ikhowudi yahlala ingalungiswanga.

Green Build Master

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Ixesha lihamba, kwaye sifikelele kwisigqibo sokuba ukwenza ukuba ungaphumeleli iimvavanyo ezithile akunakuvunyelwa kwi-master. Voila! Siye sayila iGreen Build Master, ebisoloko isenziwa kuphuhliso lwesoftware ixesha elide:

  • Uphuhliso luyaqhubeka kwisebe elahlukileyo.
  • Uvavanyo luyaqhuba kulo msonto.
  • Ukuba iimvavanyo zingaphumeleli, ikhowudi ayiyi kuyenza ibe yinkosi.

Ukwenza esi sigqibo kwakubuhlungu kakhulu, kuba... kubangele impikiswano eninzi, kodwa kwakufanelekile, kuba. Uphononongo lwaqala ukufumana izicelo zokudityaniswa ngaphandle kokungafani kwesitayela, kwaye ngokuhamba kwexesha inani leengxaki zengxaki zaqala ukuhla.

Uvavanyo lwe-IaC

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Ukongeza ekujongeni isitayile, ungasebenzisa ezinye izinto, umzekelo, ukujonga ukuba isiseko sakho sinokuhambisa. Okanye khangela ukuba utshintsho kwiziseko zophuhliso aluyi kukhokelela ekulahlekelweni yimali. Kutheni oku kunokuba yimfuneko? Umbuzo uyinkimbinkimbi kunye nefilosofi, kungcono ukuphendula ngebali ukuba ngandlela-thile kwakukho i-auto-scaler kwi-Powershell engazange ihlolisise iimeko zomda => ii-VM ezininzi zenziwe kunokuba ziyimfuneko => umxhasi uchithe imali eninzi kunokuba icwangcisiwe. Oku akumnandanga kakhulu, kodwa kuyakwenzeka ukubamba le mpazamo kumanqanaba angaphambili.

Omnye unokubuza, kutheni ukwenza iziseko ezingundoqo zibe nzima ngakumbi? Uvavanyo lweziseko ezingundoqo, njengekhowudi, alukho malunga nokwenza lula, kodwa malunga nokwazi ukuba isiseko sakho kufuneka sisebenze njani.

IPiramidi yoVavanyo lwe-IaC

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Uvavanyo lwe-IaC: Uhlalutyo lwe-Static

Ukuba uhambisa zonke iziseko zophuhliso ngaxeshanye kwaye ujonge ukuba ziyasebenza, unokufumanisa ukuba kuthatha ixesha elininzi kwaye kufuna ixesha elininzi. Ke ngoko, isiseko kufuneka sibe yinto esebenza ngokukhawuleza, ininzi, kwaye igubungela iindawo ezininzi zamandulo.

I-Bash inenkohliso

Makhe sijonge umzekelo ongabalulekanga. khetha zonke iifayile kulawulo lwangoku kwaye ukhuphele kwenye indawo. Into yokuqala ethi qatha engqondweni:

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

Kuthekani ukuba kukho isithuba kwigama lefayile? Ewe, kulungile, silumkile, siyayazi indlela yokusebenzisa izicatshulwa:

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

Wenze kakuhle? Hayi! Kuthekani ukuba akukho nto kwi-directory, i.e. iglobbing ayizukusebenza.

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

Uhambe kakuhle ngoku? Hayi... Ulibele ukuba yintoni enokuba kwigama lefayile n.

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

Izixhobo zokuhlalutya okuzinzileyo

Ingxaki esuka kwinyathelo langaphambili inokubanjwa xa silibale ukucaphula, kuba oku kukho amayeza amaninzi kwindalo. Shellcheck, ngokubanzi zininzi zazo, kwaye kusenokwenzeka ukuba ungafumana ilitha yesitaki sakho phantsi kwe IDE yakho.

ulwimi
Isixhobo

ukutshatyalaliswa
Shellcheck

ilitye elinqabileyo elibomvu
RuboCop

python
IPylint

iyenzeka
Ansible Lint

Uvavanyo lwe-IaC: Iimvavanyo zeYunithi

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Njengoko sibonile kumzekelo wangaphambili, ii-linters azikho amandla onke kwaye azikwazi ukukhomba zonke iinkalo zengxaki. Ngapha koko, ngokuthelekisa novavanyo kuphuhliso lwesoftware, sinokukhumbula iimvavanyo zeeyunithi. Yintoni efika ngokukhawuleza engqondweni shunit, junithi, rspec, pytest. Kodwa yintoni enokuyenza nge-ansible, chef, i-salstack kunye nabanye abafana nabo?

Ekuqaleni sithethe ngayo OKUQINISILEYO nokuba iziseko zethu ezingundoqo kufuneka zibe nezitena ezincinci. Lifikile ixesha labo.

  1. Iziseko zophuhliso zihlulwe zibe zizitena ezincinci, umzekelo, iindima ze-Ansible.
  2. Olunye uhlobo lokusingqongileyo luyasetyenziswa, nokuba yidocker okanye iVM.
  3. Sisebenzisa indima yethu yeAnsible kule ndawo yovavanyo.
  4. Sijonga ukuba yonke into isebenze njengoko besilindele (siqhuba iimvavanyo).
  5. Sigqibe kwelokuba kulungile okanye hayi kulungile.

Uvavanyo lwe-IaC: Izixhobo zoVavanyo lweyunithi

Umbuzo, zithini iimvavanyo zeCFM? Ungaqhuba ngokulula iskripthi, okanye ungasebenzisa izisombululo esezenziwe ngoku:

CFM
Isixhobo

Efanelekileyo
I-Testinfra

intloko
I-Inspec

intloko
Serverspec

ityuwa
Impazamo

Umzekelo we-testinfra, ukujonga ukuba abasebenzisi test1, test2 zikhona kwaye zikwiqela 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

Khetha ntoni? Umbuzo unzima kwaye unzima, nanku umzekelo wotshintsho kwiiprojekthi kwi-github ye-2018-2019:

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Izikhokelo zoVavanyo lwe-IaC

Umbuzo uvela: njani ukuhlanganisa konke kunye nokuyisungula? Ngaba yithathe uzenzele ukuba kukho inani elaneleyo leenjineli. Okanye unokuthatha izisombululo esele zenziwe, nangona zingekho zininzi kakhulu:

CFM
Isixhobo

Efanelekileyo
Imolekyuli

intloko
Test Kitchen

Terraform
Terrates

Umzekelo wotshintsho kwiiprojekthi kwi-github ye-2018-2019:

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Imolekyuli vs. Testkitchen

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Ekuqaleni thina uzame ukusebenzisa testkitchen:

  1. Yenza iVM ngokunxuseneyo.
  2. Sebenzisa iindima ezifanelekileyo.
  3. Qhuba uhlolo.

Kwiindima ze-25-35 zasebenza imizuzu engama-40-70, eyayide.

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Isinyathelo esilandelayo yayiyinguqu kwi-jenkins / docker / i-ansible / molekyuli. Ngokwe-Idiologically yonke into iyafana

  1. Lint iincwadi zokudlala.
  2. Yenza uluhlu lweendima.
  3. Qalisa isikhongozeli
  4. Sebenzisa iindima ezifanelekileyo.
  5. Qhuba testinfra.
  6. Qwalasela ukungabi namandla.

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Ukubamba iindima ezingama-40 kunye novavanyo lweshumi elinesibini kwaqala ukuthatha malunga nemizuzu eli-15.

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Yintoni ongayikhetha kuxhomekeke kwizinto ezininzi, ezifana ne-stack esetyenzisiweyo, ubuchule kwiqela, njl. apha wonke umntu uthatha isigqibo ngokwakhe ukuba uwuvala njani umbuzo wovavanyo lweYunithi

Uvavanyo lwe-IaC: Iimvavanyo zokudibanisa

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Isinyathelo esilandelayo kwiphiramidi yovavanyo lweziseko zophuhliso iya kuba luvavanyo lokudibanisa. Ziyafana novavanyo lweYunithi:

  1. Iziseko zophuhliso zohlulwe zibe zizitena ezincinci, umzekelo iindima ezibambekayo.
  2. Olunye uhlobo lokusingqongileyo luyasetyenziswa, nokuba yidocker okanye iVM.
  3. Kule meko yovavanyo sebenza okuninzi kwe Iindima ezifanelekileyo.
  4. Sijonga ukuba yonke into isebenze njengoko besilindele (siqhuba iimvavanyo).
  5. Sigqibe kwelokuba kulungile okanye hayi kulungile.

Xa sithetha nje, asijongi ukusebenza kwento enye yenkqubo njengakuvavanyo lweyunithi, sijonga ukuba umncedisi uqwalaselwe njani xa iyonke.

Uvavanyo lwe-IaC: Iimvavanyo zokuphela kokuphela

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Phezulu kwipiramidi sibuliswa yi-End to End iimvavanyo. Ezo. Asikhangeli ukusebenza komncedisi ohlukeneyo, iskripthi esahlukileyo, okanye isitena esahlukileyo sesiseko sethu. Sijonga ukuba uninzi lweeseva eziqhagamshelwe kunye, izixhobo zethu zokusebenza zisebenza njengoko silindele. Ngelishwa, andizange ndibone izisombululo zebhokisi esele zenziwe, mhlawumbi ngenxa yokuba ... Iziseko zophuhliso zihlala zizodwa kwaye kunzima ukwenza itemplate kwaye zenze isakhelo sovavanyo. Ngenxa yoko, wonke umntu udala izisombululo zakhe. Kukho imfuno, kodwa akukho mpendulo. Ke ngoko, ndiza kukuxelela into ekhoyo ukuze ndityhale abanye ukuba bavakalise iingcinga ezivakalayo okanye ndihlikihle impumlo yam kwinto yokuba yonke into yaqalwa kwakudala phambi kwethu.

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Iprojekthi enembali etyebileyo. Isetyenziswa kwimibutho emikhulu kwaye mhlawumbi ngamnye wenu uye wawela indlela engangqalanga nayo. Isicelo sixhasa uvimba weenkcukacha ezininzi, udibaniso, njl. Ukwazi ukuba isiseko sinokujongeka njani kuninzi lweefayile zokuqamba i-docker, kunye nokwazi ukuba zeziphi iimvavanyo ekufuneka ziqhutywe kwindawo ekuyo iJenkins.

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Esi sikimu sisebenze ixesha elide, kude kube ngaphakathi kwesakhelo uphando asizamanga ukuthumela oku kwi-Openshift. Izikhongozeli zihlala zifana, kodwa indawo yokuqalisa itshintshile (hello DRY kwakhona).

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Ingcamango yophando yaqhubela phambili, kwaye kwi-openshift bafumana into efana ne-APB (i-Ansible Playbook Bundle), evumela ukuba upakishe ulwazi malunga nendlela yokuhambisa iziseko kwi-container. Ezo. kukho ulwazi oluphindaphindwayo, olunokuvavanywa ngendlela yokusasazwa kweziseko zophuhliso.

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Konke oku kwavakala kukuhle de sabalekela kwiziseko ezingundoqo: sifuna iiWindows zovavanyo. Ngenxa yoko, ulwazi lwento, phi, njani ukuthunyelwa, kunye nokuvavanya kwi-jenkins.

isiphelo

Into endiyifundileyo kuVavanyo lweMizila ye-200 yeKhowudi yeZiseko

Iziseko zophuhliso njengoko iKhowudi iyiyo

  • Ikhowudi kwindawo yokugcina.
  • Ukusebenzisana kwabantu.
  • Uvavanyo lweziseko zophuhliso.

amakhonkco

umthombo: www.habr.com

Yongeza izimvo