Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Is e prìomh amas Patroni Cothrom Àrd a thoirt seachad airson PostgreSQL. Ach is e dìreach teamplaid a th’ ann am Patroni, chan e inneal deiseil (a tha, san fharsaingeachd, air a ràdh anns na sgrìobhainnean). Aig a’ chiad sealladh, às deidh dhut Patroni a stèidheachadh anns an obair-lann deuchainn, chì thu dè an inneal math a th’ ann agus dè cho furasta ‘s a làimhsicheas e ar n-oidhirpean gus a’ bhuidheann a bhriseadh. Ach, ann an cleachdadh, ann an àrainneachd cinneasachaidh, chan eil a h-uile dad an-còmhnaidh a’ tachairt cho breagha agus cho eireachdail ri ann an deuchainnlann.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Innsidh mi beagan mum dheidhinn fhìn dhut. Thòisich mi mar rianadair siostam. Ag obair ann an leasachadh lìn. Tha mi air a bhith ag obair aig Data Egret bho 2014. Tha a’ chompanaidh an sàs ann an co-chomhairleachadh ann an raon Postgres. Agus bidh sinn a’ frithealadh dìreach Postgres, agus bidh sinn ag obair le Postgres a h-uile latha, agus mar sin tha eòlas eadar-dhealaichte againn co-cheangailte ris an obair.

Agus aig deireadh 2018, thòisich sinn gu slaodach a’ cleachdadh Patroni. Agus tha beagan eòlas air a chruinneachadh. Rinn sinn lorg air dòigh air choireigin, ghleus sinn e, thàinig sinn gu na cleachdaidhean as fheàrr againn. Agus anns an aithisg seo bruidhnidh mi mun deidhinn.

A bharrachd air Postgres, tha gaol agam air Linux. Is toil leam a bhith a’ dol timcheall ann agus a’ sgrùdadh, is toil leam a bhith a’ cruinneachadh choraichean. Is toil leam virtualization, soithichean, docker, Kubernetes. Tha seo uile inntinneach dhomh, leis gu bheil na seann chleachdaidhean rianachd a’ toirt buaidh. Is toil leam a bhith a’ dèiligeadh ri sgrùdadh. Agus tha mi dèidheil air postgres rudan co-cheangailte ri rianachd, i.e. ath-riochdachadh, cùl-taic. Agus anns an ùine shaor agam bidh mi a’ sgrìobhadh ann an Go. Chan e innleadair bathar-bog a th’ annam, tha mi dìreach a’ sgrìobhadh dhomh fhìn ann an Go. Agus tha e a’ toirt toileachas dhomh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

  • Tha mi a’ smaoineachadh gu bheil fios aig mòran agaibh nach eil HA (High ri fhaighinn) a-mach às a’ bhogsa aig Postgres. Gus HA fhaighinn, feumaidh tu rudeigin a stàladh, a rèiteachadh, oidhirp a dhèanamh agus fhaighinn.
  • Tha grunn innealan ann agus is e Patroni aon dhiubh a tha a 'fuasgladh HA gu math fionnar agus glè mhath. Ach le bhith ga chuir gu lèir ann an deuchainnlann agus ga ruith, chì sinn gu bheil e uile ag obair, is urrainn dhuinn cuid de dhuilgheadasan ath-riochdachadh, faicinn mar a bhios Patroni gan frithealadh. Agus chì sinn gu bheil e uile ag obair glè mhath.
  • Ach ann an cleachdadh, bha diofar dhuilgheadasan againn. Agus bruidhnidh mi mu na duilgheadasan sin.
  • Innsidh mi dhut mar a lorg sinn e, dè a dh’ atharraich sinn - ge bith an do chuidich e sinn no nach do chuidich.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

  • Chan innis mi dhut mar a stàlaicheas tu Patroni, oir is urrainn dhut google air an eadar-lìn, faodaidh tu coimhead air na faidhlichean rèiteachaidh gus tuigsinn mar a thòisicheas e, mar a tha e air a rèiteachadh. Tuigidh tu na sgeamaichean, ailtireachd, lorg fiosrachadh mu dheidhinn air an eadar-lìn.
  • Cha bhith mi a 'bruidhinn mu eòlas cuideigin eile. Cha bhith mi a’ bruidhinn ach mu na duilgheadasan a bha romhainn.
  • Agus cha bhith mi a’ bruidhinn mu dhuilgheadasan a tha taobh a-muigh Patroni agus PostgreSQL. Ma tha, mar eisimpleir, duilgheadasan co-cheangailte ri cothromachadh, nuair a tha ar cruinneachadh air tuiteam, cha bhith mi a’ bruidhinn mu dheidhinn.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus àicheadh ​​beag mus tòisich sinn air an aithisg againn.

Na duilgheadasan sin uile a choinnich sinn, bha iad againn anns a ’chiad 6-7-8 mìosan de dh’ obair. Thar ùine, thàinig sinn gu na cleachdaidhean as fheàrr a-staigh againn. Agus chaidh na duilgheadasan againn à sealladh. Mar sin, chaidh an aithisg ainmeachadh mu shia mìosan air ais, nuair a bha i ùr nam cheann agus chuimhnich mi gu foirfe air.

Nuair a bha mi ag ullachadh na h-aithisg, thog mi seann phost-mortem mu thràth, thug mi sùil air na logaichean. Agus dh ’fhaodadh cuid de na mion-fhiosrachadh a bhith air an dìochuimhneachadh, no cuid de chuid de mhion-fhiosrachadh nach b’ urrainnear a sgrùdadh gu h-iomlan rè mion-sgrùdadh nan duilgheadasan, agus mar sin aig cuid de amannan dh ’fhaodadh gum bi e coltach nach eilear a’ beachdachadh air na duilgheadasan gu h-iomlan, no gu bheil dìth fiosrachaidh ann. Agus mar sin tha mi ag iarraidh ort mo leisgeul a ghabhail airson na h-ùine seo.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Dè a th’ ann am Patroni?

  • Is e seo teamplaid airson togail HA. Sin a tha e ag ràdh anns na sgrìobhainnean. Agus bho mo bheachd-sa, is e soilleireachadh fìor cheart a tha seo. Chan e peilear airgid a th ’ann an Patroni a dh’ fhuasglas na duilgheadasan agad gu lèir, is e sin, feumaidh tu oidhirp a dhèanamh gus toirt air obrachadh agus buannachdan a thoirt seachad.
  • Is e seirbheis àidseant a tha seo a tha air a chuir a-steach air a h-uile seirbheis stòr-dàta agus tha e na sheòrsa de shiostam init airson do Postgres. Bidh e a’ tòiseachadh Postgres, a’ stad, ag ath-thòiseachadh, ag ath-dhealbhadh, agus ag atharrachadh topology do bhuidheann.
  • A rèir sin, ann an òrdugh a ghleidheadh ​​​​staid a 'chlàir, a riochdachadh làithreach, mar a tha e a' coimhead, tha feum air seòrsa de stòradh. Agus bhon t-sealladh seo, ghabh Patroni an t-slighe gu bhith a 'stòradh stàite ann an siostam taobh a-muigh. Is e siostam stòraidh rèiteachaidh sgaoilte a th’ ann. Faodaidh e a bhith Etcd, Consul, ZooKeeper, no kubernetes Etcd, ie aon de na roghainnean sin.
  • Agus is e aon de na feartan aig Patroni gum faigh thu an autofiler a-mach às a’ bhogsa, dìreach le bhith ga stèidheachadh. Ma bheir sinn Repmgr airson coimeas, tha am faidhleadair air a thoirt a-steach an sin. Le Repmgr, gheibh sinn tionndadh, ach ma tha sinn ag iarraidh autofiler, feumaidh sinn a rèiteachadh a bharrachd. Tha autofiler aig Patroni a-mach às a’ bhogsa mu thràth.
  • Agus tha tòrr rudan eile ann. Mar eisimpleir, cumail suas rèiteachaidhean, dòrtadh mac-samhail ùra, cùl-taic, msaa. Ach tha seo taobh a-muigh raon na h-aithisg, cha bhith mi a’ bruidhinn mu dheidhinn.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus is e toradh beag gur e prìomh obair Patroni faidhle fèin-ghluasadach a dhèanamh gu math agus gu earbsach gus am bi ar cruinneachadh fhathast ag obair agus nach mothaich an tagradh atharrachaidhean ann an topology a’ chnuasachd.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Ach nuair a thòisicheas sinn a’ cleachdadh Patroni, bidh an siostam againn a’ fàs beagan nas iom-fhillte. Nam biodh Postgres againn na bu thràithe, an uairsin nuair a bhios sinn a’ cleachdadh Patroni gheibh sinn Patroni fhèin, gheibh sinn DCS far a bheil an stàit air a stòradh. Agus feumaidh a h-uile càil obrachadh ann an dòigh air choireigin. Mar sin dè as urrainn a dhol ceàrr?

