Atina'e e pei o le code: muamua masani

O lo'o fa'agasolo la matou kamupani i le fa'aulufaleina o se 'au a le SRE. Na ou sau i lenei tala atoa mai le itu tau atinae. I le faagasologa, na ou sau ai ma mafaufauga ma malamalamaaga ou te manaʻo e faʻasoa i isi atinaʻe. I lenei tusiga o mafaufauga ou te talanoa ai e uiga i le mea o loʻo tupu, pe faʻafefea ona tupu, ma le auala e mafai ai e tagata uma ona faʻaauau ona ola ai.

Atina'e e pei o le code: muamua masani

Fa'aauauina o le fa'asologa o tala na tusia e fa'atatau i lauga i le tatou fa'alavelave i totonu DevForum:

1. Pusi a Schrödinger e aunoa ma se atigipusa: o le faafitauli o le maliliega i faiga tufatufaina.
2. Atina'e e fai ma tulafono. (O oe iinei)
3. Fausiaina o konekarate Typescript e faʻaaoga ai C # faʻataʻitaʻiga. (Sologa...)
4. Folasaga i le Raft consensus algorithm. (Sologa...)
...

Na matou filifili e fausia se 'au SRE, faʻatino manatu google sre. Sa latou faafaigaluegaina tagata fai polokalame mai a latou lava tagata atiae ma auina atu i latou e aoaoina mo ni nai masina.

O le 'au sa i ai galuega fa'aa'oa'oga nei:

  • Faʻamatala a matou atinaʻe, lea e tele lava i totonu o Microsoft Azure i le tulaga o le code (Terraform ma mea uma o loʻo siomia ai).
  • A'oa'o tagata atia'e pe fa'apefea ona galulue fa'atasi ma atina'e tetele.
  • Saunia tagata atiae mo tiute.

Matou te faʻalauiloaina le manatu o Atinaʻe e pei o le code

