Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Tá a fhios ag go leor daoine agus úsáideann siad Terraform ina gcuid oibre laethúil, ach níl na cleachtais is fearr dó déanta fós. Caithfidh gach foireann a gcur chuige agus a modhanna féin a chumadh.

Is cinnte go dtosaíonn do bhonneagar simplí: roinnt acmhainní + roinnt forbróirí. Le himeacht ama, fásann sé i ngach cineál treoracha. An bhfaighidh tú bealaí chun acmhainní a ghrúpáil isteach i modúil Terraform, cód a eagrú ina bhfillteáin, agus cad eile a d’fhéadfadh dul amú? (focail dheireanacha cáiliúla)

Gabhann an t-am thart agus mothaíonn tú gur peata nua é do bhonneagar, ach cén fáth? Tá imní ort faoi athruithe domhínithe ar an mbonneagar, tá eagla ort teagmháil a dhéanamh leis an mbonneagar agus leis an gcód - mar thoradh air sin, cuireann tú moill ar fheidhmiúlacht nua nó laghdaítear cáilíocht ...

Tar éis trí bliana de bhainistiú bailiúchán de mhodúil pobail Terraform le haghaidh AWS ar Github agus cothabháil fadtéarmach Terraform i dtáirgeadh, tá Anton Babenko réidh chun a thaithí a roinnt: conas modúil TF a scríobh ionas nach gortaítear é sa todhchaí.

Faoi dheireadh na cainte, beidh na rannpháirtithe níos eolach ar phrionsabail bhainistíochta acmhainní in Terraform, ar na cleachtais is fearr a bhaineann le modúil i Terraform, agus ar roinnt prionsabal comhtháthaithe leanúnach a bhaineann le bainistíocht bonneagair.

Séanadh: Tugaim faoi deara go bhfuil dáta Samhain 2018 ar an tuarascáil seo—tá dhá bhliain caite cheana féin. Ní thacaítear a thuilleadh leis an leagan de Terraform 2 a pléadh sa tuarascáil. Le 0.11 bhliain anuas, scaoileadh 2 eisiúint nua, ina bhfuil go leor nuálaíochtaí, feabhsuithe agus athruithe. Tabhair aird air seo agus seiceáil na doiciméid.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Naisc:

Is é mo ainm Anton Babenko. Is dócha gur bhain cuid agaibh úsáid as an gcód a scríobh mé. Labhróidh mé faoi seo anois le níos mó muiníne ná riamh, toisc go bhfuil rochtain agam ar staitisticí.

Oibrím ar Terraform agus bhí mé i mo rannpháirtí gníomhach agus rannpháirtí i líon mór tionscadal foinse oscailte a bhaineann le Terraform agus Amazon ó 2015 i leith.

Ó shin i leith tá go leor cód scríofa agam chun é a chur ar bhealach suimiúil. Agus déanfaidh mé iarracht a insint duit faoi seo anois.

Labhróidh mé faoi na castaí agus na sainghnéithe a bhaineann le bheith ag obair le Terraform. Ach ní hé sin ábhar HighLoad i ndáiríre. Agus anois beidh tú a thuiscint cén fáth.

Le himeacht ama, thosaigh mé ag scríobh modúil Terraform. Scríobh úsáideoirí ceisteanna, athscríobh mé iad. Ansin scríobh mé fóntais éagsúla chun an cód a fhormáid ag baint úsáide as hook réamh-tiomantais, etc.

Bhí go leor tionscadal suimiúil. Is maith liom giniúint cód mar is maith liom go ndéanann an ríomhaire níos mó oibre domsa agus don ríomhchláraitheoir, agus mar sin táim ag obair faoi láthair ar ghineadóir cód Terraform ó léaráidí amhairc. B’fhéidir go bhfaca cuid agaibh iad. Is boscaí álainn iad seo le saigheada. Agus is dóigh liom go bhfuil sé iontach más féidir leat an cnaipe “Easpórtáil” a chliceáil agus é a fháil mar chód.

Is as an Úcráin mé. Tá mé i mo chónaí san Iorua le blianta fada.

Chomh maith leis sin, bailíodh faisnéis don tuarascáil seo ó dhaoine a bhfuil m’ainm ar eolas acu agus a fhaigheann mé ar líonraí sóisialta. Bíonn an leasainm céanna agam beagnach i gcónaí.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

https://github.com/terraform-aws-modules
https://registry.terraform.io/namespaces/terraform-aws-modules

Mar a luadh mé, tá mé mar phríomhchothabháil modúil Terraform AWS, atá ar cheann de na stórtha is mó ar GitHub áit a ndéanaimid óstáil ar mhodúil do na tascanna is coitianta: VPC, Autoscaling, RDS.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus is é an rud a chuala tú anois an ceann is bunúsaí. Má tá amhras ort go dtuigeann tú cad é Terraform, ansin is fearr do chuid ama a chaitheamh áit éigin eile. Beidh go leor téarmaí teicniúla anseo. Agus ní raibh aon leisce orm a dhearbhú go raibh leibhéal na tuarascála ar an leibhéal is airde. Ciallaíonn sé seo gur féidir liom labhairt ag baint úsáide as na téarmaí go léir is féidir gan mórán míniú.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Bhí an chuma ar Terraform in 2014 mar fhóntas a cheadaigh duit bonneagar a scríobh, a phleanáil agus a bhainistiú mar chód. Is é an príomhchoincheap anseo ná “bonneagar mar chód.”