Faodaidh briseadh:

  • Is dòcha gum bi postgres briste. Faodaidh e a bhith na mhaighstir no na mhac-samhail, faodaidh fear dhiubh fàiligeadh.
  • Faodaidh am Patroni fhèin briseadh.
  • Faodaidh an DCS far a bheil an stàit air a stòradh briseadh.
  • Agus faodaidh an lìonra briseadh.

Na puingean sin uile air am bi mi a’ beachdachadh san aithisg.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Beachdaichidh mi air cùisean mar a bhios iad a’ fàs nas iom-fhillte, chan ann bhon bheachd gu bheil mòran phàirtean anns a’ chùis. Agus a thaobh faireachdainnean cuspaireil, gu robh a 'chùis seo duilich dhomh, bha e duilich a thoirt às a chèile ... agus a chaochladh, bha cùis air choreigin aotrom agus bha e furasta a thoirt às a chèile.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus is e a 'chiad chùis an dòigh as fhasa. Tha seo fìor nuair a ghabh sinn cruinneachadh stòr-dàta agus a chuir sinn an stòr DCS againn gu feum air an aon bhuidheann. Is e seo am mearachd as cumanta. Is e mearachd a tha seo ann a bhith a’ togail ailtireachd, i.e., a’ cothlamadh diofar phàirtean ann an aon àite.

Mar sin, bha filer, leig dhuinn a dhol gus dèiligeadh ris na thachair.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus an seo tha ùidh againn nuair a thachair am faidhleadair. Is e sin, tha ùidh againn anns an àm seo nuair a dh’ atharraich an stàit chnuasach.

Ach chan eil am faidhleadair an-còmhnaidh sa bhad, i.e. chan eil e a’ toirt aonad ùine sam bith, faodar dàil a chuir air. Faodaidh e a bhith fada maireannach.

Mar sin, tha àm tòiseachaidh agus àm crìochnachaidh aige, i.e. is e tachartas leantainneach a th’ ann. Agus bidh sinn a’ roinn a h-uile tachartas ann an trì amannan: tha ùine againn ron fhaidhleadair, rè an fhaidhleadair agus às deidh an fhaidhleadair. Is e sin, bidh sinn a’ beachdachadh air a h-uile tachartas san loidhne-tìm seo.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus a 'chiad rud, nuair a thachair faidhleadair, bidh sinn a' coimhead airson adhbhar na thachair, dè an adhbhar a thug air an fhaidhleadair.

Ma choimheadas sinn air na logaichean, bidh iad nan logaichean clasaigeach Patroni. Tha e ag innse dhuinn annta gu bheil am frithealaiche air a thighinn gu bhith na mhaighstir, agus tha àite a’ mhaighstir air a dhol chun nód seo. An seo tha e air a chomharrachadh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

An ath rud, feumaidh sinn tuigsinn carson a thachair am faidhleadair, i.e. dè na tachartasan a thachair a thug air a’ phrìomh dhreuchd gluasad bho aon nód gu fear eile. Agus anns a 'chùis seo, tha a h-uile dad sìmplidh. Tha mearachd againn ann a bhith ag eadar-obrachadh leis an t-siostam stòraidh. Thuig am maighstir nach b 'urrainn dha obrachadh le DCS, is e sin, bha duilgheadas de sheòrsa air choreigin ann leis an eadar-obrachadh. Agus tha e ag ràdh nach urrainn dha a bhith na mhaighstir tuilleadh agus a dhreuchd a leigeil dheth. Tha an loidhne seo “demoted self” ag ràdh dìreach sin.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Ma choimheadas sinn air na tachartasan a bha air thoiseach air an fhaidhleadair, chì sinn an sin na dearbh adhbharan a bha na dhuilgheadas airson an draoidh a leantainn.

Ma choimheadas sinn air na clàran Patroni, chì sinn gu bheil tòrr mhearachdan againn, amannan a-muigh, ie chan urrainn don neach-ionaid Patroni obrachadh le DCS. Anns a 'chùis seo, is e seo àidseant Consul, a tha a' conaltradh air port 8500.

Agus is e an duilgheadas an seo gu bheil Patroni agus an stòr-dàta a’ ruith air an aon aoigh. Agus chaidh na seirbhisich Consul a chuir air bhog air an aon nòta. Le bhith a’ cruthachadh luchd air an fhrithealaiche, chruthaich sinn duilgheadasan dha na frithealaichean Consal cuideachd. Cha b’ urrainn dhaibh conaltradh ceart.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Às deidh beagan ùine, nuair a chaidh an luchd sìos, bha ar Patroni comasach air conaltradh a dhèanamh le riochdairean a-rithist. Thòisich obair àbhaisteach a-rithist. Agus thàinig an aon fhrithealaiche Pgdb-2 gu bhith na mhaighstir a-rithist. 'S e sin, bha beag flip, air sgàth' s gu bheil an nód air a dhreuchd a leigeil dheth cumhachdan a 'mhaighstir, agus an uair sin a ghabhail thairis iad a-rithist,' se sin, a h-uile càil air ais mar a bha e.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus faodar seo a mheas mar inneal-rabhaidh meallta, no faodar a mheas gun do rinn Patroni a h-uile dad ceart. Is e sin, thuig e nach b 'urrainn dha a chumail suas staid a' bhrais agus thug e air falbh an t-ùghdarras aige.

Agus an seo dh’ èirich an duilgheadas leis gu bheil na frithealaichean Consal air an aon bhathar-cruaidh ris na h-ionadan. A rèir sin, luchd sam bith: ge bith an e an luchd air diosgan no pròiseasairean a th’ ann, bheir e buaidh cuideachd air an eadar-obrachadh leis a’ bhuidheann Consul.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus cho-dhùin sinn nach bu chòir dha a bhith beò còmhla, thug sinn seachad buidheann air leth airson Consul. Agus bha Patroni mu thràth ag obair le Consal air leth, is e sin, bha buidheann Postgres air leth ann, buidheann de Chonsal air leth. Is e seo stiùireadh bunaiteach air mar as urrainn dhut na rudan sin a ghiùlan agus a chumail gus nach bi e beò còmhla.

Mar roghainn, faodaidh tu na paramadairean ttl, loop_wait, retry_timeout a thionndadh, ie feuchainn ri bhith beò leis na stùcan luchdan geàrr-ùine sin le bhith ag àrdachadh nam paramadairean sin. Ach chan e seo an roghainn as freagarraiche, oir faodaidh an luchd seo a bhith fada ann an ùine. Agus thèid sinn dìreach nas fhaide na crìochan nan crìochan sin. Agus is dòcha nach cuidich sin gu mòr.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha a 'chiad dhuilgheadas, mar a thuigeas tu, sìmplidh. Ghabh sinn agus chuir sinn an DCS còmhla ris a 'bhunait, fhuair sinn duilgheadas.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha an dàrna duilgheadas coltach ris a 'chiad fhear. Tha e coltach ris gu bheil duilgheadasan eadar-obrachaidh againn a-rithist leis an t-siostam DCS.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Ma choimheadas sinn air na logaichean, chì sinn gu bheil mearachd conaltraidh againn a-rithist. Agus tha Patroni ag ràdh nach urrainn dhomh eadar-obrachadh le DCS gus am bi am maighstir gnàthach a’ dol a-steach gu modh mac-samhail.

Bidh an seann mhaighstir na mac-samhail, an seo tha Patroni ag obair a-mach, mar a bu chòir a bhith. Bidh e a’ ruith pg_rewind gus an loga malairt ath-fhilleadh agus an uairsin ceangal ris a’ mhaighstir ùr gus grèim fhaighinn air a’ mhaighstir ùr. An seo tha Patroni ag obair a-mach, mar bu chòir dha.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

An seo feumaidh sinn an t-àite a lorg a bha air thoiseach air an fhaidhleadair, i.e. na mearachdan sin a dh’ adhbhraich dhuinn faidhleadair. Agus a thaobh seo, tha logaichean Patroni gu math goireasach airson obrachadh leotha. Bidh e a’ sgrìobhadh na h-aon teachdaireachdan aig àm sònraichte. Agus ma thòisicheas sinn a’ gluasad tro na logaichean sin gu sgiobalta, chì sinn bho na logaichean gu bheil na logaichean air atharrachadh, a tha a’ ciallachadh gu bheil cuid de dhuilgheadasan air tòiseachadh. Tillidh sinn gu sgiobalta chun àite seo, faic dè thachras.