I le faʻataʻitaʻiga masani o le lalolagi (pulega masani), o le malamalama e uiga i atinaʻe e tu i nofoaga e lua:

  1. Pe i le tulaga o le malamalama i ulu o tagata atamamai.Atina'e e pei o le code: muamua masani
  2. Pe o lenei faʻamatalaga o loʻo i luga o nisi masini lomitusi, o nisi o loʻo iloa e tagata atamamai. Ae e le o se mea moni e faapea o se tagata i fafo (ina neʻi faʻafuaseʻi ona oti le matou 'au atoa) o le a mafai ona iloa le mea e aoga ma pe faʻafefea. E mafai ona tele faʻamatalaga i luga o se masini: mea faʻaoga, cronjobs, faʻafefe (vaai. fa'apipi'i tisiki) disk ma na o se lisi e le gata o mea e mafai ona tupu. E faigatā ona malamalama i le mea moni o loo tupu.Atina'e e pei o le code: muamua masani

I tulaga uma e lua, tatou te maua i tatou lava maileia i le faʻalagolago:

  • pe mai se tagata o le tino, e maua i ma'i, pa'u i le alofa, suiga o lagona ma na o le faate'aina;
  • po'o se masini galue fa'aletino, e pa'ū fo'i, gaoia, ma fa'ailoa mai ai fa'ate'ia ma fa'alavelave.

E alu e aunoa ma le fai atu o mea uma e tatau ona faaliliuina i le tagata-faitau, tausia, tusitusi lelei.

O le mea lea, o atinaʻe e pei o le code (Incfastructure as Code - IaC) o se faʻamatalaga o mea uma o loʻo i ai i le tulaga o le code, faʻapea foʻi ma meafaigaluega faʻapitoa mo le galulue faʻatasi ma le faʻatinoina o atinaʻe moni mai ai.

Aisea e fa'aliliu ai mea uma ile code?O tagata e le o ni masini. E le mafai ona latou manatua mea uma. E ese le tali a se tagata ma se masini. So'o se mea otometi e sili atu le vave nai lo se mea e faia e se tagata. O le mea e sili ona taua o se punavai e tasi o le upumoni.

O fea e sau ai inisinia fou SRE?O lea, na matou filifili e faʻafaigaluegaina ni inisinia SRE fou, ae o fea e maua mai ai? Tusi e iai tali sa'o (Google SRE Tusi) taʻu mai ia i matou: mai le au atinaʻe. A uma mea uma, latou te galulue ma le code, ma e te ausia le tulaga lelei.

Sa matou suʻesuʻeina tele mo se taimi umi mo i latou i luga o le maketi o tagata faigaluega i fafo atu o le matou kamupani. Ae e tatau ona matou taʻutino atu matou te leʻi mauaina se tasi e fetaui ma a matou talosaga. Sa tatau ona ou saili i totonu o o’u lava tagata.

Fa'afitauli Atina'e tetele e fai ma code

Se'i o tatou va'ava'ai i fa'ata'ita'iga pe fa'afefea ona fa'ama'oti le fa'aogaina o atina'e ile fa'ailoga. E lelei le tusiaina o le code, maualuga le lelei, ma faʻamatalaga ma faʻailoga.

Fa'ata'ita'iga code mai Terraforma.

Atina'e e pei o le code: muamua masani

Fa'ata'ita'iga code mai le Ansible.

Atina'e e pei o le code: muamua masani

Alii e, pe ana faapea e matua faigofie! Ua matou i ai i le lalolagi moni, ma e sauni i taimi uma e faateʻia oe, tuʻuina atu ia te oe mea e ofo ai ma faʻafitauli. E le mafai foi e aunoa ma i latou iinei.

1. O le faafitauli muamua o le tele o tulaga IaC o se ituaiga o dsl.

Ma o le DSL, i le isi itu, o se faʻamatalaga o le fausaga. E sili atu le saʻo, mea e tatau ona e maua: Json, Yaml, suiga mai nisi o kamupani tetele na o mai ma latou lava dsl (HCL faʻaaogaina i terraform).

O le faʻalavelave e ono faigofie ona le aofia ai mea masani e pei o:

  • fesuiaiga;
  • tulaga;
  • i se mea e leai ni faʻamatalaga, mo se faʻataʻitaʻiga, i le Json, e le mafai ona tuʻuina atu;
  • galuega tauave;
  • ma ou te le o talanoa foi e uiga i ni tulaga maualuga e pei o vasega, tofi ma mea uma.

2. O le fa'afitauli lona lua i lea fa'ailoga o le tele o taimi o se si'osi'omaga eseese. E masani ona e nofo ma galue ma C #, i.e. ma le gagana e tasi, tasi le faaputuga, tasi le siosiomaga. Ma o iinei e te maua ai le tele o ituaiga tekinolosi.

O se tulaga moni lava pe a faʻalauiloa e le bash ma le python se faʻagasologa o loʻo faʻaofi ai Json. E te suʻesuʻeina, ona maua ai lea e se isi generator se isi 30 faila. Mo nei mea uma, e maua mai i totonu ole Azure Key Vault, e tosoina faʻatasi e se plugin mo drone.io tusia i le Go, ma o nei fesuiaiga e pasi atu i le yaml, lea na faʻatupuina o se taunuuga o le faʻatupuina mai le afi mamanu jsonnet. E fai si faigata le fa'amatalaina lelei o le code pe a iai sau si'osi'omaga eseese.

O atina'e fa'aleaganu'u i totonu o le auivi o se galuega e tasi e sau ma le gagana e tasi. O iinei matou te galulue ai ma le tele o gagana.

3. O le faafitauli lona tolu o le fa'alogo. Ua matou masani e faʻamalo faʻatonu (Ms Visual Studio, Jetbrains Rider) e faia mea uma mo i matou. Ma e tusa lava pe tatou te valelea, latou te fai mai ua tatou sese. E foliga masani ma masani.

Ae i se mea lata ane o loʻo i ai le VSCode, lea o loʻo i ai nisi faʻapipiʻi e faʻapipiʻiina, lagolagoina pe le lagolagoina. O lomiga fou na sau ma e le'i lagolagoina. O se suiga masani i le faʻatinoina o se galuega (tusa lava pe o iai) avea ma faʻafitauli lavelave ma e le taua. O se toe igoa faigofie o se fesuiaiga o se toe taʻalo i totonu o se poloketi o le tele o faila. E te laki pe a ia tuʻuina mea e te manaʻomia. O le mea moni, o loʻo i ai le faʻamalamalamaga iinei ma iina, o loʻo i ai le faʻamaeʻaina otometi, i se mea o loʻo i ai le faʻatulagaina (e ui lava e leʻi aoga mo aʻu i le terraform i Windows).

I le taimi o lenei tusitusiga vscode-terraform plugin e le'i fa'asa'olotoina e lagolago le version 0.12, e ui lava na fa'asa'oloto mo le 3 masina.

Ua oo i le taimi e faagalo ai...

  1. Faʻafaia.
  2. Refactoring meafaigaluega.
  3. Fa'auma otometi.
  4. Su'eina mea sese i le taimi o le tuufaatasia.

E malie, ae faʻateleina foi le taimi o le atinaʻe ma faʻateleina le numera o mea sese e le maalofia.

O le mea e sili ona leaga o le faʻamalosia lea e le mafaufau pe faʻapefea ona mamanuina, faʻapipiʻi faila i totonu o laupepa, faʻaleagaina, faʻatumauina le code, mafai ona faitau, ma isi mea, ae pe faʻapefea ona ou tusia saʻo lenei poloaiga, aua na ou tusia sese. .

I le avea ai ma se tagata amata, o loʻo e taumafai e aʻoaʻo le terraforms, ma e le fesoasoani le IDE ia te oe. A iai faʻamaumauga, alu i totonu ma vaʻai. Ae afai e te ulufale i se gagana fou polokalame, o le a taʻu atu e le IDE ia te oe o loʻo i ai se ituaiga, ae leai se mea faapena. Le itiiti ifo ile tulaga int po'o le manoa. E masani ona aoga lenei mea.

Ae faapefea suega?

E te fesili: "Ae faapefea suʻega, alii fai polokalame?" E fa'ata'ita'i e tama malolosi mea uma ile gaosiga, ma e faigata. O se fa'ata'ita'iga lea o le su'ega a le iunite mo se fa'aoga mata'utia mai le upega tafa'ilagi Microsoft.

Atina'e e pei o le code: muamua masani

E iai a latou fa'amaumauga lelei. Ou te fiafia i taimi uma ia Microsoft mo lana auala i faʻamaumauga ma aʻoaʻoga. Ae e te le manaʻomia le avea ma Uncle Bob e te malamalama ai e le o se tulafono atoatoa. Matau le faamaoniga i le itu taumatau.

O le fa'afitauli i se su'ega iunite e mafai e oe ma a'u ona siaki le sa'o o le galuega a le Json. Na ou togi i totonu 5 taʻaloga ma na tuʻuina atu i ai se ie vae Json ma laina 2000. E mafai ona ou suʻesuʻeina mea o loʻo tupu iinei, faʻamaonia iuga o suʻega...

E faigata ona fa'avasega Json ile Go. Ma e tatau ona e tusi i le Go, aua o le terraform i le Go o se faʻataʻitaʻiga lelei mo suʻega i le gagana o loʻo e tusia ai. O le faʻatulagaina o le tulafono lava ia e matua vaivai lava. I le taimi lava e tasi, o le faletusi sili lea mo suʻega.

O Microsoft lava ia na te tusia ana modules, faʻataʻitaʻiina i latou i lenei auala. Ioe o Open Source. O mea uma ou te tautala atu ai e mafai ona e sau e faʻaleleia. E mafai ona ou nofo i lalo ma faʻaleleia mea uma i totonu o le vaiaso, tatala punaoa VS code plugins, terraforms, fai se plugin mo le tagata tietie. Atonu e tusi ni au su'esu'e se lua, fa'aopoopo liters, foa'i se faletusi mo su'ega. E mafai ona ou faia mea uma. Ae e le o le mea lena e tatau ona ou faia.

Fa'ata'ita'iga sili Fa'atonuga e fai ma tulafono

Tatou agai i luma. Afai e leai ni suʻega i IaC, o le IDE ma le faʻalogo e leaga, ona tatau lea ona i ai ni faiga sili ona lelei. Na'o ou alu i Google Analytics ma fa'atusatusa fesili su'esu'e se lua: Terraform best practices ma c# best practices.

Atina'e e pei o le code: muamua masani

O le a le mea ua tatou vaaia? E lē lagolagoina i tatou e fuainumera lē alofa. Ole aofaiga ole meafaitino e tutusa. I le C # atinaʻe, ua naʻo lo tatou faʻafefe i meafaitino, e iai a tatou faiga sili ona lelei, o loʻo i ai tusi na tusia e tagata atamamai, ma tusi foʻi na tusia i luga o tusi a isi tagata atamamai e faitioina na tusi. O se sami o faʻamaumauga aloaʻia, tusiga, aʻoaʻoga aʻoaʻoga, ma o le taimi nei o loʻo tatala ai foʻi le atinaʻeina o punaoa.

Ae mo le talosaga IaC: o loʻo e taumafai e aoina faʻamatalaga mai lea vaega i luga ole laiga poʻo lipoti a HashiConf, mai faʻamaumauga aloaia ma le tele o mataupu ile Github. E faʻafefea ona tufatufa atu nei modules i le lautele, o le a le mea e fai ia i latou? E foliga mai o se faʻafitauli moni lenei ... E i ai le faʻalapotopotoga, alii, o fea mo soʻo se fesili o le a tuʻuina atu ia te oe 10 faʻamatalaga i luga o Github. Ae e le sa'o.

Ae paga lea, i le taimi nei, ua amata ona tulaʻi mai tagata atamamai. E toaitiiti lava i latou i le taimi nei. Ma o le alalafaga lava ia o loʻo tautau i le tulaga faʻavae.

O fea e alu i ai nei mea uma ma le mea e fai

E mafai ona e tu'u mea uma ma toe fo'i i le C#, i le lalolagi o le tagata ti'eti'e. Ae leai. Aisea e te fa'alavelave ai e fai lenei mea pe afai e te le maua se fofo. I lalo ifo ou te tuʻuina atu aʻu faʻaiuga faʻapitoa. E mafai ona e finau ma aʻu i faʻamatalaga, o le a manaia.

I le tagata lava ia, o loʻo ou faʻatau i ni nai mea:

  1. O atina'e i lea vaega o lo'o tupu vave. Ole fa'asologa lea o talosaga mo DevOps.

    Atina'e e pei o le code: muamua masani

    O le autu atonu o se faʻasalalauga, ae o le mea moni o le faʻalauteleina o le lalolagi e maua ai se faʻamoemoe.

    Afai e tupu vave se mea, ona aliali mai lea o tagata popoto e taʻu atu ia te oe le mea e fai ma le mea e le tatau ona fai. O le faʻateleina o le taʻutaʻua e taʻitaʻia ai le mea moni atonu o le a maua e se tasi le taimi e faʻaopoopoina ai se plugin i le jsonnet mo vscode, lea o le a mafai ai ona e agai i luma i le faʻatinoina o le galuega, nai lo le suʻeina e ala i le ctrl+shift+f. A'o fa'asolosolo mea, e tele mea e aliali mai. O le tatalaina o se tusi mai Google e uiga i le SRE o se faʻataʻitaʻiga sili lea o lenei mea.

  2. O lo'o iai metotia ma faiga fa'atino i atina'e masani e mafai ona tatou fa'aogaina lelei iinei. Ioe, o loʻo i ai nuances ma suʻega ma se siosiomaga faʻapitoa, le lava meafaigaluega, ae o le tele o faʻataʻitaʻiga ua faʻaputuina e mafai ona aoga ma fesoasoani.

    O se fa'ata'ita'iga fa'atauva'a: felagolagoma'i e ala i polokalame paga. E fesoasoani tele e iloa ai. A iai sou tuaoi lata ane o loʻo taumafai foi e malamalama i se mea, o le a sili atu lou malamalama faʻatasi.

    O le malamalama pe fa'afefea ona toe fa'afoliga e fesoasoani e fa'atino e tusa lava pe i ai se tulaga fa'apea. O lona uiga, e le mafai ona e suia mea uma i le taimi e tasi, ae sui le igoa, sui le nofoaga, ona mafai lea ona e faʻamaonia se vaega, oi, ae le lava faʻamatalaga iinei.

iʻuga

E ui lava i le mea moni e foliga mai e le mautonu oʻu mafaufauga, ou te vaʻavaʻai i le lumanaʻi ma le faʻamoemoe ma faʻamoemoe faamaoni o le a lelei mea uma mo i matou (ma oe).

O le vaega lona lua o le tusiga o loo sosoo mai. I totonu, o le a ou talanoa e uiga i le auala na matou taumafai ai e faʻaogaina faiga faʻavae agile e faʻaleleia ai a matou aʻoaʻoga ma galulue faʻatasi ma atinaʻe.

puna: www.habr.com

Faaopoopo i ai se faamatalaga