Tá gach doiciméad, mar a dúirt mé, scríofa i terraform.io. Tá súil agam go bhfuil a fhios ag formhór na ndaoine faoin suíomh seo agus go bhfuil an doiciméadú léite acu. Más amhlaidh, tá tú san áit cheart.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é seo an chuma ar chomhad cumraíochta Terraform rialta, áit a ndéanaimid sainmhíniú ar roinnt athróg ar dtús.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Sa chás seo sainmhínímid "aws_region".

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ansin déanaimid cur síos ar na hacmhainní a theastaíonn uainn a chruthú.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Reáchtálaimid roinnt orduithe, go háirithe “terraform init” chun spleáchais agus soláthraithe a luchtú.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus ritheann muid an t-ordú “terraform apply” chun a sheiceáil an bhfuil an chumraíocht sonraithe ag teacht leis na hacmhainní a chruthaigh muid. Ós rud é nach bhfuil aon rud cruthaithe againn roimhe seo, spreagann Terraform sinn na hacmhainní seo a chruthú.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Deimhnímid é seo. Mar sin cruthaímid buicéad ar a dtugtar seilide.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Tá roinnt fóntais den chineál céanna ann freisin. Tá a fhios ag go leor agaibh a úsáideann Amazon AWS CloudFormation nó Bainisteoir Imscaradh Google Cloud nó Bainisteoir Acmhainní Azure. Tá a chur i bhfeidhm féin de shaghas éigin ag gach ceann acu chun acmhainní a bhainistiú laistigh de gach ceann de na soláthraithe scamall poiblí seo. Tá Terraform úsáideach go háirithe toisc go gceadaíonn sé duit níos mó ná 100 soláthraí a bhainistiú. (Tuilleadh sonraí anseo)

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Na spriocanna atá bainte amach ag Terraform ón tús:

  • Soláthraíonn Terraform radharc aonair ar acmhainní.
  • Ligeann sé duit tacaíocht a thabhairt do gach ardán nua-aimseartha.
  • Agus dearadh Terraform ón tús mar áirgiúlacht a ligeann duit bonneagar a athrú go sábháilte agus intuartha.

In 2014, bhí an focal “intuartha” an-neamhghnách sa chomhthéacs seo.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is fóntais uilíoch é Terraform. Má tá API agat, is féidir leat gach rud a rialú go hiomlán:

  • Is féidir leat níos mó ná 120 soláthraí a úsáid chun gach rud atá uait a bhainistiú.
  • Mar shampla, is féidir leat Terraform a úsáid chun cur síos a dhéanamh ar rochtain ar stórtha GitHub.
  • Is féidir leat fiú bugs a chruthú agus a dhúnadh i Jira.
  • Is féidir leat méadracht New Relic a bhainistiú.
  • Is féidir leat fiú comhaid a chruthú i dropbox más mian leat i ndáiríre.

Baintear é seo go léir amach ag baint úsáide as soláthraithe Terraform, a bhfuil API oscailte acu ar féidir cur síos a dhéanamh orthu in Go.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ligean le rá thosaigh muid ag baint úsáide as Terraform, léigh roinnt doiciméadú ar an suíomh, d'fhéach sé ar roinnt físeáin, agus thosaigh sé ag scríobh main.tf, mar a léirigh mé ar na sleamhnáin roimhe seo.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus tá gach rud iontach, tá comhad agat a chruthaíonn VPC.

Más mian leat VPC a chruthú, sonraíonn tú thart ar an 12 líne seo. Déan cur síos ar an réigiún is mian leat a chruthú, cé na cidr_block de sheoltaí IP le húsáid. Sin é an méid.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ar ndóigh, beidh an tionscadal ag fás de réir a chéile.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus beidh tú ag cur go leor rudaí nua leis ansin: acmhainní, foinsí sonraí, comhtháthóidh tú le soláthraithe nua, go tobann beidh tú ag iarraidh Terraform a úsáid chun úsáideoirí a bhainistiú i do chuntas GitHub, etc. B'fhéidir gur mhaith leat úsáid a bhaint as éagsúla Soláthraithe DNS , trasnaigh gach rud. Déanann Terraform é seo éasca.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Breathnaímid ar an sampla seo a leanas.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Cuireann tú internet_gateway leis de réir a chéile toisc go dteastaíonn uait acmhainní ó do VPC chun rochtain idirlín a bheith agat. Is smaoineamh maith é seo.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é an toradh seo main.tf:

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é seo an chuid is airde de main.tf.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é seo an chuid íochtair de main.tf.

Ansin cuireann tú subnet leis. Faoin am is mian leat geataí NAT, bealaí, táblaí ródaithe agus bunch folíonta eile a chur leis, ní bheidh 38 líne agat, ach thart ar 200-300 líne.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é sin, tá do chomhad main.tf ag fás de réir a chéile. Agus is minic a chuireann daoine gach rud in aon chomhad. 10-20 Kb le feiceáil i main.tf. Samhlaigh gur ábhar téacs é 10-20 Kb. Agus tá gach rud ceangailte le gach rud. De réir a chéile tá sé seo ag éirí deacair oibriú leis. Is cás úsáideora maith é 10-20 Kb, uaireanta níos mó. Agus ní i gcónaí a cheapann daoine go bhfuil sé seo go dona.

Mar a dhéantar i gcláir rialta, ie ní bonneagar mar chód, táimid cleachta le húsáid a bhaint as sraith ranganna, pacáistí, modúil, grúpálacha éagsúla. Ceadaíonn Terraform duit an rud céanna a dhéanamh i bhfad.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

  • Tá an cód ag fás.
  • Tá spleáchais idir acmhainní ag fás freisin.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus tá géarghá, mór againn. Tuigimid nach féidir linn maireachtáil mar seo a thuilleadh. Tá ár gcód ag éirí ollmhór. Ar ndóigh, níl 10-20 Kb an-mhór, ach nílimid ag caint ach faoi chruach an líonra, i.e. níl ach acmhainní líonra curtha leis agat. Nílimid ag caint faoi Chomhardú Luchtaithe Iarratais, braisle imscaradh ES, Kubernetes, etc., áit ar féidir 100 Kb a fhí isteach go héasca. Má scríobhann tú seo go léir síos, gheobhaidh tú amach go han-luath go soláthraíonn Terraform modúil Terraform.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is cumraíocht féinchuimsitheach Terraform iad modúil Terraform a bhainistítear mar ghrúpa. Sin uile ní mór duit fios a bheith agat faoi mhodúil Terraform. Níl siad cliste ar chor ar bith, ní cheadaíonn siad duit aon naisc casta a dhéanamh ag brath ar rud éigin. Titeann sé seo go léir ar ghualainn na bhforbróirí. Is é sin, níl anseo ach cumraíocht Terraform de chineál éigin a scríobh tú cheana féin. Agus is féidir leat glaoch go simplí air mar ghrúpa.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Mar sin táimid ag iarraidh a thuiscint conas a dhéanfaimid ár gcód 10-20-30 Kb a bharrfheabhsú. Táimid ag tabhairt faoi deara de réir a chéile go gcaithfimid roinnt modúl a úsáid.