Agus ann an suidheachadh àbhaisteach, tha na logaichean a 'coimhead rudeigin mar seo. Tha sealbhadair a’ ghlais air a sgrùdadh. Agus ma tha an sealbhadair, mar eisimpleir, air atharrachadh, faodaidh cuid de thachartasan tachairt ris am feum Patroni freagairt. Ach anns a 'chùis seo, tha sinn gu math. Tha sinn a’ coimhead airson an àite far an do thòisich na mearachdan.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus às deidh dhuinn gluasad chun na h-ìre far an do thòisich na mearachdan a’ nochdadh, chì sinn gu bheil sinn air faidhle fèin-ghluasadach a chuir a-steach. Agus leis gu robh na mearachdan againn co-cheangailte ri eadar-obrachadh le DCS agus anns a ’chùis againn chleachd sinn Consul, bidh sinn cuideachd a’ coimhead air na logaichean Consul, dè thachair an sin.

A’ coimeas gu dlùth ri àm an fhaidhleadair agus an ùine ann an logaichean nan Consul, tha sinn a’ faicinn gun do thòisich ar coimhearsnaich ann am buidheann nan Consal a’ cur teagamh ann an robh buill eile de bhuidheann nan Consul ann.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus ma choimheadas tu cuideachd air logaichean àidseantan Consail eile, chì thu cuideachd gu bheil seòrsa de thuiteam lìonra a ’tachairt an sin. Agus tha a h-uile ball den bhuidheann Consal a 'cur an teagamh gu bheil a chèile ann. Agus bha seo na bhrosnachadh don neach-faidhle.

Ma choimheadas tu air na thachair ro na mearachdan sin, chì thu gu bheil a h-uile seòrsa de mhearachdan ann, mar eisimpleir, ceann-latha, thuit RPC, is e sin, tha e soilleir gu bheil duilgheadas de sheòrsa air choreigin ann an eadar-obrachadh buill brabhsair Consal le chèile. .

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Is e am freagairt as sìmplidh an lìonra a chàradh. Ach dhòmhsa, nan seasamh air a’ podium, tha e furasta seo a ràdh. Ach tha an suidheachadh cho mòr is nach urrainn don neach-ceannach an-còmhnaidh an lìonra a chàradh. Is dòcha gu bheil e a 'fuireach ann an DC agus' s dòcha nach urrainn dha an lìonra a chàradh, buaidh a thoirt air an uidheamachd. Agus mar sin tha feum air cuid de roghainnean eile.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha roghainnean ann:

  • Is e an roghainn as sìmplidh, a tha sgrìobhte, nam bheachd-sa, eadhon anns na sgrìobhainnean, sgrùdaidhean Consul a chuir dheth, is e sin, dìreach cuir seachad raon falamh. Agus bidh sinn ag innse don àidseant Consail gun a bhith a’ cleachdadh sgrùdaidhean sam bith. Leis na sgrùdaidhean sin, is urrainn dhuinn na stoirmean lìonra sin a leigeil seachad agus gun a bhith a’ tòiseachadh faidhleadair.
  • Is e roghainn eile sgrùdadh dùbailte a dhèanamh air raft_multiplier. Is e seo paramadair den t-seirbheisiche Consal fhèin. Gu gnàthach, tha e air a shuidheachadh gu 5. Tha an luach seo air a mholadh leis na sgrìobhainnean airson àrainneachdan stèidse. Gu dearbh, tha seo a 'toirt buaidh air tricead teachdaireachdan eadar buill den lìonra Consail. Gu dearbh, tha am paramadair seo a’ toirt buaidh air astar conaltradh seirbheis eadar buill de bhuidheann Consul. Agus airson cinneasachadh, thathas a 'moladh a lùghdachadh mar-thà gus am bi na nodan ag iomlaid teachdaireachdan nas trice.
  • Is e roghainn eile a tha sinn air tighinn a-steach a bhith ag àrdachadh prìomhachas pròiseasan Consail am measg phròiseasan eile airson clàr-ama pròiseas an t-siostaim obrachaidh. Tha paramadair cho “snog” ann, tha e dìreach a ’dearbhadh prìomhachas phròiseasan a tha clàr-ama an OS a’ toirt aire nuair a bhios iad a ’clàradh. Tha sinn cuideachd air an luach snog airson riochdairean Consail a lughdachadh, i.e. àrdachadh am prìomhachas gus am bi an siostam obrachaidh a’ toirt barrachd ùine do phròiseasan Consul a bhith ag obair agus a’ cur an gnìomh a’ chòd aca. Anns a 'chùis againn, dh' fhuasgail seo ar duilgheadas.
  • Is e roghainn eile gun a bhith a’ cleachdadh Consul. Tha caraid agam a tha a’ toirt taic mhòr do Etcd. Agus tha sinn gu tric a' reiteachadh ris co dhiubh is fearr Etcd no Consul. Ach a thaobh dè a tha nas fheàrr, mar as trice bidh sinn ag aontachadh leis gu bheil àidseant aig Consul a bu chòir a bhith a’ ruith air gach nód le stòr-dàta. Is e sin, bidh eadar-obrachadh Patroni leis a’ bhuidheann Consul a’ dol tron ​​​​àidseant seo. Agus bidh an neach-ionaid seo na bhotal. Ma thachras rudeigin don neach-ionaid, chan urrainn dha Patroni obrachadh leis a’ bhuidheann Consul tuilleadh. Agus is e seo an duilgheadas. Chan eil àidseant ann am plana Etcd. Faodaidh Patroni obrachadh gu dìreach le liosta de luchd-frithealaidh Etcd agus conaltradh riutha mu thràth. A thaobh seo, ma chleachdas tu Etcd sa chompanaidh agad, is dòcha gum bi Etcd na roghainn nas fheàrr na Consul. Ach tha sinne aig ar teachdaichean an-còmhnaidh cuingealaichte leis na tha an neach-dèiligidh air a thaghadh agus a chleachdadh. Agus tha Consal againn sa mhòr-chuid airson a h-uile neach-dèiligidh.
  • Agus is e am puing mu dheireadh ath-sgrùdadh a dhèanamh air luachan paramadair. Is urrainn dhuinn na crìochan sin àrdachadh le dòchas gum bi na duilgheadasan lìonra geàrr-ùine againn goirid agus nach tuit iad taobh a-muigh raon nam paramadairean sin. San dòigh seo is urrainn dhuinn ionnsaigheachd Patroni a lughdachadh gu fèin-ghluasadach ma thig cuid de dhuilgheadasan lìonra.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha mi a’ smaoineachadh gu bheil mòran a bhios a’ cleachdadh Patroni eòlach air an àithne seo.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha an àithne seo a’ sealltainn staid làithreach a’ bhraisle. Agus aig a 'chiad sealladh, is dòcha gu bheil an dealbh seo a' coimhead àbhaisteach. Tha maighstir againn, tha mac-samhail againn, chan eil dàil air ath-riochdachadh. Ach tha an dealbh seo àbhaisteach dìreach gus am bi fios againn gum bu chòir trì nodan a bhith aig a’ bhuidheann seo, chan e dhà.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

A rèir sin, bha faidhle fèin-ghluasadach ann. Agus às deidh an autofile seo, chaidh ar mac-samhail à sealladh. Feumaidh sinn faighinn a-mach carson a chaidh i à sealladh agus a thoirt air ais, a thoirt air ais. Agus bidh sinn a-rithist a’ dol gu na logaichean a dh’fhaicinn carson a bha faidhleadh fèin-ghluasadach againn.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Anns a 'chùis seo, thàinig an dàrna mac-samhail gu bhith na mhaighstir. Tha e uile an seo.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus feumaidh sinn coimhead air a’ mhac-samhail a thuit dheth agus nach eil anns a’ bhraisle. Bidh sinn a’ fosgladh logaichean Patroni agus a’ faicinn gu robh duilgheadas againn rè a’ phròiseas ceangail ris a’ bhuidheann aig ìre pg_rewind. Gus ceangal ris a’ bhuidheann, feumaidh tu an loga malairt ath-thionndadh, iarraidh air an loga malairt a tha a dhìth bhon mhaighstir, agus a chleachdadh gus grèim fhaighinn air a’ mhaighstir.

