ProHoster > Blog > Rianachd > Mar a thòisicheas tu a’ dèanamh deuchainn air Ansible, ag ath-nuadhachadh a’ phròiseict ann am bliadhna agus gun a bhith craicte
Mar a thòisicheas tu a’ dèanamh deuchainn air Ansible, ag ath-nuadhachadh a’ phròiseict ann am bliadhna agus gun a bhith craicte
A’ tòiseachadh bhon dàrna gealltanas, bidh còd sam bith na dhìleab, oir tha na ciad bheachdan a’ tòiseachadh a’ gluasad bho fhìrinn chruaidh. Chan eil seo math no dona, is e rud a th’ ann a tha duilich argamaid a dhèanamh leis agus feumar a bhith beò leis. Is e pàirt den phròiseas seo ath-bheachdachadh. Ath-leasachadh bun-structair mar chòd. Tòisichidh an sgeulachd air mar as urrainn dhut Ansible ath-nuadhachadh ann am bliadhna agus gun a dhol às mo chiall.
Breith na Dìleab
Latha #1: Euslainteach Zero
Uair dhe na h-uairean bha pròiseact cumhach ann. Bha sgioba leasachaidh Dev agus innleadairean Ops aca. Bha iad a 'fuasgladh na h-aon duilgheadas: mar a chleachdas luchd-frithealaidh agus a' ruith iarrtas. B’ e an duilgheadas a bh’ ann gun do dh’ fhuasgail gach sgioba an duilgheadas seo na dhòigh fhèin. Aig a 'phròiseact, chaidh co-dhùnadh Ansible a chleachdadh gus eòlas a shioncronachadh eadar sgiobaidhean Dev agus Ops.
Latha # 89: Breith Dìleab
Gun a bhith mothachail dhaibh fhèin, bha iad airson a dhèanamh cho math 's as urrainn dhaibh, ach b' e dìleab a bh 'ann. Ciamar a tha seo a’ tachairt?
Tha obair èiginneach againn an seo, dèanamaid hack salach agus an uairsin a chàradh.
Chan fheum thu sgrìobhainnean a sgrìobhadh agus tha a h-uile dad soilleir dè a tha a’ dol an seo.
Tha mi eòlach air Ansible/Python/Bash/Terraform! Seall mar as urrainn dhomh a sheachnadh!
Tha mi nam leasaiche làn-stack overflow agus rinn mi leth-bhreac de seo bho stackoverflow, chan eil fios agam ciamar a tha e ag obair, ach tha e a’ coimhead fionnar agus a ’fuasgladh na duilgheadas.
Mar thoradh air an sin, gheibh thu seòrsa còd neo-thuigsinn nach eil sgrìobhainnean ann, chan eil e soilleir dè a nì e, a bheil feum air, ach is e an duilgheadas a th ’ann gum feum thu a leasachadh, atharrachadh, cuir a-steach crutches agus taic. , a’ dèanamh an t-suidheachaidh nas miosa buileach.
Chan eil am modal IaC a chaidh a dhealbhadh agus a chuir an gnìomh an toiseach a’ coinneachadh ri riatanasan luchd-cleachdaidh / gnìomhachais / sgiobaidhean eile, agus tha an ùine airson atharrachaidhean a dhèanamh air a’ bhun-structar a’ sguir a bhith iomchaidh. Aig an àm seo, thig an tuigse gu bheil an t-àm ann gnìomh a ghabhail.
IaC ag ath-bheachdachadh
Latha #139: A bheil fìor fheum agad air ath-fhactaraidh?
Mus dèan thu cabhag gu refactor, feumaidh tu grunn cheistean cudromach a fhreagairt:
Carson a tha feum agad air seo uile?
A bheil ùine agad?
A bheil eòlas gu leòr?
Mura h-eil fios agad ciamar a fhreagras tu na ceistean, thig an ath-leasachadh gu crìch mus tòisich e eadhon, air neo dh’ fhaodadh e fàs nas miosa. Air sgàth bha eòlas ( Na dh ’ionnsaich mi bho bhith a’ dèanamh deuchainn air 200 loidhne de chòd bun-structair), an uairsin fhuair am pròiseact iarrtas airson cuideachadh gus na dreuchdan a rèiteachadh agus an còmhdach le deuchainnean.
Latha # 149: Ag ullachadh an refactoring
Is e a 'chiad rud a bhith ag ullachadh. Dèan co-dhùnadh dè a nì sinn. Gus seo a dhèanamh, bidh sinn a’ conaltradh, a’ lorg raointean trioblaid agus a’ lorg dhòighean air am fuasgladh. Bidh sinn a’ clàradh nam bun-bheachdan a thig às ann an dòigh air choireigin, mar eisimpleir artaigil ann an comar, gus an èirich a’ cheist “dè as fheàrr?” no "Dè tha ceart?" Chan eil sinn air ar slighe a chall. Anns a 'chùis againn, chùm sinn ris a' bheachd roinn agus riaghladh: bidh sinn a’ briseadh a’ bhun-structair gu pìosan beaga/bricichean. Tha an dòigh-obrach seo a 'toirt cothrom dhut pìos bun-structair iomallach a ghabhail, tuigsinn dè a nì e, a chòmhdach le deuchainnean agus atharrachadh gun eagal a bhith a' briseadh rud sam bith.
Tha e coltach gu bheil deuchainn bun-structair gu bhith na chlach-oisinn agus an seo is fhiach iomradh a thoirt air pioramaid deuchainn bun-structair. Dìreach an aon bheachd a thathas a’ leasachadh, ach airson bun-structair: tha sinn a’ gluasad bho dheuchainnean sgiobalta saor a nì sgrùdadh air rudan sìmplidh, leithid indentation, gu deuchainnean làn-chuimseach daor a bhios a’ cleachdadh a’ bhun-structair gu lèir.
Oidhirpean deuchainn iomchaidh
Mus tèid sinn a mhìneachadh mar a chòmhdaich sinn deuchainnean Ansible air a’ phròiseact, bheir mi cunntas air na h-oidhirpean agus na dòighean-obrach a fhuair mi an cothrom a chleachdadh na bu thràithe gus co-theacsa nan co-dhùnaidhean a chaidh a dhèanamh a thuigsinn.
Latha Àireamh -997: Solarachadh SDS
A’ chiad uair a rinn mi deuchainn air Ansible bha e air pròiseact gus SDS (Stòradh Bathar-bog Mìnichte) a leasachadh. Tha artaigil air leth air a’ chuspair seo Mar a bhriseas tu baidhsagalan thairis air crutches nuair a bhios tu a’ dèanamh deuchainn air do chuairteachadh, ach ann an ùine ghoirid, chrìochnaich sinn le pioramaid deuchainn neo-dhìreach agus deuchainn a chuir sinn seachad 60-90 mionaid air aon àite, a tha fada. B 'e am bunait deuchainnean e2e, i.e. chuir sinn a-steach stàladh làn-chuimseach agus an uairsin rinn sinn deuchainn air. B’ e an rud a bha na bu mhiosa buileach a bhith a’ cruthachadh a bhaidhsagal fhèin. Ach feumaidh mi aideachadh, dh'obraich am fuasgladh seo agus leig e le sgaoileadh seasmhach.
Latha # -701: Cidsin ciallach agus deuchainn
B’ e leasachadh a’ bheachd deuchainn Ansible cleachdadh innealan deiseil, is e sin cidsin deuchainn / cidsin-ci agus inspec. Chaidh an roghainn a dhearbhadh le eòlas air Ruby (airson tuilleadh fiosrachaidh, faic an artaigil air Habré: Am bi prògramadairean YML a’ bruadar mu bhith a’ dèanamh deuchainn air Ansible?) ag obair nas luaithe, mu 40 mionaid airson 10 dreuchdan. Chruthaich sinn pasgan de dh’ innealan brìgheil agus ruith sinn deuchainnean a-staigh.
San fharsaingeachd, dh'obraich am fuasgladh, ach bha beagan grùid ann mar thoradh air iomadachd. Nuair a chaidh an àireamh de dhaoine a chaidh a dhearbhadh àrdachadh gu 13 dreuchdan bunaiteach agus 2 meta dreuchdan a ’cothlamadh dreuchdan nas lugha, an uairsin gu h-obann thòisich na deuchainnean a’ ruith airson 70 mionaid, a tha faisg air 2 uair nas fhaide. Bha e duilich bruidhinn mu chleachdaidhean XP (fìor phrògramadh) oir ... chan eil duine airson feitheamh 70 mionaid. B 'e seo an adhbhar airson an dòigh-obrach atharrachadh
Latha # -601: Ansible agus moileciuil
Gu bun-bheachdail, tha seo coltach ri testkitchen, dìreach ghluais sinn deuchainn dreuchd gu docker agus dh’ atharraich sinn a ’chruach. Mar thoradh air an sin, chaidh an ùine a lùghdachadh gu stàball 20-25 mionaidean airson 7 dreuchdan.
Le bhith ag àrdachadh na h-àireimh de dhreuchdan deuchainn gu 17 agus a’ ceangal 45 dreuchd, ruith sinn seo ann an 28 mionaidean air 2 thràillean jenkins.
Latha #167: A’ cur deuchainnean Ansible ris a’ phròiseact
As dualtaiche, cha bhith e comasach an obair ath-leasachaidh a dhèanamh ann an cabhaig. Feumaidh an obair a bhith air a thomhas gus an urrainn dhut a bhriseadh na phìosan beaga agus am pìos ailbhean ithe le pìos le teaspoon. Feumaidh tuigse a bhith ann a bheil thu a’ gluasad san t-slighe cheart, dè cho fada ri dhol.
San fharsaingeachd, chan eil e gu diofar ciamar a thèid a dhèanamh, faodaidh tu sgrìobhadh air pìos pàipear, faodaidh tu stiogairean a chuir air a ’chlòsaid, faodaidh tu gnìomhan a chruthachadh ann an Jira, no faodaidh tu Google Docs fhosgladh agus an inbhe làithreach a sgrìobhadh sìos ann. Bidh na casan a 'fàs bhon fhìrinn nach eil am pròiseas sa bhad, bidh e fada agus tedious. Chan eil e coltach gu bheil duine ag iarraidh ort a dhol a-mach à beachdan, a bhith sgìth, agus a bhith air do shàrachadh nuair a bhios tu ag ath-nuadhachadh.
Tha an ath-bheothachadh sìmplidh:
Ith.
Cadal.
Còd.
IaC deuchainn.
Dèan aithris a-rithist
agus bidh sinn ag ath-aithris seo gus an ruig sinn an amas a tha san amharc.
Is dòcha nach bi e comasach tòiseachadh a’ dèanamh deuchainn air a h-uile càil anns a’ bhad, agus mar sin b’ e a’ chiad obair a bh’ againn tòiseachadh le lìnigeadh agus sgrùdadh a dhèanamh air a’ cho-chòrdadh.
Latha #181: Maighstir Togail Uaine
Tha Linting na chiad cheum beag a dh’ ionnsaigh Green Build Master. Cha bhris seo cha mhòr dad, ach leigidh e leat pròiseasan deasbaid a dhèanamh agus togalaichean uaine a dhèanamh ann an Jenkins. Is e am beachd cleachdaidhean a leasachadh am measg na sgioba:
Tha deuchainnean dearg dona.
Thàinig mi a chàradh rudeigin agus aig an aon àm an còd a dhèanamh beagan nas fheàrr na bha e roimhe.
Latha #193: Bho lìnigeadh gu deuchainnean aonaid
An dèidh dhut a 'phròiseas a bhith a' faighinn a 'chòd a-steach don mhaighstir, faodaidh tu tòiseachadh air a' phròiseas leasachaidh ceum air cheum - a 'cur an àite linting le dreuchdan cur air bhog, faodaidh tu eadhon a dhèanamh às aonais neo-chomasachd. Feumaidh tu tuigsinn mar a chleachdas tu dreuchdan agus mar a tha iad ag obair.
Latha #211: Bho aonad gu deuchainnean amalachaidh
Nuair a tha a’ mhòr-chuid de dhleastanasan còmhdaichte le deuchainnean aonaid agus a h-uile càil air a chòmhdach, faodaidh tu gluasad air adhart gu bhith a’ cur deuchainnean amalachaidh ris. An fheadhainn sin. a’ dèanamh deuchainn chan ann air aon bhreig anns a’ bhun-structar, ach measgachadh dhiubh, mar eisimpleir, rèiteachadh làn eisimpleir.
Le bhith a’ cleachdadh jenkins, chruthaich sinn iomadh ìre a bha a’ lìnigeadh dreuchdan / leabhraichean-cluiche aig an aon àm, an uairsin deuchainnean aonad ann an soithichean, agus mu dheireadh deuchainnean amalachaidh.
Jenkins + Docker + Ansible = Deuchainnean
Thoir sùil air repo agus cruthaich ìrean togail.
Ruith ìrean leabhar-cluiche lint aig an aon àm.
Ruith ìrean dreuchd lint aig an aon àm.
Ruith ìrean dreuchd sgrùdadh co-chàradh aig an aon àm.
Ruith ìrean dreuchd deuchainn aig an aon àm.
dreuchd lint.
Dèan sgrùdadh air eisimeileachd air dreuchdan eile.
Thoir sùil air syntax.
Cruthaich eisimpleir docker
Ruith molecule/default/playbook.yml.
Thoir sùil air neo-chomasachd.
Ruith deuchainnean amalachaidh
Crìochnaich
Latha #271: Factor Bus
An toiseach, chaidh ath-leasachadh a dhèanamh le buidheann bheag de dhà no trì. Rinn iad ath-sgrùdadh air a’ chòd anns a’ mhaighstir. Thar ùine, leasaich an sgioba eòlas air mar a sgrìobhas iad còd agus chuir ath-sgrùdadh còd ri bhith a’ sgaoileadh eòlas air a’ bhun-structair agus mar a tha e ag obair. B’ e an rud as cudromaiche an seo gun deach an luchd-sgrùdaidh a thaghadh aon às deidh aon, a rèir clàr-ama, i.e. le beagan coltachd gun tèid thu a-steach do phìos bun-structair ùr.
Agus bu chòir dha a bhith cofhurtail an seo. Tha e goireasach ath-sgrùdadh a dhèanamh, faicinn taobh a-staigh frèam na h-obrach a chaidh a dhèanamh, agus eachdraidh nan còmhraidhean. Tha sinn air jenkins + bitbucket + jira amalachadh.
Ach mar sin, chan e panacea a th’ ann an lèirmheas; dòigh air choireigin, fhuair sinn a-steach don phrìomh chòd, a thug oirnn deuchainnean flop:
Thar ùine, bha barrachd dheuchainnean ann, ruith togail nas slaodaiche, suas ri uair a thìde anns a’ chùis as miosa. Air aon de na retros bha abairt mar “tha e math gu bheil deuchainnean ann, ach tha iad slaodach.” Mar thoradh air an sin, thrèig sinn deuchainnean amalachaidh air innealan brìgheil agus dh’ atharraich sinn iad airson Docker gus a dhèanamh nas luaithe. Chuir sinn cuideachd neach-dearbhaidh iomchaidh an àite testinfra gus an àireamh de dh’ innealan a thathar a’ cleachdadh a lughdachadh.
Gu daingeann, bha seata de cheumannan ann:
Tionndaidh gu docker.
Thoir air falbh deuchainn dreuchd, a tha air a dhùblachadh air sgàth eisimeileachd.
Meudaich an àireamh de thràillean.
Òrdugh ruith deuchainn.
Comas lint UILE gu h-ionadail le aon àithne.
Mar thoradh air an sin, chaidh loidhne-phìoban air jenkins aonachadh cuideachd
Cruthaich ìrean togail.
Lint uile ann an co-shìnte.
Ruith ìrean dreuchd deuchainn aig an aon àm.
Crìochnaich.
Leasanan air an ionnsachadh
Seachain caochladairean cruinne
Bidh Ansible a’ cleachdadh caochladairean cruinneil, tha fuasgladh pàirteach san fhoirm prìobhaideach_ròl_vars, ach chan e panacea a tha seo.
Leig dhomh eisimpleir a thoirt dhut. Leig leinn role_a и role_b
Is e an rud èibhinn gum bi toradh leabhraichean cluiche an urra ri rudan nach eil an-còmhnaidh follaiseach, leithid an òrdugh anns a bheil dreuchdan air an liostadh. Gu mì-fhortanach, is e seo nàdar Ansible agus is e an rud as fheàrr a ghabhas dèanamh aonta de sheòrsa air choreigin a chleachdadh, mar eisimpleir, taobh a-staigh dreuchd, cleachd dìreach an caochladair a tha air a mhìneachadh san dreuchd seo.
MATH: Ann an dreuchdan airson caochladairean, cleachd caochladairean air an ro-leasachan le ainm na dreuchd; bidh seo, le bhith a’ coimhead air clàr-seilbhe, ga dhèanamh nas fhasa tuigsinn dè tha a’ tachairt.
BAD: Cleachd caochladair àbhaisteach ann an lùban item, ma tha an gnìomh/leabhar-cluiche seo air a ghabhail a-steach am badeigin, dh’ fhaodadh seo leantainn gu giùlan ris nach robh dùil
Dh’ aontaich sinn ro-leasachain caochlaideach a chleachdadh; cha bhiodh e iomarcach dèanamh cinnteach gu bheil iad air am mìneachadh mar a bha sinn an dùil agus, mar eisimpleir, nach robh iad air an toirt thairis le luach falamh
MATH: Thoir sùil air caochladairean.
- name: "Verify that required string variables are defined"
assert:
that: ahs_var is defined and ahs_var | length > 0 and ahs_var != None
fail_msg: "{{ ahs_var }} needs to be set for the role to work "
success_msg: "Required variables {{ ahs_var }} is defined"
loop_control:
loop_var: ahs_var
with_items:
- ahs_item1
- ahs_item2
- ahs_item3
Ma tha dreuchd an dùil hash / faclair ann an aon de na paramadairean aige, an uairsin ma tha sinn airson aon de na paramadairean cloinne atharrachadh, feumaidh sinn faighinn thairis air an hash / faclair gu lèir, a mheudaicheas iom-fhillteachd rèiteachaidh.
Feumaidh dreuchdan agus leabhraichean-cluiche a bhith neo-chomasach, oir a’ lughdachadh gluasad rèiteachaidh agus eagal gun tèid rudeigin a bhriseadh. Ach ma chleachdas tu moileciuil, is e seo an giùlan bunaiteach.
Seachain a bhith a’ cleachdadh mhodalan slige àithne
Le bhith a’ cleachdadh modal slige thig paradigm tuairisgeul riatanach, an àite an tè dhearbhach, a tha aig cridhe Ansible.
Dèan deuchainn air na dreuchdan agad tro mholacile
Is e rud gu math sùbailte a th’ ann am moileciuil, leig dhuinn sùil a thoirt air beagan shuidheachaidhean.
Molecule Ioma eisimpleirean
В molecule.yml ann an earrann platforms faodaidh tu cunntas a thoirt air mòran de luchd-aoigheachd as urrainn dhut a chleachdadh.
Ann am moileciuil tha e comasach ansible a chleachdadh gus dèanamh cinnteach gu bheil an t-eisimpleir air a rèiteachadh gu ceart, a bharrachd air an sin, tha seo air a bhith bunaiteach bho chaidh a leigeil ma sgaoil 3. Chan eil e cho sùbailte ri testinfra/inspec, ach is urrainn dhuinn dèanamh cinnteach gu bheil susbaint an fhaidhle a rèir ar dùil:
No cleachd an t-seirbheis, fuirich gus am bi e ri fhaighinn agus dèan deuchainn ceò:
---
- name: Verify
hosts: solr
tasks:
- command: /blah/solr/bin/solr start -s /solr_home -p 8983 -force
- uri:
url: http://127.0.0.1:8983/solr
method: GET
status_code: 200
register: uri_result
until: uri_result is not failed
retries: 12
delay: 10
- name: Post documents to solr
command: /blah/solr/bin/post -c master /exampledocs/books.csv
Cuir loidsig iom-fhillte ann am modalan & plugins
Tha Ansible a’ tagradh dòigh-obrach dearbhaidh, mar sin nuair a nì thu branndadh còd, cruth-atharrachadh dàta, modalan slige, bidh an còd a’ fàs duilich a leughadh. Gus cuir an-aghaidh seo agus a chumail furasta a thuigsinn, cha bhiodh e iomarcach cuir an-aghaidh an iom-fhillteachd seo le bhith a’ cruthachadh na modalan agad fhèin.
Seachain a bhith a’ cleachdadh mhodalan slige àithne.
Dèan deuchainn air na dreuchdan agad tro mholacile.
Cuir loidsig iom-fhillte ann am modalan & plugins.
co-dhùnadh
Chan urrainn dhut dìreach a dhol agus am bun-structar ath-nuadhachadh air pròiseact, eadhon ged a tha IaC agad. Is e pròiseas fada a tha seo a dh’ fheumas foighidinn, ùine agus eòlas.