Is modúil acmhainne an chéad chineál modúl a dtagann tú trasna orthu. Ní thuigeann siad cad atá i gceist le do bhonneagar, cad faoi do ghnó, cá háit agus cad iad na coinníollacha. Is iad seo go díreach na modúil a riarann ​​mise, agus an pobal foinse oscailte, agus a chuireamar chun tosaigh mar bhunchlocha tógála do bhonneagair.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Sampla de mhodúl acmhainne.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Nuair a ghlaoimid modúl acmhainne, sonraímid cén chonair ar cheart dúinn a bhfuil ann a luchtú.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Cuirimid in iúl cén leagan ba mhaith linn a íoslódáil.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Gabhaimid bunch argóintí ansin. Sin é an méid. Sin uile ní mór dúinn a bheith ar an eolas nuair a úsáidimid an modúl seo.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Síleann go leor daoine má úsáideann siad an leagan is déanaí, beidh gach rud cobhsaí. Ach níl. Ní mór an bonneagar a leagan amach, ní mór dúinn freagra soiléir a thabhairt ar cén leagan a úsáideadh é seo nó an comhpháirt sin dó.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Seo é an cód atá taobh istigh den mhodúl seo. Modúl grúpa slándála. Anseo téann an scrolla go dtí an 640ú líne. Is tasc an-neamhfhánach é acmhainn grúp slándála a chruthú in Amazon i ngach cumraíocht fhéideartha. Ní leor ach grúpa slándála a chruthú agus a insint dó cad iad na rialacha atá le tabhairt dó. Bheadh ​​​​sé an-simplí. Tá milliún srianta éagsúla taobh istigh de Amazon. Mar shampla, má úsáideann tú Críochphointe VPC, liosta réimír, APIanna éagsúla agus déanann sé iarracht é seo go léir a chomhcheangal le gach rud eile, ansin ní cheadaíonn Terraform duit é seo a dhéanamh. Agus ní cheadaíonn API Amazon é seo ach an oiread. Dá bhrí sin, ní mór dúinn an loighic uafásach seo go léir a cheilt i modúl agus an cód úsáideora a bhreathnaíonn díreach mar seo a thabhairt.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ní gá go mbeadh a fhios ag an úsáideoir conas a dhéantar é taobh istigh.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Réitíonn an dara cineál modúl, atá comhdhéanta de mhodúil acmhainne, fadhbanna atá níos infheidhme cheana féin do do ghnó. Go minic is áit é seo atá mar shíneadh do Terraform agus leagann sé roinnt luachanna dochta le haghaidh clibeanna, le haghaidh caighdeáin chuideachta. Is féidir leat feidhmiúlacht a chur leis ann freisin nach gceadaíonn Terraform duit é a úsáid faoi láthair. Tá sé seo ceart anois. Anois leagan 0.11, atá ar tí a bheith ina rud den am atá caite. Ach fós féin, is iad réamhphróiseálaithe, jsonnet, cookiecutter agus dornán rudaí eile an mheicníocht chúnta a chaithfear a úsáid le haghaidh obair iomlán.

Ansin taispeánfaidh mé roinnt samplaí de seo.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Tugtar an modúl bonneagair ar an mbealach céanna go díreach.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Léirítear an fhoinse ónar féidir an t-ábhar a íoslódáil.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Aistrítear braon luachanna isteach sa mhodúl seo agus cuirtear isteach iad.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ansin, taobh istigh den mhodúl seo, glaoitear sraith modúl acmhainne chun VPC nó Cothromóir Ualach Feidhmchláir a chruthú, nó chun grúpa slándála a chruthú nó do bhraisle Seirbhíse Coimeádán Leaisteacha.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Tá dhá chineál modúl ann. Tá sé seo tábhachtach a thuiscint mar níl an chuid is mó den fhaisnéis atá grúpáilte agam sa tuarascáil seo scríofa sna doiciméid.

Agus tá an doiciméadú i Terraform ceart anois go leor fadhbanna mar a deir sé ach go bhfuil na gnéithe seo, is féidir leat iad a úsáid. Ach ní deir sí conas na gnéithe seo a úsáid, cén fáth go bhfuil sé níos fearr iad a úsáid. Mar sin, scríobhann líon an-mhór daoine rud éigin nach féidir leo maireachtáil leis.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Breathnaímid ar conas na modúil seo a scríobh an chéad uair eile. Ansin feicfimid conas glaoch orthu agus conas oibriú leis an gcód.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Clárlann Terraform - https://registry.terraform.io/

Leid #0 ná gan modúil acmhainne a scríobh. Tá an chuid is mó de na modúil seo scríofa duit cheana féin. Mar a dúirt mé, tá siad foinse oscailte, nach bhfuil siad go bhfuil aon cheann de do loighic gnó, nach bhfuil siad luachanna hardcoded le haghaidh seoltaí IP, pasfhocail, etc Tá an modúl an-solúbtha. Agus is dócha go bhfuil sé scríofa cheana féin. Tá go leor modúl le haghaidh acmhainní ó Amazon. Maidir le 650. Agus tá an chuid is mó acu ar chaighdeán maith.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Sa sampla seo, tháinig duine éigin chugat agus dúirt sé, “Ba mhaith liom a bheith in ann bunachar sonraí a bhainistiú. Cruthaigh modúl ionas gur féidir liom bunachar sonraí a chruthú." Níl a fhios ag an duine sonraí cur chun feidhme Amazon nó Terraform. Deir sé go simplí: "Ba mhaith liom MSSQL a bhainistiú." Is é sin, i gceist againn go mbeidh sé glaoch ar ár modúl, pas a fháil sa chineál innill ann, agus in iúl an crios ama.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus níor cheart go mbeadh a fhios ag duine go gcruthóimid dhá acmhainn éagsúla taobh istigh den mhodúl seo: ceann amháin le haghaidh MSSQL, an dara ceann le haghaidh gach rud eile, ach amháin toisc nach féidir leat luachanna crios ama a shonrú in Terraform 0.11 mar roghnach.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus ag an mbealach amach as an modúl seo, beidh duine in ann a fháil go simplí seoladh. Ní bheidh a fhios aige cén bunachar sonraí, as an acmhainn atá á chruthú againn go hinmheánach. Is gné an-tábhachtach de cheilt é seo. Agus baineann sé seo ní hamháin leis na modúil sin atá poiblí i bhfoinse oscailte, ach freisin leis na modúil sin a scríobhfaidh tú taobh istigh de do thionscadail agus d'fhoirne.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é seo an dara argóint, atá tábhachtach go leor má tá tú ag baint úsáide as Terraform ar feadh tamaill. Tá stór agat inar chuir tú do mhodúil Terraform ar fad do do chuideachta. Agus is gnách go leor go dtiocfaidh méadú ar mheigibheart amháin nó dhó ar an tionscadal seo le himeacht ama. Tá sé seo go breá.