Anns a 'chùis seo, chan eil log malairt againn agus chan urrainn don mhac-samhail tòiseachadh. Mar sin, bidh sinn a 'stad Postgres le mearachd. Agus mar sin chan eil e anns a 'chlub.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Feumaidh sinn tuigsinn carson nach eil e sa bhuidheann agus carson nach robh logaichean ann. Bidh sinn a 'dol chun a' mhaighstir ùr agus a 'coimhead air na tha aige anns na logaichean. Tha e a’ tionndadh a-mach, nuair a chaidh pg_rewind a dhèanamh, gun do thachair àite-seic. Agus chaidh cuid de na seann logaichean malairt ath-ainmeachadh gu sìmplidh. Nuair a dh’ fheuch an seann mhaighstir ri ceangal a dhèanamh ris a’ mhaighstir ùr agus a’ ceasnachadh nan logaichean sin, chaidh an ath-ainmeachadh mar-thà, dìreach cha robh iad ann.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Rinn mi coimeas eadar clàran-ama nuair a thachair na tachartasan sin. Agus an sin tha an eadar-dhealachadh gu litearra 150 milliseconds, is e sin, am puing-seic a chaidh a chrìochnachadh ann an 369 milliseconds, chaidh na roinnean WAL ath-ainmeachadh. Agus gu litearra ann an 517, às deidh 150 milliseconds, thòisich ath-fhilleadh air an t-seann mac-samhail. Is e sin, gu litearra bha 150 milliseconds gu leòr dhuinn gus nach b’ urrainn don mhac-samhail ceangal agus cosnadh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Dè na roghainnean a th ’ann?

Chleachd sinn sliotan mac-samhail an toiseach. Bha sinn a’ smaoineachadh gun robh e math. Ged a chuir sinn dheth na sliotan aig a’ chiad ìre den obair. Bha e coltach dhuinn ma bhios na slotan a’ cruinneachadh tòrr earrannan WAL, is urrainn dhuinn am maighstir a leigeil sìos. Tuitidh e. Dh'fhuiling sinn airson greis gun slots. Agus thuig sinn gu bheil feum againn air slots, thill sinn na slots.

Ach tha duilgheadas ann an seo, nuair a thèid am maighstir chun mhac-samhail, gum bi e a’ cuir às do na sliotan agus a’ cuir às do na roinnean WAL còmhla ris na sliotan. Agus gus cuir às don duilgheadas seo, chuir sinn romhainn am paramadair wal_keep_segments a thogail. Bidh e a’ dol sìos gu 8 earrannan. Thog sinn e gu 1 agus choimhead sinn air na bha de rùm an-asgaidh againn. Agus thug sinn seachad 000 gigabytes airson walk_keep_segments. Is e sin, nuair a bhios sinn ag atharrachadh, bidh an-còmhnaidh tèarmann de 16 gigabytes de logaichean malairt againn air a h-uile nod.

Agus a bharrachd - tha e fhathast buntainneach airson gnìomhan cumail suas fad-ùine. Canaidh sinn gum feum sinn aon de na mac-samhail ùrachadh. Agus tha sinn airson a chuir dheth. Feumaidh sinn am bathar-bog ùrachadh, is dòcha an siostam obrachaidh, rudeigin eile. Agus nuair a chuireas sinn dheth mac-samhail, thèid an slot airson a’ mhac-samhail sin a thoirt air falbh cuideachd. Agus ma chleachdas sinn wal_keep_segments beag, an uairsin às aonais mac-samhail fada, thèid na logaichean malairt a chall. Togaidh sinn mac-samhail, iarraidh e na logaichean malairt sin far an do stad e, ach is dòcha nach eil iad air a’ mhaighstir. Agus cha bhith e comasach don mhac-samhail ceangal a dhèanamh nas motha. Mar sin, bidh sinn a 'cumail stoc mòr de irisean.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha bunait riochdachaidh againn. Tha pròiseactan a’ dol air adhart mu thràth.

Bha filer ann. Chaidh sinn a-steach agus choimhead sinn - tha a h-uile dad ann an òrdugh, tha na mac-samhail nan àite, chan eil dàil air ath-riochdachadh. Chan eil mearachdan anns na logaichean an dàrna cuid, tha a h-uile dad ann an òrdugh.

Tha an sgioba toraidh ag ràdh gum bu chòir beagan dàta a bhith ann, ach chì sinn e bho aon stòr, ach chan eil sinn ga fhaicinn san stòr-dàta. Agus feumaidh sinn tuigsinn dè thachair dhaibh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha e soilleir gun do chaill pg_rewind iad. Thuig sinn seo sa bhad, ach chaidh sinn a dh'fhaicinn dè bha a 'tachairt.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Anns na logaichean, faodaidh sinn an-còmhnaidh faighinn a-mach cuin a thachair am faidhleadair, cò a thàinig gu bhith na mhaighstir, agus is urrainn dhuinn dearbhadh cò an seann mhaighstir a bh’ ann agus cuin a bha e airson a bhith na mhac-samhail, ie feumaidh sinn na logaichean sin gus faighinn a-mach an àireamh de logaichean malairt a tha sin. air chall.

Tha an seann mhaighstir againn air ath-thòiseachadh. Agus bha Patroni clàraichte anns an autorun. Chuir Patroni air bhog. Thòisich e an uairsin air Postgres. Nas mionaidiche, mus tòisich e air Postgres agus mus dèanadh e mac-samhail dheth, chuir Patroni am pròiseas pg_rewind air bhog. Mar sin, sguab e às pàirt de na logaichean malairt, luchdaich e sìos feadhainn ùra agus cheangail e iad. An seo bha Patroni ag obair gu sgiobalta, is e sin, mar a bhiodh dùil. Tha an cruinneachadh air ath-nuadhachadh. Bha 3 nodan againn, às deidh an fhaidhle 3 nodan - tha a h-uile dad fionnar.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha sinn air beagan dàta a chall. Agus feumaidh sinn tuigsinn na tha sinn air chall. Tha sinn a’ coimhead airson dìreach mionaid nuair a bha ath-fhilleadh againn. Gheibh sinn e ann an clàran iris mar sin. Thòisich Rewind, rinn e rudeigin an sin agus chrìochnaich e.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Feumaidh sinn an suidheachadh a lorg anns a 'chlàr malairt far an do dh' fhalbh an seann mhaighstir. Anns a 'chùis seo, is e seo an comharra. Agus feumaidh sinn an dàrna comharra, is e sin, an t-astar air a bheil an t-seann mhaighstir eadar-dhealaichte bhon fhear ùr.

Gabhaidh sinn am pg_wal_lsn_diff àbhaisteach agus nì sinn coimeas eadar an dà chomharra seo. Agus anns a 'chùis seo, gheibh sinn 17 megabytes. Gu ìre mhòr no beagan, bidh a h-uile duine a 'co-dhùnadh dha fhèin. Oir airson cuideigin chan eil 17 megabytes mòran, airson cuideigin tha e tòrr agus neo-iomchaidh. An seo, bidh gach neach fa leth a 'dearbhadh dha fhèin a rèir feumalachdan a' ghnìomhachais.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Ach dè a fhuair sinn a-mach dhuinn fhìn?

An toiseach, feumaidh sinn co-dhùnadh dhuinn fhìn - a bheil feum againn an-còmhnaidh air Patroni gus fèin-thòiseachadh às deidh ath-thòiseachadh siostam? Bidh e tric a 'tachairt gum feum sinn a dhol chun an t-seann mhaighstir, faic dè cho fada' sa chaidh e. Is dòcha sgrùdadh a dhèanamh air earrannan den log malairt, faic dè a th’ ann. Agus gus tuigsinn an urrainn dhuinn an dàta seo a chall no am feum sinn an seann mhaighstir a ruith ann am modh leis fhèin gus an dàta seo a tharraing a-mach.

Agus dìreach às deidh sin feumaidh sinn co-dhùnadh an urrainn dhuinn an dàta seo a chuir air falbh no an urrainn dhuinn a thoirt air ais, an nód seo a cheangal mar mhac-samhail ris a’ bhuidheann againn.

A bharrachd air an sin, tha paramadair “maximum_lag_on_failover”. Gu gnàthach, ma tha mo chuimhne a’ toirt seirbheis dhomh, tha luach 1 megabyte aig a’ pharamadair seo.

Ciamar a tha e ag obair? Ma tha ar mac-samhail air dheireadh le 1 megabyte de dhàta anns an dàil ath-riochdachadh, cha bhith am mac-samhail seo a’ gabhail pàirt anns na taghaidhean. Agus ma tha faidhle thairis gu h-obann, bidh Patroni a’ coimhead air dè na mac-samhail a tha air dheireadh. Ma tha àireamh mhòr de chlàran malairt air an cùlaibh, chan urrainn dhaibh a bhith nam maighstir. Is e feart tèarainteachd fìor mhath a tha seo a chuireas casg ort bho bhith a’ call tòrr dàta.

Ach tha duilgheadas ann leis gu bheil an dàil ath-riochdachadh ann am buidheann Patroni agus DCS air ùrachadh aig àm sònraichte. Tha mi a’ smaoineachadh gur e 30 diogan an luach ttl bunaiteach.

A rèir sin, dh’ fhaodadh suidheachadh a bhith ann far a bheil aon dàil mac-samhail airson mac-samhail ann an DCS, ach gu dearbh dh’ fhaodadh dàil gu tur eadar-dhealaichte a bhith ann no is dòcha nach bi dàil sam bith ann, ie chan eil an rud seo fìor-ùine. Agus chan eil e an-còmhnaidh a 'nochdadh an fhìor dhealbh. Agus chan fhiach loidsig sùbailte a dhèanamh air.

Agus tha an cunnart call an-còmhnaidh ann. Agus anns a 'chùis as miosa, aon fhoirmle, agus anns a' chùis chuibheasach, foirmle eile. Is e sin, nuair a bhios sinn a’ dealbhadh buileachadh Patroni agus a’ measadh na tha de dhàta as urrainn dhuinn a chall, feumaidh sinn a bhith an urra ris na foirmlean sin agus smaoineachadh gu ìre air an ìre de dhàta as urrainn dhuinn a chall.

Agus tha deagh naidheachd ann. Nuair a tha an seann mhaighstir air a dhol air adhart, faodaidh e a dhol air adhart air sgàth cuid de phròiseasan cùl-fhiosrachaidh. Is e sin, bha seòrsa de autovacuum ann, sgrìobh e an dàta, shàbhail e iad chun log malairt. Agus is urrainn dhuinn gu furasta an dàta seo a leigeil seachad agus a chall. Chan eil duilgheadas sam bith ann an seo.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus seo mar a tha na logaichean coltach ma tha maximum_lag_on_failover air a shuidheachadh agus faidhleadair air tachairt, agus feumaidh tu maighstir ùr a thaghadh. Tha am mac-samhail ga mheas fhèin mar neach neo-chomasach pàirt a ghabhail anns na taghaidhean. Agus tha i a 'diùltadh pàirt a ghabhail anns an rèis airson an stiùiriche. Agus tha i a 'feitheamh ri maighstir ùr a thaghadh, gus an urrainn dhi ceangal a dhèanamh ris. Is e tomhas a bharrachd a tha seo an aghaidh call dàta.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

An seo tha sgioba toraidh againn a sgrìobh gu bheil duilgheadasan aig an toradh aca le Postgres. Aig an aon àm, chan fhaighear cothrom air a’ mhaighstir fhèin, leis nach eil e ri fhaighinn tro SSH. Agus chan eil am faidhle fèin-ghluasadach a’ tachairt nas motha.

B' fheudar dhan òstair seo ath-thòiseachadh. Air sgàth an ath-thòiseachadh, thachair faidhle fèin-ghluasadach, ged a bha e comasach faidhle fèin-ghluasadach làimhe a dhèanamh, mar a tha mi a-nis a’ tuigsinn. Agus às deidh an ath-thòiseachadh, tha sinn mu thràth a’ dol a dh'fhaicinn na bha againn leis a ’mhaighstir gnàthach.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Aig an aon àm, bha fios againn ro-làimh gu robh duilgheadasan againn le diosgan, is e sin, bha fios againn mu thràth bho bhith a 'cumail sùil air càite an cladhach agus dè a bu chòir a bhith a' coimhead.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Fhuair sinn a-steach don log postgres, thòisich sinn a 'faicinn dè bha a' tachairt an sin. Chunnaic sinn geallaidhean a mhaireas an sin airson aon, dhà, trì diogan, rud nach eil àbhaisteach idir. Chunnaic sinn gu bheil an autovacuum againn a’ tòiseachadh gu slaodach agus gu neònach. Agus chunnaic sinn faidhlichean sealach air an diosg. Is e sin, tha iad sin uile nan comharran air duilgheadasan le diosgan.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Choimhead sinn a-steach don t-siostam dmesg (log kernel). Agus chunnaic sinn gu bheil duilgheadasan againn le aon de na diosgan. B’ e bathar-bog Raid a bha san fho-shiostam diosc. Choimhead sinn air / proc/mdstat agus chunnaic sinn gu robh sinn ag ionndrainn aon dhràibhear. Is e sin, tha Raid de 8 diosc ann, tha sinn ag ionndrainn fear. Ma choimheadas tu gu faiceallach air an t-sleamhnag, an uairsin anns an toradh chì thu nach eil sde againn an sin. Aig dhuinn, le cumhachan, tha an diosc air tuiteam a-mach. Bhrosnaich seo duilgheadasan diosc, agus bha duilgheadasan aig tagraidhean cuideachd nuair a bha iad ag obair le brabhsair Postgres.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus anns a 'chùis seo, cha chuidicheadh ​​​​Patroni sinn ann an dòigh sam bith, oir chan eil e mar dhleastanas air Patroni sùil a chumail air staid an fhrithealaiche, staid an diosg. Agus feumaidh sinn sùil a chumail air suidheachaidhean mar sin le sgrùdadh bhon taobh a-muigh. Chuir sinn gu sgiobalta sgrùdadh diosc ri sgrùdadh taobh a-muigh.

Agus bha leithid de bheachd ann - am b’ urrainn dha feansadh no bathar-bog faire ar cuideachadh? Bha sinn den bheachd gur gann gum biodh e air ar cuideachadh anns a’ chùis seo, oir rè na duilgheadasan lean Patroni ag eadar-obrachadh leis a ’bhuidheann DCS agus chan fhaca e duilgheadas sam bith. Is e sin, bho shealladh DCS agus Patroni, bha a h-uile dad gu math leis a’ bhuidheann, ged a bha duilgheadasan ann leis an diosc, bha duilgheadasan ann le cothrom air an stòr-dàta.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Nam bheachd-sa, is e seo aon de na duilgheadasan as annasaiche a rinn mi sgrùdadh airson ùine mhòr, tha mi air tòrr logaichean a leughadh, air ath-thaghadh agus air ainmeachadh mar simuladair brabhsair.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

B 'e an duilgheadas a bh' ann nach b 'urrainn don t-seann mhaighstir a bhith na mhac-samhail àbhaisteach, ie thòisich Patroni air, sheall Patroni gu robh an nód seo an làthair mar mhac-samhail, ach aig an aon àm cha b' e mac-samhail àbhaisteach a bh 'ann. A-nis chì thu carson. Is e seo a tha mi air a chumail bhon anailis air an duilgheadas sin.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus ciamar a thòisich e uile? Thòisich e, mar anns an duilgheadas roimhe, le breicichean diosc. Bha geallaidhean againn airson diog, dhà.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Bha briseadh ann an ceanglaichean, i.e., chaidh teachdaichean a reubadh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Bha cnapan-starra eadar-dhealaichte ann.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus, a rèir sin, chan eil am fo-shiostam diosc gu math freagairteach.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus is e an rud as dìomhaire dhomh an t-iarrtas dùnadh sa bhad a ràinig. Tha trì modhan dùnadh aig Postgres:

  • Tha e gràsmhor nuair a dh'fheitheas sinn ris a h-uile neach-dèiligidh a dhì-cheangal leotha fhèin.
  • Tha luath ann nuair a bheir sinn air teachdaichean dì-cheangal oir tha sinn gu bhith a’ dùnadh.
  • Agus sa bhad. Anns a 'chùis seo, chan eil sa bhad eadhon ag innse do luchd-cleachdaidh dùnadh, bidh e dìreach a' dùnadh gun rabhadh. Agus chun a h-uile neach-dèiligidh, tha an siostam obrachaidh mu thràth a ’cur teachdaireachd RST (teachdaireachd TCP gu bheil an ceangal air a bhriseadh agus nach eil dad a bharrachd aig an neach-dèiligidh ri ghlacadh).

Cò a chuir an comharra seo? Cha bhith pròiseasan cùl-fhiosrachaidh Postgres a’ cur a leithid de chomharran gu chèile, is e sin kill-9. Cha bhith iad a’ cur rudan mar sin gu chèile, cha bhith iad a’ dèiligeadh ach ri rudan mar sin, ie is e ath-thòiseachadh èiginneach a tha seo de Postgres. Cò a chuir e, chan eil fhios agam.