Ach is í an fhadhb atá ann ná mar a ghlaonn Terraform na modúil seo. Mar shampla, má ghlaonn tú modúl chun gach úsáideoir aonair a chruthú, déanfaidh Terraform an stór iomlán a luchtú ar dtús agus ansin déanfaidh sé nascleanúint chuig an bhfillteán ina bhfuil an modúl sonrach sin suite. Ar an mbealach seo íoslódálann tú meigibheart amháin gach uair. Má bhainistíonn tú 100 nó 200 úsáideoir, ansin déanfaidh tú 100 nó 200 meigibheart a íoslódáil, agus ansin téigh chuig an bhfillteán sin. Mar sin, go nádúrtha ní mian leat a lán rudaí a íoslódáil gach uair a bhuaileann tú "Terraform init".

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

https://github.com/mbtproject/mbt

Tá dhá réiteach ar an bhfadhb seo. Is é an chéad cheann ná cosáin choibhneasta a úsáid. Ar an mbealach seo cuireann tú in iúl sa chód go bhfuil an fillteán áitiúil (./). Agus sula seolann tú rud ar bith, déanann tú clón Git den stór seo go háitiúil. Ar an mbealach seo a dhéanann tú é uair amháin.

Ar ndóigh, tá go leor míbhuntáistí ann. Mar shampla, ní féidir leat leagan a úsáid. Agus bíonn sé seo deacair uaireanta maireachtáil leis.

An dara réiteach. Má tá go leor fo-mhodúil agat agus go bhfuil cineál éigin de phíblíne bunaithe agat cheana féin, tá an tionscadal MBT ann, a ligeann duit go leor pacáistí éagsúla a bhailiú ó monorepository agus iad a uaslódáil chuig S3. Is bealach an-mhaith é seo. Mar sin, ní mheáfaidh an comhad iam-user-1.0.0.zip ach 1 Kb, toisc go bhfuil an cód chun an acmhainn seo a chruthú an-bheag. Agus oibreoidh sé i bhfad níos tapúla.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Labhraímis faoi na rudaí nach féidir a úsáid i modúil.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Cén fáth a bhfuil an t-olc seo i modúil? Is é an rud is measa ná glacadh leis an úsáideoir. Glac leis gur rogha fíordheimhnithe soláthraí é an t-úsáideoir is féidir le daoine éagsúla a úsáid. Mar shampla, déanfaimid go léir an ról a chomhshamhlú. Ciallaíonn sé seo go nglacfaidh Terraform an ról seo. Agus ansin leis an ról seo déanfaidh sé gníomhartha eile.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus is é an t-olc ná más maith le Vasya ceangal le Amazon ar bhealach amháin, mar shampla, ag baint úsáide as an athróg réamhshocraithe timpeallachta, agus is maith le Petya a eochair roinnte a úsáid, atá aige in áit rúnda, ansin ní féidir leat an dá cheann a shonrú. Terraform. Agus ionas nach bhfaighidh siad taithí ar fhulaingt, ní gá an bloc seo a chur in iúl sa mhodúl. Ní mór é seo a léiriú ag leibhéal níos airde. Is é sin, tá modúl acmhainne againn, modúl bonneagair agus comhdhéanamh ar a bharr. Agus ba chóir é seo a chur in iúl áit éigin níos airde.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é an dara olc an soláthraí. Anseo níl an t-olc chomh fánach, mar má scríobhann tú cód agus go n-oibríonn sé duit, is féidir leat smaoineamh má oibríonn sé, cén fáth a n-athróidh sé.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é an t-olc ná nach mbíonn smacht agat i gcónaí nuair a sheolfar an soláthraí seo, ar dtús. Agus ar an dara dul síos, ní rialaíonn tú cad a chiallaíonn Aws ec2, i.e. an bhfuil muid ag caint faoi Linux nó Windows anois. Mar sin ní féidir leat rud éigin a scríobh a oibreoidh mar an gcéanna ar chórais oibriúcháin éagsúla nó do chásanna úsáideoirí éagsúla.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é an sampla is coitianta, a shonraítear sa doiciméadú oifigiúil freisin, ná má scríobhann tú aws_instance agus má shonraíonn tú roinnt argóintí, níl aon rud cearr leis sin má shonraíonn tú an soláthraí “local-exec” ann agus má ritheann tú do fhreagra- leabhar súgartha.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Go deimhin, tá, níl aon rud cearr leis sin. Ach go litriúil go luath tuigfidh tú nach bhfuil an rud local-exec seo ann, mar shampla, i launch_configuration.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus nuair a úsáideann tú launch_configuration, agus tú ag iarraidh grúpa uathscálaithe a chruthú ó shampla amháin, ansin i launch_configuration níl aon choincheap "soláthraí". Tá an coincheap "sonraí úsáideora".

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Dá bhrí sin, is réiteach níos uilíoch é sonraí úsáideoirí a úsáid. Agus seolfar é ar an ásc féin, nuair a bheidh an ásc ar siúl, nó sna sonraí úsáideora céanna, nuair a úsáideann an grúpa uathscálaithe an launch_configuration seo.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Más mian leat fós an soláthraí a rith, toisc gur comhpháirt gluing é, nuair a chruthaítear acmhainn amháin, ag an nóiméad sin ní mór duit do sholáthraí, d'ordú a rith. Tá go leor cásanna den sórt sin ann.