Thug mi sùil air an àithne “mu dheireadh” agus chunnaic mi aon neach a rinn logadh a-steach don fhrithealaiche seo còmhla rinn, ach bha mi ro diùid ceist fhaighneachd. Is dòcha gur e marbhadh a bh’ ann -9. Chitheadh ​​​​mi kill -9 anns na logaichean, oir Tha Postgres ag ràdh gun tug e marbhadh -9, ach chan fhaca mi e anns na logaichean.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

A 'coimhead nas fhaide, chunnaic mi nach do sgrìobh Patroni chun log airson ùine mhòr - 54 diogan. Agus ma nì sinn coimeas eadar dà chlàr-ama, cha robh teachdaireachdan ann airson timcheall air 54 diogan.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus rè na h-ùine seo bha faidhle fèin-ghluasadach ann. Rinn Patroni obair mhath an seo a-rithist. Cha robh ar seann mhaighstir ri fhaotainn, thachair rudeigin dha. Agus thòisich taghadh maighstir ùr. Dh’ obraich a h-uile dad gu math an seo. Tha ar pgsql01 air a thighinn gu bhith na stiùiriche ùr.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha mac-samhail againn a thàinig gu bhith na mhaighstir. Agus tha dàrna freagairt ann. Agus bha trioblaidean ann leis an dàrna mac-samhail. Dh'fheuch i ri ath-rèiteachadh. Mar a tha mi ga thuigsinn, dh'fheuch i ri recovery.conf atharrachadh, ath-thòiseachadh Postgres agus ceangal ris a 'mhaighstir ùr. Bidh i a’ sgrìobhadh teachdaireachdan a h-uile 10 diog a tha i a’ feuchainn, ach chan eil i a’ soirbheachadh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus rè na h-oidhirpean sin, bidh comharra dùnadh sa bhad a’ ruighinn an t-seann mhaighstir. Tha am maighstir air ath-thòiseachadh. Agus cuideachd stadaidh ath-bheothachadh leis gu bheil an seann mhaighstir a’ dol a-steach gu ath-thòiseachadh. Is e sin, chan urrainn don mhac-samhail ceangal a dhèanamh ris, oir tha e ann am modh dùnadh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Aig àm air choreigin, dh'obraich e, ach cha do thòisich ath-riochdachadh.

Is e an aon bheachd a th’ agam gun robh seann phrìomh sheòladh ann an recovery.conf. Agus nuair a nochd maighstir ùr, dh'fheuch an dàrna mac-samhail fhathast ri ceangal ris an t-seann mhaighstir.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Nuair a thòisich Patroni air an dàrna mac-samhail, thòisich an nód ach cha b’ urrainn dha ath-riochdachadh. Agus chaidh lag ath-riochdachadh a chruthachadh, a bha a’ coimhead rudeigin mar seo. Is e sin, bha na trì nodan nan àite, ach bha an dàrna nód air dheireadh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Aig an aon àm, ma choimheadas tu air na logaichean a chaidh a sgrìobhadh, chitheadh ​​​​tu nach b’ urrainn ath-riochdachadh tòiseachadh leis gu robh na logaichean malairt eadar-dhealaichte. Agus chan eil na logaichean malairt sin a tha am maighstir a ’tabhann, a tha air an sònrachadh ann an recovery.conf, dìreach a’ freagairt air an nód gnàthach againn.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus an seo rinn mi mearachd. B’ fheudar dhomh a thighinn a dh’fhaicinn dè a bha ann an recovery.conf gus mo bheachd-bharail a dhearbhadh gun robh sinn a’ ceangal ris a’ mhaighstir ceàrr. Ach an uairsin bha mi dìreach a’ dèiligeadh ri seo agus cha do thachair e rium, no chunnaic mi gu robh am mac-samhail air dheireadh agus gum feumadh e a bhith air ath-lìonadh, is e sin, dh’ obraich mi dòigh air choireigin gun chùram. B’ e seo mo cho-bhanntachd.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Às deidh 30 mionaidean, thàinig an rianaire mu thràth, ie thòisich mi air Patroni air a’ mhac-samhail. Chuir mi crìoch air mu thràth, shaoil ​​​​mi gum feumadh e ath-lìonadh. Agus smaoinich mi - ath-thòisichidh mi Patroni, is dòcha gun tig rudeigin math a-mach. Thòisich ath-bheothachadh. Agus dh'fhosgail am bonn eadhon, bha e deiseil airson gabhail ri ceanglaichean.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha ath-riochdachadh air tòiseachadh. Ach mionaid às deidh sin thuit i le mearachd nach eil clàran malairt iomchaidh dhi.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Bha mi a 'smaoineachadh gum biodh mi air ath-thòiseachadh a-rithist. Thòisich mi air Patroni a-rithist, agus cha do rinn mi ath-thòiseachadh air Postgres, ach ath-thòisich mi Patroni an dòchas gun tòisicheadh ​​​​e gu draoidheil air an stòr-dàta.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Thòisich an ath-riochdachadh a-rithist, ach bha na comharran anns an log malairt eadar-dhealaichte, cha robh iad co-ionann ris an oidhirp tòiseachaidh roimhe. Sguir ath-riochdachadh a-rithist. Agus bha an teachdaireachd mu thràth beagan eadar-dhealaichte. Agus cha robh e gu math fiosrachail dhomh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus an uairsin bidh e a ’tachairt dhòmhsa - dè ma nì mi ath-thòiseachadh air Postgres, aig an àm seo bidh mi a’ dèanamh puing-seic air a ’mhaighstir gnàthach gus am puing anns a’ log malairt a ghluasad beagan air adhart gus an tòisich ath-bheothachadh bho mhionaid eile? A bharrachd air an sin, bha stocan de WAL againn fhathast.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Ath-thòisich mi Patroni, rinn mi puing-seic no dhà air a’ mhaighstir, puing no dhà ath-thòiseachadh air a’ mhac-samhail nuair a dh’ fhosgail e. Agus chuidich e. Bha mi a’ smaoineachadh airson ùine mhòr carson a chuidich e agus mar a bha e ag obair. Agus thòisich am mac-samhail. Agus cha robh mac-samhail tuilleadh air a reubadh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Tha an leithid de dhuilgheadas dhòmhsa mar aon den fheadhainn as dìomhaire, air a bheil mi fhathast a’ tòimhseachan mu na thachair dha-rìribh an sin.

Dè na buaidhean a tha an seo? Faodaidh Patroni obrachadh mar a bha dùil agus gun mhearachdan sam bith. Ach aig an aon àm, chan e gealltanas 100% a tha seo gu bheil a h-uile dad gu math leinn. Faodaidh an mac-samhail tòiseachadh, ach dh’ fhaodadh gum bi e ann an staid leth-obrachail, agus chan urrainn don tagradh obrachadh le mac-samhail mar sin, oir bidh seann dàta ann.

Agus às deidh an fhaidhleadair, feumaidh tu an-còmhnaidh dèanamh cinnteach gu bheil a h-uile dad ann an òrdugh leis a’ bhuidheann, is e sin, gu bheil an àireamh de mhac-samhail a tha a dhìth, chan eil dàil air ath-riochdachadh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Agus mar a thèid sinn tro na cùisean sin, nì mi molaidhean. Dh'fheuch mi rin cur còmhla ann an dà shleamhnag. Is dòcha gun gabhadh na sgeulachdan gu lèir a chur còmhla ann an dà shleamhnag agus dìreach innse dhaibh.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Nuair a chleachdas tu Patroni, feumaidh sgrùdadh a bhith agad. Bu chòir dhut an-còmhnaidh fios a bhith agad cuin a thachair faidhleadh fèin-ghluasadach, oir mura h-eil fios agad gu robh faidhle fèin-ghluasadach agad, chan eil smachd agad air a’ bhuidheann. Agus tha sin dona.

Às deidh gach faidhleadair, feumaidh sinn an-còmhnaidh sgrùdadh a dhèanamh air a’ bhuidheann le làimh. Feumaidh sinn dèanamh cinnteach gu bheil an àireamh as ùire de mhac-samhail againn an-còmhnaidh, chan eil dàil air ath-riochdachadh, chan eil mearachdan anns na logaichean co-cheangailte ri ath-riochdachadh sruthadh, le Patroni, leis an t-siostam DCS.

Faodaidh fèin-ghluasad obrachadh gu soirbheachail, tha Patroni na inneal fìor mhath. Faodaidh e obrachadh, ach cha toir seo am buidheann chun an staid a tha thu ag iarraidh. Agus mura faigh sinn a-mach mu dheidhinn, bidh sinn ann an trioblaid.