Agus is é an acmhainn is ceart chuige seo ná null_resource. Is acmhainn chaocha é null_resource nach gcruthaítear riamh. Ní chuireann sé teagmháil le rud ar bith, gan API, gan scálaithe uathoibríoch. Ach ceadaíonn sé duit a rialú nuair a rith an t-ordú. Sa chás seo, reáchtáiltear an t-ordú le linn cruthú.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Nasc http://bit.ly/common-traits-in-terraform-modules

Tá roinnt comharthaí ann. Ní rachaidh mé isteach go mion ar na comharthaí go léir. Tá alt faoi seo. Ach má d’oibrigh tú le Terraform nó má d’úsáid tú modúil daoine eile, is minic a thug tú faoi deara go bhfuil go leor modúl, cosúil leis an gcuid is mó den chód foinse oscailte, á scríobh ag daoine dá gcuid riachtanas féin. Scríobh fear é agus réitigh sé a fhadhb. bhfostú mé é i GitHub, lig sé beo. Beidh sé beo, ach mura bhfuil aon doiciméadú agus samplaí ann, ansin ní bheidh aon duine a úsáid. Agus mura bhfuil feidhmiúlacht ann a ligeann duit beagán níos mó ná a thasc sonrach a réiteach, ansin ní úsáidfidh aon duine é ach an oiread. Tá an oiread sin bealaí ann chun úsáideoirí a chailleadh.

Más mian leat rud éigin a scríobh ionas go n-úsáidfidh daoine é, ansin molaim na comharthaí seo a leanúint.

Seo iad:

  • Doiciméadú agus samplaí.
  • Feidhmiúlacht iomlán.
  • Mainneachtainí réasúnta.
  • Cód glan.
  • Tástálacha.

Is staid dhifriúil iad na trialacha mar is deacair go leor iad a scríobh. Creidim níos mó i gcáipéisíocht agus samplaí.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Mar sin, d'fhéachamar ar conas modúil a scríobh. Tá dhá argóint ann. Is é an chéad cheann, agus is é sin an rud is tábhachtaí, ná scríobh más féidir leat, toisc go bhfuil na tascanna seo déanta cheana féin ag cuid mhór daoine roimh tú. Agus ar an dara dul síos, má shocraíonn tú fós, déan iarracht gan soláthraithe a úsáid i modúil agus soláthraithe.

Is é seo an chuid liath den doiciméadú. Seans go bhfuil tú ag smaoineamh anois: “Tá rud éigin doiléir. Níl sé cinnte." Ach feicfimid i sé mhí.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Anois, déanaimis labhairt faoi conas na modúil seo a ghlaoch.

Tuigimid go bhfásann ár gcód le himeacht ama. Níl comhad amháin againn a thuilleadh, tá 20 comhad againn cheana féin. Tá siad go léir in aon fhillteán amháin. Nó b'fhéidir cúig fhillteán. B'fhéidir go bhfuil muid ag tosú ar iad a bhriseadh síos ar bhealach éigin de réir réigiúin, de réir roinnt comhpháirteanna. Ansin tuigimid go bhfuil roinnt rudaí bunúsacha sioncronaithe agus ceolfhoirne againn anois. Is é sin, ní mór dúinn a thuiscint cad ba cheart dúinn a dhéanamh má d'athraigh muid acmhainní líonra, cad ba cheart dúinn a dhéanamh leis an gcuid eile dár n-acmhainní, conas a chur faoi deara na spleáchais, etc.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Tá dhá dhálaí foircneacha ann. Tá an chéad cheann ar fad i gceann amháin. Tá máistirchomhad amháin againn. De thuras na huaire, ba é seo an cleachtas oifigiúil is fearr ar shuíomh Gréasáin Terraform.

Ach anois tá sé scríofa mar dhímheas agus bainte. Le himeacht ama, thuig pobal Terraform go raibh sé seo i bhfad ón gcleachtas is fearr, toisc gur thosaigh daoine ag úsáid an tionscadail ar bhealaí éagsúla. Agus tá fadhbanna ann. Mar shampla, nuair a liostaímid gach spleáchas in aon áit amháin. Bíonn cásanna ann nuair a chliceálann muid “Plean terraform” agus go dtí go nuashonraíonn Terraform stáit na n-acmhainní go léir, is féidir go leor ama a chaitheamh.

Tá go leor ama, mar shampla, 5 nóiméad. I gcás roinnt tá sé seo go leor ama. Tá cásanna feicthe agam inar thóg sé 15 nóiméad. Chaith API AWS 15 nóiméad ag iarraidh a dhéanamh amach cad a bhí ag tarlú le staid gach acmhainne. Is limistéar an-mhór é seo.

Agus, go nádúrtha, beidh fadhb ghaolmhar le feiceáil nuair is mian leat rud éigin a athrú in aon áit amháin, ansin fanann tú 15 nóiméad, agus tugann sé canbhás roinnt athruithe duit. Scairt tú, scríobh "Tá", agus chuaigh rud éigin mícheart. Is sampla an-dáiríre é seo. Ní dhéanann Terraform iarracht tú a chosaint ó fhadhbanna. Is é sin, scríobh cad ba mhaith leat. Beidh fadhbanna ann - do chuid fadhbanna. Cé nach bhfuil Terraform 0.11 ag iarraidh cabhrú leat ar bhealach ar bith. Tá áiteanna suimiúla áirithe in 0.12 a ligeann duit a rá: “Vasya, tá sé seo ag teastáil uait i ndáiríre, an féidir leat teacht ar do chéadfaí?”

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é an dara bealach ná an réimse seo a laghdú, is é sin, is féidir glaonna ó áit amháin a nascadh níos lú ó áit eile.

Is í an t-aon fhadhb atá ann ná go gcaithfidh tú níos mó cód a scríobh, i.e. ní mór duit cur síos a dhéanamh ar athróga i líon mór comhad agus é seo a nuashonrú. Ní maith le roinnt daoine é. Tá sé seo gnáth dom. Agus síleann daoine áirithe: “Cén fáth é seo a scríobh in áiteanna éagsúla, cuirfidh mé é go léir in aon áit amháin.” Tá sé seo indéanta, ach is é seo an dara foircneach.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Cé aige a bhfuil cónaí air seo go léir in aon áit amháin? Duine amháin, beirt, triúr, is é sin, tá duine ag baint úsáide as.

Agus cé a ghlaonn comhpháirt ar leith amháin, bloc amháin nó modúl bonneagair amháin? Cúig go seacht daoine. Tá sé seo fionnuar.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é an freagra is coitianta áit éigin sa lár. Má tá an tionscadal mór, ansin beidh tú go minic i gcás nach bhfuil aon réiteach oiriúnach agus nach n-oibríonn gach rud amach ann, mar sin deireadh tú suas le meascán. Níl aon rud cearr leis seo, chomh fada agus a thuigeann tú go bhfuil buntáistí ag an dá cheann.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Má d'athraigh rud éigin sa stack VPC agus go raibh tú ag iarraidh na hathruithe seo a chur i bhfeidhm ar EC2, ie go raibh tú ag iarraidh an grúpa uathscálaithe a thabhairt cothrom le dáta toisc go raibh fo-líon nua agat, glaoim orthú spleáchais ar an gcineál seo. Tá roinnt réitigh ann: cé a úsáideann cad é?

Thig liom a mholadh cad iad na réitigh atá ann. Is féidir leat Terraform a úsáid chun an draíocht a dhéanamh, nó is féidir leat comhaid a dhéanamh chun Terraform a úsáid. Agus féach an bhfuil rud éigin tar éis athrú ansin, is féidir leat é a sheoladh anseo.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Conas is maith leat an cinneadh seo? An gcreideann éinne gur réiteach fionnuar é seo? Feicim aoibh gháire, is cosúil go bhfuil amhras tagtha isteach.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ar ndóigh, ná bain triail as seo sa bhaile. Níor dearadh Terraform riamh le bheith á rith ó Terraform.

Ag tuairisc amháin dúirt siad liom: “Ní hea, ní oibreoidh sé seo.” Is é an pointe ná nár cheart go n-oibreodh sé. Cé go bhfuil cuma chomh hiontach air nuair is féidir leat Terraform a sheoladh ó Terraform, agus ansin Terraform, níor cheart duit é sin a dhéanamh. Ba cheart go dtosódh Terraform go han-éasca i gcónaí.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

https://github.com/gruntwork-io/terragrunt/

Más gá duit glaoch ornáidí nuair a bhíonn rud éigin athraithe in aon áit amháin, ansin tá Terragrunt.

Is áirgiúlacht é Terragrunt, breiseán le Terraform, a ligeann duit glaonna chuig modúil bhonneagair a chomhordú agus a chur i bhfeidhm.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Breathnaíonn gnáthchomhad cumraíochta Terraform mar seo.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Sonraíonn tú cén modúl ar leith is mian leat a ghlaoch.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Cé na spleáchais atá ag an modúl?

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus cad iad na hargóintí a nglacann an modúl seo leis. Sin go léir atá ar eolas faoi Terragrunt.

Tá an doiciméadú ann, agus tá 1 réalta ar GitHub. Ach i bhformhór na gcásanna is é seo an méid is gá duit a fhios. Agus tá sé seo an-éasca a chur i bhfeidhm i gcuideachtaí atá díreach ag tosú ag obair le Terraform.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Mar sin tá ceolfhoireann Terragrunt. Tá roghanna eile ann.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Anois, déanaimis labhairt faoi conas oibriú leis an gcód.

Más gá duit gnéithe nua a chur le do chód, tá sé seo éasca i bhformhór na gcásanna. Tá acmhainn nua á scríobh agat, tá gach rud simplí.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Má tá acmhainn éigin agat a chruthaigh tú roimh ré, mar shampla, d'fhoghlaim tú faoi Terraform tar éis duit cuntas AWS a oscailt agus gur mhaith leat na hacmhainní atá agat cheana féin a úsáid, bheadh ​​​​sé oiriúnach do mhodúl a leathnú ar an mbealach seo, ionas gur féidir tacaíonn sé le húsáid acmhainní atá ann cheana féin.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus thacaigh sé le cruthú acmhainní nua ag baint úsáide as an acmhainn bloc.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ar aschur tugaimid an t-aitheantas aschuir ar ais i gcónaí ag brath ar an méid a úsáideadh.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Tá an dara fadhb an-suntasach i Terraform 0.11 ag obair le liostaí.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é an deacracht ná má tá liosta úsáideoirí den sórt sin againn.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus nuair a chruthaímid na húsáideoirí seo ag baint úsáide as bloc acmhainn, ansin téann gach rud go breá. Téann muid tríd an liosta iomlán, ag cruthú comhad do gach ceann acu. Tá gach rud breá. Agus ansin, mar shampla, ba chóir úsáideoir3, atá i lár, a bhaint as seo, ansin déanfar na hacmhainní go léir a cruthaíodh tar éis dó a athchruthú mar go n-athróidh an t-innéacs.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ag obair le liostaí i dtimpeallacht státmhar. Cad is timpeallacht státmhar ann? Seo an cás ina gcruthaítear luach nua nuair a chruthaítear an acmhainn seo. Mar shampla, Eochair Rochtana AWS nó Eochair Rúnda AWS, i.e. nuair a chruthaímid úsáideoir, faightear Eochair Rochtana nó Rúnda nua. Agus gach uair a scriosfaimid úsáideoir, beidh eochair nua ag an úsáideoir seo. Ach ní feng shui é seo, mar ní bheidh an t-úsáideoir ag iarraidh a bheith ina chairde le linn má chruthaímid úsáideoir nua dó gach uair a fhágann duine éigin an fhoireann.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é seo an réiteach. Tá an cód seo scríofa i Jsonnet. Is teanga teimpléid ó Google é Jsonnet.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ligeann an t-ordú seo duit glacadh leis an teimpléad seo agus mar aschur filleann sé comhad json a dhéantar de réir do theimpléad.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Breathnaíonn an teimpléad mar seo.

Ceadaíonn Terraform duit oibriú le HCL agus Json araon ar an mbealach céanna, mar sin má tá an cumas agat Json a ghiniúint, is féidir leat é a shleamhnú isteach i Terraform. Déanfar an comhad leis an síneadh .tf.json a íoslódáil go rathúil.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus ansin oibrímid leis mar is gnách: tá feidhm ag terraform init, terramorm. Agus cruthaímid dhá úsáideoir.