Agus chan e peilear airgid a th’ ann am Patroni. Feumaidh sinn fhathast tuigsinn mar a tha Postgres ag obair, mar a tha ath-riochdachadh ag obair agus mar a bhios Patroni ag obair le Postgres, agus mar a tha conaltradh eadar nodan air a thoirt seachad. Tha seo riatanach gus an urrainn dhut duilgheadasan a rèiteachadh le do làmhan.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Ciamar a dhèiligeas mi ri cùis breithneachadh? Tha e mar sin a thachair gu bheil sinn ag obair le diofar luchd-dèiligidh agus chan eil stac ELK aig duine, agus feumaidh sinn na logaichean a rèiteach le bhith a’ fosgladh 6 consoles agus 2 tabaichean. Ann an aon chlàr, is iad seo na logaichean Patroni airson gach nód, anns an taba eile, is iad sin na logaichean Consal, no Postgres ma tha sin riatanach. Tha e gu math duilich seo a dhearbhadh.

Dè na dòighean-obrach a tha mi air a ghabhail? An toiseach, bidh mi an-còmhnaidh a’ coimhead nuair a tha am faidhleadair air ruighinn. Agus dhòmhsa tha seo na cheum-uisge. Bidh mi a’ coimhead air na thachair ron neach-faidhle, rè an fhaidhleadair agus às deidh an fhaidhleadair. Tha dà chomharra air an fhaidhle thairis: is e seo an ùine tòiseachaidh is crìochnachaidh.

An ath rud, bidh mi a’ coimhead anns na logaichean airson tachartasan ron fhaidhleadair, a bha air thoiseach air an fhaidhleadair, i.e. bidh mi a’ coimhead airson na h-adhbharan airson gun do thachair am faidhleadair.

Agus tha seo a 'toirt dealbh de bhith a' tuigsinn dè thachair agus dè ghabhas dèanamh san àm ri teachd gus nach tachair leithid de shuidheachadh (agus mar thoradh air sin, chan eil faidhleadair ann).

Agus càite am bi sinn mar as trice a’ coimhead? tha mi a' coimhead:

  • An toiseach, gu logaichean Patroni.
  • An uairsin, bidh mi a’ coimhead air na logaichean Postgres, no na logaichean DCS, a rèir na chaidh a lorg ann an logaichean Patroni.
  • Agus bidh logaichean an t-siostaim cuideachd uaireannan a’ toirt tuigse air na dh’ adhbhraich am faidhleadair.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Ciamar a tha mi a’ faireachdainn mu dheidhinn Patroni? Tha dàimh fìor mhath agam le Patroni. Nam bheachd-sa, is e seo an rud as fheàrr a th’ ann an-diugh. Tha mi eòlach air mòran thoraidhean eile. Is iad sin Stolon, Repmgr, Pg_auto_failover, PAF. 4 innealan. Dh'fheuch mi iad uile. Is e Patroni am fear as fheàrr leam.

Ma dh'fhaighnicheas iad dhomh: "Am bi mi a 'moladh Patroni?". Canaidh mi tha, oir is toil leam Patroni. Agus tha mi a 'smaoineachadh gun do dh'ionnsaich mi mar a chòcaicheas mi e.

Ma tha ùidh agad faicinn dè na duilgheadasan eile a th’ ann le Patroni a bharrachd air na duilgheadasan air an tug mi iomradh, faodaidh tu an-còmhnaidh sùil a thoirt air an duilleag cùisean air GitHub. Tha tòrr sgeulachdan eadar-dhealaichte ann agus tha mòran chùisean inntinneach air an deasbad an sin. Agus mar thoradh air an sin, chaidh cuid de bhiteagan a thoirt a-steach agus fhuasgladh, is e sin, is e leughadh inntinneach a tha seo.

Tha sgeulachdan inntinneach ann mu dhaoine a’ losgadh orra fhèin nam bonn. Gu math fiosrachail. Tha thu a' leughadh agus a' tuigsinn nach 'eil feum air sin a dheanamh. Chuir mi strìochag orm fhìn.

Agus bu mhath leam taing mhòr a thoirt do Zalando airson a 'phròiseact seo a leasachadh, is e sin Alasdair Kukushkin agus Alexei Klyukin. Tha Aleksey Klyukin mar aon de na co-ùghdaran, chan eil e ag obair aig Zalando tuilleadh, ach is iad sin dithis a thòisich ag obair leis a ’bhathar seo.

Agus tha mi a’ smaoineachadh gur e rud gu math fionnar a th’ ann am Patroni. Tha mi toilichte gu bheil i ann, tha e inntinneach leatha. Agus taing mhòr dhan a h-uile duine a tha a' sgrìobhadh phìosan gu Patroni. Tha mi an dòchas gum fàs Patroni nas aibidh, fionnar agus èifeachdach le aois. Tha e obrachail mu thràth, ach tha mi an dòchas gum fàs e eadhon nas fheàrr. Mar sin, ma tha thu an dùil Patroni a chleachdadh, na biodh eagal ort. Is e fuasgladh math a tha seo, faodar a chuir an gnìomh agus a chleachdadh.

Sin e. Ma tha ceistean agad, faighnich.

Sgeulachdan fàilligeadh Patroni no mar a bhuaileas tu do bhuidheann PostgreSQL. Alexei Lesovsky

Do cheistean

Tapadh leibh airson an aithris! Ma dh’ fheumas tu fhathast coimhead gu faiceallach às deidh faidhleadair, carson a tha feum againn air faidhleadair fèin-ghluasadach?

Leis gur e stuth ùr a th’ ann. Chan eil sinn air a bhith còmhla rithe ach airson bliadhna. Nas fheàrr a bhith sàbhailte. Tha sinn airson a thighinn a-steach agus faicinn gun do dh’ obraich a h-uile càil a-mach mar a bu chòir. Is e seo an ìre de earbsa inbheach - tha e nas fheàrr sgrùdadh dùbailte agus faicinn.

Mar eisimpleir, chaidh sinn sa mhadainn agus choimhead sinn, ceart?

Chan ann sa mhadainn, mar as trice bidh sinn ag ionnsachadh mun fhaidhle fèin-ghluasadach cha mhòr sa bhad. Gheibh sinn fiosan, chì sinn gu bheil faidhle fèin-ghluasadach air tachairt. Bidh sinn cha mhòr sa bhad a’ dol a choimhead. Ach bu chòir na sgrùdaidhean sin uile a thoirt chun ìre sgrùdaidh. Ma gheibh thu cothrom air Patroni tron ​​​​REST API, tha eachdraidh ann. A rèir eachdraidh chì thu na clàran-ama nuair a thachair am faidhleadair. Stèidhichte air seo, faodar sgrùdadh a dhèanamh. Chì thu an eachdraidh, cia mheud tachartas a bha ann. Ma tha barrachd thachartasan againn, tha faidhle fèin-ghluasadach air tachairt. Faodaidh tu a dhol a choimhead. No rinn ar fèin-ghluasad sgrùdaidh sgrùdadh gu bheil a h-uile mac-samhail againn nan àite, chan eil dàil ann agus tha a h-uile dad gu math.

Tapadh leibh!

Mòran taing airson an sgeulachd sgoinneil! Ma ghluaiseas sinn an cruinneachadh DCS an àiteigin fada bho bhuidheann Postgres, feumaidh am buidheann seo a bhith air a seirbheiseachadh bho àm gu àm cuideachd? Dè na cleachdaidhean as fheàrr a dh’ fheumas cuid de phìosan den bhuidheann DCS a chuir dheth, rudeigin ri dhèanamh leotha, msaa? Ciamar a mhaireas an structar slàn seo? Agus ciamar a nì thu na rudan seo?

Airson aon chompanaidh, bha e riatanach matrix de dhuilgheadasan a dhèanamh, dè a thachras ma dh'fhàilligeas aon de na pàirtean no grunn phàirtean. A rèir na matrix seo, bidh sinn ann an sreath a’ dol tro na pàirtean gu lèir agus a’ togail shuidheachaidhean gun fhios nach fàilligeadh na co-phàirtean sin. Mar sin, airson gach suidheachadh fàilligidh, faodaidh plana gnìomh a bhith agad airson faighinn seachad air. Agus a thaobh DCS, tha e a’ tighinn mar phàirt den bhun-structar àbhaisteach. Agus bidh an rianaire ga rianachd, agus tha sinn mar-thà an urra ris an luchd-rianachd a bhios ga rianachd agus an comas a chàradh gun fhios nach bi tubaistean ann. Mura h-eil DCS ann idir, bidh sinn ga chleachdadh, ach aig an aon àm chan eil sinn gu sònraichte a’ cumail sùil air, leis nach eil uallach oirnn airson a’ bhun-structair, ach bheir sinn molaidhean seachad air ciamar agus dè a nì sinn sgrùdadh.