Anois níl eagla orainn má fhágann duine éigin an fhoireann. Ní dhéanfaimid ach an comhad json a chur in eagar. Vasya Pupkin fhág, d'fhan Petya Pyatochkin. Ní bhfaighidh Petya Pyatochkin eochair nua.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ní obair Terraform i ndáiríre é Terraform a chomhtháthú le huirlisí eile. Cruthaíodh Terraform mar ardán chun acmhainní a chruthú agus sin é. Agus ní ábhar imní do Terraform gach rud a thagann chun cinn níos déanaí. Agus ní gá é a fhí isteach ann. Tá Ansible ann, a dhéanann gach rud atá uait.

Ach tagann cásanna chun cinn nuair is mian linn Terraform a leathnú agus roinnt ordú a ghlaoch tar éis rud éigin a bheith críochnaithe.

An chéad bhealach. Cruthaímid aschur ina scríobhaimid an t-ordú seo.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Agus ansin tugaimid an t-ordú seo ón aschur terraform bhlaosc agus sonraigh an luach atá uainn. Mar sin, déantar an t-ordú a fhorghníomhú leis na luachanna ionaid go léir. Tá sé an-chompordach.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

An dara bealach. Is é seo an úsáid a bhaintear as null_resource ag brath ar athruithe inár mbonneagar. Is féidir linn glaoch ar an exe local-céanna chomh luath agus a athraíonn ID roinnt acmhainní.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ar ndóigh, tá sé seo go léir réidh ar pháipéar, toisc go bhfuil a chuid cásanna imeall féin ag Amazon, cosúil le gach soláthraí poiblí eile.

Is é an cás imeall is coitianta ná nuair a osclaíonn tú cuntas AWS, bíonn sé tábhachtach cé na réigiúin a úsáideann tú; an bhfuil an ghné seo cumasaithe ann; b'fhéidir gur oscail tú é tar éis mhí na Nollag 2013; b'fhéidir go bhfuil tú ag úsáid réamhshocraithe i VPC srl. Tá go leor srianta ann. Agus scaipthe Amazon iad ar fud an doiciméadú.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Tá cúpla rud a mholaim a sheachaint.

Chun tús a chur, seachain gach argóint neamhrúnda taobh istigh den phlean Terraform nó CLI Terraform. Is féidir é seo ar fad a chur isteach i gcomhad tfvars nó in athróg timpeallachta.

Ach ní gá duit an t-ordú iomlán draíochta seo a chur de ghlanmheabhair. Plean terraform – var agus amach a théann muid. Is é an chéad athróg ná var, is é an dara athróg var, an tríú, an ceathrú. Is é an prionsabal is tábhachtaí maidir le hinfrastruchtúr mar chód a úsáidim is minice ná go díreach trí bhreathnú ar an gcód, ba cheart go mbeadh tuiscint shoiléir agam ar cad a úsáidtear ann, cén stát agus cad iad na luachanna. Agus mar sin ní gá dom an doiciméadú a léamh ná fiafraí de Vasya cad iad na paraiméadair a d’úsáid sé chun ár mbraisle a chruthú. Ní mór dom ach comhad a oscailt leis an síneadh tfvars, a mheaitseálann go minic leis an gcomhshaol, agus breathnú ar gach rud atá ann.

Chomh maith leis sin, ná húsáid argóintí sprice chun an raon feidhme a laghdú. Chun seo tá sé i bhfad níos éasca modúil bonneagair bheaga a úsáid.

Chomh maith leis sin, níl aon ghá le comhthreomhaireacht a theorannú agus a mhéadú. Má tá acmhainní 150 agam agus ba mhaith liom comhthreomhaireacht Amazon a mhéadú ón réamhshocrú 10 go 100, ansin is dóichí go rachaidh rud éigin mícheart. Nó d'fhéadfadh sé dul go maith anois, ach nuair a deir Amazon go bhfuil tú ag déanamh an iomarca glaonna, beidh tú i dtrioblóid.

Déanfaidh Terraform iarracht an chuid is mó de na fadhbanna seo a atosú, ach ní dhéanfaidh tú beagnach aon rud a bhaint amach. Rud tábhachtach is ea Parallelism=1 a úsáid má thagann tú trasna ar fhabht éigin laistigh den API AWS nó laistigh den soláthraí Terraform. Agus ansin ní mór duit a shonrú: comhthreomhaireacht = 1 agus fanacht go dtí go gcríochnaíonn Terraform glaoch amháin, ansin an dara ceann, ansin an tríú. Seolfaidh sé iad ceann ar cheann.

Is minic a fhiafraíonn daoine díom, “Cén fáth a gceapaim go bhfuil spásanna oibre Terraform olc?” Creidim gurb é prionsabal an bhonneagair mar chód ná féachaint cén bonneagar atá cruthaithe agus cad iad na luachanna leis.

Níor chruthaigh úsáideoirí spásanna oibre. Ní chiallaíonn sé seo gur scríobh úsáideoirí i saincheisteanna GitHub nach féidir linn maireachtáil gan spásanna oibre Terraform. Níl ní mar seo. Is réiteach tráchtála é Terraform Enterprise. Shocraigh Terraform ó HashiCorp go raibh spásanna oibre de dhíth orainn, mar sin rinneamar é a chomhdú. Braithim go bhfuil sé i bhfad níos éasca é a chur i bhfillteán ar leith. Ansin beidh comhaid beagán níos mó, ach beidh sé níos soiléire.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Conas a bheith ag obair leis an gcód? Go deimhin, is é an t-aon phian atá ag obair le liostaí. Agus a ghlacadh Terraform níos éasca. Ní hé seo an rud a dhéanfaidh gach rud iontach duit. Ní gá gach rud atá scríofa sa doiciméadú a bhrú ann.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Scríobhadh ábhar na tuarascála “don todhchaí”. Labhróidh mé faoi seo go han-ghairid. Don todhchaí, ciallaíonn sé seo go scaoilfear 0.12 go luath.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Is é 0.12 tonna de rudaí nua. Má thagann tú ó ríomhchlárú rialta, ansin chailleann tú gach cineál bloic dinimiciúil, lúb, oibríochtaí comparáide ceart agus coinníollach, i gcás nach ríomhtar an taobh clé agus ar dheis ag an am céanna, ach ag brath ar an staid. Chailleann tú go leor é, mar sin déanfaidh 0.12 é a réiteach duit.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Ach! Má scríobhann tú níos lú agus níos simplí, ag baint úsáide as modúil réamhdhéanta agus réitigh tríú páirtí, ansin ní bheidh ort fanacht agus tá súil agam go dtiocfaidh 0.12 agus gach rud a shocrú duit.

Cur síos ar an mbonneagar in Terraform don todhchaí. Anton Babenko (2018)

Go raibh maith agat as an tuairisc! Labhair tú faoi bhonneagar mar chód agus go litriúil dúirt tú focal amháin faoi thástálacha. An bhfuil gá le trialacha i modúil? Cé leis atá an fhreagracht seo? An gá dom é a scríobh mé féin nó an bhfuil na modúil freagrach as?

Beidh an bhliain seo chugainn a líonadh le tuarascálacha go bhfuil cinneadh déanta againn gach rud a thástáil. Cad atá le tástáil an cheist is mó. Tá go leor spleáchais ann, go leor srianta ó sholáthraithe éagsúla. Nuair a bhíonn tú féin agus mise ag caint agus tú ag rá: “Tá tástálacha de dhíth orm,” fiafraím ansin: “Cad a dhéanfaidh tú a thástáil?” Deir tú go ndéanfaidh tú tástáil i do réigiún. Ansin deirim nach n-oibríonn sé seo i mo réigiún. Is é sin, ní bheidh muid in ann aontú faoi seo fiú. Gan trácht ar go bhfuil a lán de na fadhbanna teicniúla. Is é sin, conas na tástálacha seo a scríobh ionas go mbeidh siad leordhóthanach.

Tá taighde gníomhach á dhéanamh agam ar an ábhar seo, i.e. conas tástálacha a ghiniúint go huathoibríoch bunaithe ar an mbonneagar a scríobh tú. Is é sin, má scríobh tú an cód seo, ansin is gá dom a rith, bunaithe ar seo is féidir liom tástálacha a chruthú.

Terratest ar cheann de na leabharlanna is minicí a luaitear a ligeann duit tástálacha comhtháthú a scríobh le haghaidh Terraform. Tá sé seo ar cheann de na fóntais. Is fearr liom an cineál DSL, mar shampla, rspec.

Anton, go raibh maith agat as an tuairisc! Valery is ainm dom. Lig dom ceist bheag fealsúnach a chur. Go coinníollach, tá soláthar ann, tá imscaradh ann. Cruthaíonn soláthar mo bhonneagar, le linn imscaradh líonaimid é le rud éigin úsáideach, mar shampla, freastalaithe, feidhmchláir, etc. Agus tá sé i mo cheann go bhfuil Terraform níos mó le haghaidh soláthar, agus tá Ansible níos mó le haghaidh imscaradh, toisc go bhfuil Ansible freisin le haghaidh fisiceach An bonneagar ligeann duit nginx, Postgres a shuiteáil. Ach ag an am céanna, is cosúil go gceadaíonn Ansible soláthar, mar shampla, acmhainní Amazon nó Google. Ach ceadaíonn Terraform leat roinnt bogearraí a imscaradh ag baint úsáide as a modúil. Ó do dhearcadh féin, an bhfuil teorainn de shaghas éigin a ritheann idir Terraform agus Ansible, cén áit agus cad is fearr le húsáid? Nó, mar shampla, an gceapann tú go bhfuil Ansible cheana féin truflais, ba chóir duit iarracht a úsáid Terraform do gach rud?

Ceist mhaith, Valery. Creidim nach bhfuil aon athrú ar Terraform ó thaobh cuspóra ó 2014 i leith. Cruthaíodh é le haghaidh bonneagair agus fuair sé bás don bhonneagar. Bhí agus beidh gá againn fós le bainistíocht cumraíochta Ansible. Is é an dúshlán atá ann ná go bhfuil sonraí úsáideora taobh istigh de launch_configuration. Agus ansin tarraingíonn tú Ansible, etc. Seo an t-idirdhealú caighdeánach is fearr liom.

Má tá muid ag caint faoi infrastruchtúr álainn, ansin tá fóntais cosúil le Packer a bhailíonn an íomhá seo. Agus ansin úsáideann Terraform an fhoinse sonraí chun an íomhá seo a aimsiú agus a launch_configuration a nuashonrú. Is é sin, ar an mbealach seo tá an phíblíne go bhfuil muid ag tarraingt Tracker ar dtús, ansin tarraingt Terraform. Agus má tharlaíonn tógáil, tarlaíonn athrú nua.

Dia dhuit! Go raibh maith agat as an tuairisc! Misha is ainm dom, cuideachta RBS. Is féidir leat glaoch ar Ansible trí sholáthraí agus acmhainn á cruthú. Tá ábhar ag Ansible freisin ar a dtugtar fardal dinimiciúil. Agus is féidir leat Terraform a ghlaoch ar dtús, agus ansin glaoch ar Ansible, a ghlacfaidh acmhainní ón stát agus é a fhorghníomhú. Cad atá níos fearr?

Úsáideann daoine an dá cheann ar chomh-rath. Feictear dom gur rud áisiúil é fardal dinimiciúil in Ansible, mura bhfuilimid ag caint faoi ghrúpa uathscálaithe. Toisc go bhfuil ár bhfoireann uirlisí féin againn cheana féin sa ghrúpa uathscálaithe, ar a dtugtar launch_configuration. I launch_configuration déanaimid taifead ar gach rud is gá a sheoladh nuair a chruthaímid acmhainn nua. Mar sin, le Amazon, ag baint úsáide as fardal dinimiciúil agus ag léamh an comhad Terraform ts, i mo thuairim, tá overkill. Agus má úsáideann tú uirlisí eile nach bhfuil aon choincheap “grúpa uathscálaithe” ann, mar shampla, úsáideann tú DigitalOcean nó soláthraí éigin eile nach bhfuil grúpa uathscálaithe ann, ansin beidh ort an API a tharraingt de láimh, seoltaí IP a aimsiú, a chruthú. comhad fardail dinimiciúil , agus beidh Ansible ag dul tríd cheana féin. Is é sin, le haghaidh Amazon tá launch_configuration, agus do gach rud eile tá fardal dinimiciúil.

Foinse: will.com

Add a comment