Is e sin, an do thuig mi gu ceart gum feum mi Patroni a chuir dheth, am faidhleadair a dhì-cheadachadh, a h-uile càil a chuir dheth mus dèan mi dad leis na h-aoighean?

Tha e an urra ri cia mheud noda a th’ againn ann am buidheann DCS. Ma tha mòran nodan ann agus mura cuir sinn à comas ach aon de na nodan (an mac-samhail), bidh an cruinneachadh a’ cumail cuòram. Agus tha Patroni fhathast ag obair. Agus chan eil dad air a bhrosnachadh. Ma tha gnìomhachd iom-fhillte againn a bheir buaidh air barrachd nodan, agus às aonais sin faodaidh an cuòram a mhilleadh, an uairsin - tha, is dòcha gum biodh e ciallach Patroni a chuir air stad. Tha òrdugh co-fhreagarrach aige - patronictl pause, patronictl resume. Bidh sinn dìreach a’ stad agus chan eil an autofiler ag obair aig an àm sin. Bidh sinn a’ dèanamh cumail suas air cruinneachadh DCS, an uairsin bidh sinn a’ toirt dheth am stad agus a’ cumail oirnn a’ fuireach.

Ceangalaichean BBC Làrach Mobile Cùmhnantan-cleachdaidh Mun BhBC Sanasaich leinn

Tapadh leibh gu mòr airson an aithris agad! Ciamar a tha an sgioba toraidh a’ faireachdainn mu chall dàta?

Chan eil dragh aig sgiobaidhean toraidh, agus tha stiùirichean sgioba draghail.

Dè na geallaidhean a th’ ann?

Tha geallaidhean gu math duilich. Tha aithisg aig Alexander Kukushkin “Mar a nì thu àireamhachadh RPO agus RTO”, ie ùine ath-bheothachaidh agus cia mheud dàta as urrainn dhuinn a chall. Tha mi a’ smaoineachadh gum feum sinn na sleamhnagan sin a lorg agus an sgrùdadh. Cho fad ‘s as cuimhne leam, tha ceumannan sònraichte ann air mar a nì thu àireamhachadh nan rudan sin. Cia mheud gnothach as urrainn dhuinn a chall, cia mheud dàta as urrainn dhuinn a chall. Mar roghainn, is urrainn dhuinn mac-samhail sioncronaich a chleachdadh aig ìre Patroni, ach is e claidheamh dà-oir a tha seo: an dàrna cuid tha earbsachd dàta againn, no caillidh sinn astar. Tha ath-riochdachadh sioncronaich ann, ach chan eil e cuideachd a ’gealltainn dìon 100% an aghaidh call dàta.

Alexei, taing airson an aithisg sgoinneil! Eòlas sam bith le bhith a’ cleachdadh Patroni airson dìon ìre neoni? Is e sin, ann an co-bhonn ri cùl-taic sioncronaich? Seo a’ chiad cheist. Agus an dàrna ceist. Tha thu air diofar fhuasglaidhean a chleachdadh. Chleachd sinn Repmgr, ach às aonais autofiler, agus a-nis tha sinn an dùil autofiler a thoirt a-steach. Agus bidh sinn a’ beachdachadh air Patroni mar fhuasgladh eile. Dè as urrainn dhut a ràdh mar bhuannachdan an taca ri Repmgr?

Bha a’ chiad cheist mu dheidhinn mac-samhail sioncronaich. Chan eil duine a 'cleachdadh ath-riochdachadh sioncronaich an seo, oir tha eagal air a h-uile duine (Tha grunn luchd-dèiligidh ga chleachdadh mu thràth, ann am prionnsabal, cha do mhothaich iad duilgheadasan coileanaidh - Nòta neach-labhairt). Ach tha sinn air riaghailt a leasachadh dhuinn fhìn gum bu chòir co-dhiù trì nodan a bhith ann an cruinneachadh mac-samhail sioncronaich, oir ma tha dà nod againn agus ma dh’ fhailicheas am maighstir no am mac-samhail, bidh Patroni ag atharrachadh an nód seo gu modh Standalone gus am bi an tagradh a’ leantainn air adhart. obair. Anns a 'chùis seo, tha cunnart ann gun tèid dàta a chall.

A thaobh an dàrna ceist, tha sinn air Repmgr a chleachdadh agus tha sinn fhathast a 'dèanamh le cuid de luchd-dèiligidh airson adhbharan eachdraidheil. Dè ghabhas a ràdh? Bidh Patroni a’ tighinn le autofiler a-mach às a’ bhogsa, tha Repmgr a’ tighinn le autofiler mar fheart a bharrachd a dh’ fheumas a bhith comasach. Feumaidh sinn an daemon Repmgr a ruith air gach nód agus an uairsin is urrainn dhuinn an autofiler a rèiteachadh.

Bidh Repmgr a’ sgrùdadh a bheil nodan Postgres beò. Bidh pròiseasan Repmgr a’ dèanamh cinnteach gu bheil a chèile ann, chan e dòigh-obrach fìor èifeachdach a tha seo. faodaidh cùisean iom-fhillte de aonaranachd lìonra a bhith ann far am faod cruinneachadh mòr Repmgr tuiteam às a chèile ann an grunnan nas lugha agus cumail orra ag obair. Chan eil mi air a bhith a’ leantainn Repmgr airson ùine mhòr, is dòcha gun deach a shocrachadh ... Ach is e toirt air falbh fiosrachadh mu staid a’ bhuidheann ann an DCS, mar a nì Stolon, Patroni, an roghainn as so-dhèanta.

Alexei, tha ceist agam, is dòcha fear lamer. Ann an aon de na ciad eisimpleirean, ghluais thu DCS bhon inneal ionadail gu aoigheachd iomallach. Tha sinn a’ tuigsinn gu bheil an lìonra na rud aig a bheil na feartan aige fhèin, gu bheil e beò leis fhèin. Agus dè thachras mura h-eil an cruinneachadh DCS ri fhaighinn airson adhbhar air choireigin? Cha bhith mi ag ràdh na h-adhbharan, faodaidh tòrr a bhith ann: bho làmhan cam luchd-lìn gu fìor dhuilgheadasan.

Cha tuirt mi a-mach e, ach feumaidh an cruinneachadh DCS a bhith fàiligeadh cuideachd, i.e. is e àireamh neònach de nodan a th’ ann, gus an tèid cuòram a choileanadh. Dè thachras mura bi an cruinneachadh DCS ri fhaighinn, no mura tèid cuòram a choileanadh, i.e. seòrsa de sgaradh lìonraidh no fàilligeadh nodan? Anns a ’chùis seo, bidh cruinneachadh Patroni a’ dol a-steach do mhodh leughaidh a-mhàin. Chan urrainn don bhuidheann Patroni staid a’ bhuidheann a dhearbhadh agus dè a nì iad. Chan urrainn dha fios a chuir chun DCS agus an stàit brabhsair ùr a stòradh an sin, agus mar sin thèid am buidheann gu lèir a leughadh a-mhàin. Agus a’ feitheamh an dàrna cuid airson eadar-theachd làimhe bhon ghnìomhaiche no ri DCS faighinn air ais.

Gu ìre mhòr, bidh DCS gu bhith na sheirbheis cho cudromach dhuinn ris a’ bhunait fhèin?

Seadh Tha. Ann an uimhir de chompanaidhean an latha an-diugh, tha Seirbheis Discovery na phàirt riatanach den bhun-structar. Thathas ga bhuileachadh eadhon mus robh eadhon stòr-dàta anns a’ bhun-structar. An ìre mhath a’ bruidhinn, chaidh am bun-structar a chuir air bhog, a chleachdadh anns an DC, agus tha Lorg Seirbheis againn sa bhad. Mas e Consul a th’ ann, faodar DNS a thogail air. Mas e seo Etcd, is dòcha gu bheil pàirt ann bho bhuidheann Kubernetes, anns am bi a h-uile càil eile air a chleachdadh. Tha e coltach rium gu bheil Lorg Seirbheis mar-thà na phàirt riatanach de bhun-structaran an latha an-diugh. Agus bidh iad a’ smaoineachadh mu dheidhinn fada nas tràithe na mu dheidhinn stòran-dàta.

Tapadh leibh!

Source: www.habr.com

Cuir beachd ann