Ro-rĂ dh
O chionn Ăšine air ais fhuair mi an obair a bhith aâ leasachadh brabhsair failover airson , ag obair ann an grunn ionadan dĂ ta ceangailte le snĂ ithleach optigeach taobh a-staigh aon bhaile, agus comasach air seasamh an aghaidh fĂ illigeadh (mar eisimpleir, dubhadh) ann an aon ionad dĂ ta. Mar am bathar-bog a tha an urra ri fulangas sgĂ inidhean, thagh mi oir is e seo am fuasgladh oifigeil bho RedHat airson cruinneachaidhean fĂ illigeadh a chruthachadh. Tha e math oir tha RedHat aâ toirt taic dha, agus leis gu bheil am fuasgladh seo uile-choitcheann (modular). Le a chuideachadh, bidh e comasach dèanamh cinnteach Ă fulangas locht chan ann a-mhĂ in PostgreSQL, ach cuideachd seirbheisean eile, an dĂ rna cuid aâ cleachdadh mhodalan Ă bhaisteach no gan cruthachadh airson feumalachdan sònraichte.
Thog an co-dhĂšnadh seo ceist reusanta: dè cho fulangach âs a bhios buidheann fĂ iligeadh? Gus seo a sgrĂšdadh, leasaich mi being deuchainn a bhios aâ dèanamh atharrais air diofar fĂ illigidhean air na nodan cnuasachaidh, aâ feitheamh ri seirbheis a thoirt air ais, aâ faighinn air ais an nĂłd a dhâ fhĂ illig, agus aâ leantainn air adhart aâ dèanamh deuchainn ann an lĂšb. Bâ e hapgsql an t-ainm a bhâ air aâ phròiseact seo bho thĂšs, ach thar Ăšine dhâ fhĂ s mi sgĂŹth leis an ainm, aig nach robh ach aon fhuaimreag. Mar sin, thòisich mi aâ gairm stòran-dĂ ta fulangach air lochdan (agus seòladh IP aâ comharrachadh iad) crogan (caractar bho gheama coimpiutair anns a bheil a h-uile ball cudromach air a dhĂšblachadh), agus nodan, cruinneachaidhean agus am pròiseact fhèin tuchanka (aâ phlanaid far a bheil na krogans aâ fuireach).
A-nis tha an riaghladh air ceadachadh . Bidh an README air eadar-theangachadh gu Beurla a dh'aithghearr (oir thathar an dĂšil gur e luchd-leasachaidh Pacemaker agus PostgreSQL na prĂŹomh luchd-cleachdaidh), agus chuir mi romhpa an seann dreach Ruiseanach den README a thaisbeanadh (gu ĂŹre) ann an cruth an artaigil seo.

Tha cruinneachaidhean gan cleachdadh air innealan brĂŹgheil . Thèid 12 inneal brĂŹgheil gu h-iomlan (36GiB gu h-iomlan) a chuir a-steach, a bhios aâ dèanamh suas 4 cruinneachaidhean fulangach lochdan (roghainnean eadar-dhealaichte). Anns aâ chiad dĂ bhuidheann tha dĂ fhrithealaiche PostgreSQL, a tha suidhichte ann an diofar ionadan dĂ ta, agus frithealaiche cumanta fhianais c inneal cuòram (air aoigheachd air inneal brĂŹgheil saor ann an treas ionad dĂ ta), a dh âfhuasgladh mĂŹ-chinnt 50% / 50%, aâ toirt do bhòt do aon de na pĂ rtaidhean. An treas buidheann ann an trĂŹ ionadan dĂ ta: aon mhaighstir, dĂ thrĂ illean, chan eil inneal cuòram. Anns a âcheathramh buidheann tha ceithir frithealaichean PostgreSQL, dhĂ airson gach ionad dĂ ta: aon mhaighstir, an còrr mac-samhail, agus cuideachd aâ cleachdadh fhianais c inneal cuòram. Faodaidh an ceathramh seasamh an aghaidh fĂ illigeadh dĂ fhrithealaiche no aon ionad dĂ ta. Faodar am fuasgladh seo a sgèileadh gu Ă ireamh nas motha de mhac-samhail ma tha sin riatanach.
Seirbheis Ăšine cheart cuideachd air ath-dhealbhadh airson fulangas sgĂ inidhean, ach bidh e aâ cleachdadh an dòigh fhèin ntpd (modh dĂŹlleachdan). Frithealaiche co-roinnte fhianais ag obair mar phrĂŹomh fhrithealaiche NTP, aâ cuairteachadh a h-Ăšine gu gach buidheann, agus mar sin aâ sioncronadh a h-uile frithealaiche ri chèile. Ma tha fhianais aâ fĂ illigeadh no aâ fĂ s aonaranach, an uairsin tòisichidh aon de na frithealaichean brabhsair (taobh a-staigh aâ bhraisle) aâ sgaoileadh a h-Ăšine. Tasgadh cuideachail HTTP neach-ionaid cuideachd air a thogail gu fhianais, le a chuideachadh, tha cothrom aig innealan brĂŹgheil eile air stòran Yum. Ann an da-rĂŹribh, tha e coltach gum bi seirbheisean leithid Ăšine cheart agus proxies air an cumail air frithealaichean sònraichte, ach anns aâ bhothan tha iad air an cumail air fhianais dĂŹreach gus an Ă ireamh de dhâ innealan brĂŹgheil agus Ă ite a shĂ bhaladh.
Tionndaidhean
v0. Ag obair le CentOS 7 agus PostgreSQL 11 air VirtualBox 6.1.
Structar cnuasachaidh
Tha na cruinneachaidhean uile air an dealbhadh gus a bhith suidhichte ann an grunn ionadan dĂ ta, air an cur còmhla ann an aon lĂŹonra rèidh agus feumaidh iad seasamh an aghaidh fĂ illigeadh no iomallachd lĂŹonra ann an aon ionad dĂ ta. Is ann air sgĂ th sin neo-dhligheach cleachdadh airson dĂŹon an aghaidh sgoltadh-eanchainn teicneòlas Ă bhaisteach Pacemaker ris an canar STONITH (Seilg an Noda Eile Sa Cheann) no feansaichean. A bhrĂŹgh: ma thòisicheas na nodan anns aâ bhraisle fo amharas gu bheil rudeigin ceĂ rr air nĂłd air choireigin, nach eil e aâ freagairt no ga ghiĂšlan fhèin gu ceĂ rr, bidh iad gu lĂ idir ga chuir dheth tro innealan âtaobh a-muighâ, mar eisimpleir, cairt smachd IPMI no UPS. . Ach chan obraich seo ach ann an cĂšisean far a bheil, ma thachras aon fhĂ illigeadh, an IPMI no frithealaiche UPS fhathast ag obair. An seo tha sinn an dĂšil dĂŹon an aghaidh fĂ illigeadh mòran nas tubaisteach, nuair a dh'fhĂ illig an ionad dĂ ta gu lèir (mar eisimpleir, a 'call cumhachd). Agus le leithid de dhiĂšltadh, a h-uile dad stonith-devices (IPMI, UPS, msaa) cuideachd nach obraich.
An Ă ite sin, tha an siostam stèidhichte air a 'bheachd air cuòram. Tha guth aig a h-uile nod, agus chan urrainn ach an fheadhainn a chĂŹ còrr air leth nan nodan obrachadh. Canar an Ă ireamh seo de âleth + 1â. cuòram. Mura ruigear an cuòram, bidh an nĂłd aâ co-dhĂšnadh gu bheil e ann an aonaranachd lĂŹonra agus feumaidh e na goireasan aige a chuir dheth, i.e. seo mar a tha e dĂŹon sgoltadh-eanchainn. Mura obraich am bathar-bog a tha an urra ris aâ ghiĂšlan seo, feumaidh buidheann faire, mar eisimpleir, stèidhichte air IPMI, obrachadh.
Ma tha an Ă ireamh de nodan eadhon (còmhla ann an dĂ ionad dĂ ta), faodaidh mĂŹ-chinnt a bhith ann 50% / 50% (leth-cheud) nuair a bhios iomallachd lĂŹonra aâ roinn aâ bhuidheann gu dĂŹreach ann an leth. Mar sin, airson Ă ireamh chothromach de nodan, bidh sinn a 'cur ris inneal cuòram na dheamhan gun iarrtas a dhâ fhaodar a chuir air bhog air an inneal brĂŹgheil as saoire ann an treas ionad dĂ ta. Bheir e a bhòt do aon de na roinnean (a tha e aâ faicinn), agus mar sin aâ fuasgladh na mĂŹ-chinnt 50%/50%. Dhâ ainmich mi am frithealaiche air an tèid an inneal cuòram a chuir air bhog fhianais (briathrachas bho repmgr, chòrd e rium).
Faodar goireasan a ghluasad bho Ă ite gu Ă ite, mar eisimpleir, bho luchd-frithealaidh lochtach gu feadhainn fallain, no fo stiĂšir luchd-rianachd an t-siostaim. Gus am bi fios aig teachdaichean cĂ ite a bheil na goireasan a tha a dhĂŹth orra (cĂ it an ceangal iad?), IP air bhog (seòladh IP). Is iad sin IPan as urrainn dha Pacemaker gluasad timcheall nodan (tha a h-uile dad air lĂŹonra còmhnard). Tha gach fear dhiubh aâ samhlachadh goireas (seirbheis) agus bidh e suidhichte far am feum thu ceangal a dhèanamh gus faighinn chun t-seirbheis seo (anns aâ chĂšis againn, stòr-dĂ ta).
Tuchanka1 (cuairt le teannachadh)
structar

B âe am beachd gu bheil mòran stòran-dĂ ta beaga againn le luchd ĂŹosal, airson nach eil e prothaideach seirbheisiche trĂ illean sònraichte a chumail ann am modh teas-stad airson gnothaichean leughaidh a-mhĂ in (chan eil feum air a leithid de chaitheamh ghoireasan).
Tha aon fhrithealaiche aig gach ionad dĂ ta. Tha dĂ chĂšis PostgreSQL aig gach frithealaiche (ann am briathrachas PostgreSQL canar cruinneachaidhean riutha, ach gus troimh-chèile a sheachnadh canaidh mi eisimpleirean riutha (a rèir stòran-dĂ ta eile), agus cha chuir mi fios ach air cruinneachaidhean Pacemaker). Tha aon eisimpleir ag obair ann am prĂŹomh mhodh, agus chan eil ann ach seirbheisean (chan eil ach IP fleòdraidh ga leantainn). Bidh an dĂ rna suidheachadh ag obair mar thrĂ ill airson an dĂ rna ionad dĂ ta, agus bheir e seachad seirbheisean a-mhĂ in ma dh'fhĂ illigeas a mhaighstir. Leis nach bi aâ mhòr-chuid den Ăšine ach aon eisimpleir a-mach Ă dhĂ (am maighstir) aâ toirt seachad seirbheisean (dèan iarrtasan), tha goireasan an fhrithealaiche uile air an Ăšrachadh airson aâ mhaighstir (tha cuimhne air a riarachadh airson an tasgadan shared_buffers, msaa), ach airson an dĂ rna suidheachadh tha goireasan gu leòr ann cuideachd (ged is ann airson obrachadh suboptimal tro tasgadan an t-siostam faidhle) gun fhios nach obraich aon de na h-ionadan dĂ ta. Chan eil an trĂ ill a 'toirt seachad seirbheisean (chan eil e a' coileanadh iarrtasan leughaidh a-mhĂ in) rè obrachadh Ă bhaisteach a 'bhraisle, gus nach bi cogadh ann airson goireasan leis a' mhaighstir air an aon inneal.
Ann an cĂšis dĂ nodan, chan eil fulangas locht comasach ach le ath-riochdachadh asyncronach, oir le ath-riochdachadh sioncronaich, bidh fĂ illigeadh trĂ ill a âleantainn gu stad aâ mhaighstir.
Gun fhianuis

Gun a bhith nad fhianais (inneal cuòram) Cha bheachdaich mi ach airson braisle Tuchanka1, leis a h-uile duine eile bidh e mar an aon sgeulachd. Ma dhâ fhailicheas neach-fianais, chan atharraich dad ann an structar aâ chnuasachd, leanaidh a h-uile cĂ il ag obair san aon dòigh sa rinn e. Ach bidh an cuòram gu bhith 2 a-mach Ă 3, agus mar sin bidh fĂ illigeadh sam bith Ă s deidh sin marbhtach don bhuidheann. Bidh e fhathast ri rèiteachadh gu h-èiginneach.
Tuchanka1 a dhiĂšltadh

Dh'fhĂ illig aon de na h-ionadan dĂ ta airson Tuchanka1. Anns a 'chĂšis seo fhianais aâ bhòtadh gu dĂ rna nĂłd ann an dĂ rna ionad dĂ ta. An sin, bidh an trĂ ill a bh âann roimhe aâ tionndadh gu bhith na mhaighstir, mar thoradh air an sin, bidh an dĂ mhaighstir ag obair air an aon fhrithealaiche agus bidh an dĂ IP fleòdraidh aca gan comharrachadh.
Tuchanka2 (clasaigeach)
structar

Sgeama clasaigeach de dhà nodan. Bidh am maighstir ag obair air aon, an trà ill air an dà rna fear. Faodaidh an dithis iarrtasan a chuir an gnÏomh (tha an trà ill air a leughadh a-mhà in), agus mar sin tha an dithis air an comharrachadh le IP fleòdraidh: is e krogan2 am maighstir, is e krogan2s1 an trà ill. Bidh an dà chuid am maighstir agus an trà ill fo fhulangas lochdan.
Ann an cĂšis dĂ nodan, chan eil fulangas locht comasach ach le ath-riochdachadh asyncronach, oir le ath-riochdachadh sioncronaich, bidh fĂ illigeadh an trĂ ill a âleantainn gu stad aâ mhaighstir.
Tuchanka2 a dhiĂšltadh

Ma dh'fhà illigeas aon de na h-ionadan dà ta fhianais bhòtaichean airson an dà rna fear. Air an aon ionad dà ta obrach, thèid am maighstir a thogail, agus cuiridh an dà IP fleòdraidh cuideam air: am maighstir agus an trà ill. Gu dearbh, feumaidh an t-eisimpleir a bhith air a rèiteachadh gus am bi goireasan gu leòr aige (crÏochan ceangail, msaa) gus gabhail ris a h-uile ceangal agus iarrtas bhon mhaighstir agus an seòladh IP aig an aon à m. Is e sin, rè obrachadh à bhaisteach bu chòir solar gu leòr de chrÏochan a bhith aige.
Tuchanka4 (mòran thrà illean)
structar

Ceann eile mar-thà . Tha stòran-dà ta ann a gheibh mòran iarrtasan leughaidh a-mhà in (cÚis à bhaisteach de là rach là n luchd). Tha Tuchanka4 na shuidheachadh far am faodadh trÏ no barrachd thrà illean a bhith ann airson a leithid de dh'iarrtasan a là imhseachadh, ach fhathast chan eil cus. Le à ireamh mhòr de thrà illean, bidh e riatanach siostam mac-samhail rangachd a chruthachadh. Anns a 'chÚis as lugha (san dealbh), tha dà fhrithealaiche aig gach aon den dà ionad dà ta, gach fear le eisimpleir PostgreSQL.
Is e feart eile den sgeama seo gu bheil e comasach mar-thĂ aon ath-riochdachadh sioncronaich a chuir air dòigh. Tha e air a rèiteachadh gus ath-riochdachadh, ma ghabhas e dèanamh, gu ionad dĂ ta eile, seach gu mac-samhail san aon ionad dĂ ta ris aâ mhaighstir. Tha am maighstir agus gach trĂ ill air an comharrachadh le IP fleòdraidh. Gu fortanach, eadar thrĂ illean bidh e riatanach iarrtasan a chothromachadh dòigh air choireigin neach-ionaid sql, mar eisimpleir, air taobh an neach-dèiligidh. Is dòcha gum feum diofar sheòrsaichean de luchd-dèiligidh diofar sheòrsaichean neach-ionaid sql, agus chan eil ach luchd-leasachaidh luchd-cleachdaidh eòlach air cò a dh'fheumas. Faodar an gnĂŹomh seo a chuir an gnĂŹomh an dĂ rna cuid le daemon bhon taobh a-muigh no le leabharlann teachdaiche (amar ceangail), msaa. Tha seo uile aâ dol nas fhaide na cuspair cruinneachadh stòr-dĂ ta failover (failover SQL neach-ionaid faodar a chuir an gnĂŹomh gu neo-eisimeileach, còmhla ri fulangas locht teachdaiche).
Tuchanka4 a dhiĂšltadh

Ma dhâ fhailicheas aon ionad dĂ ta (ie, dĂ fhrithealaiche), bidh luchd-fianais aâ bhòtadh airson an dĂ rna fear. Mar thoradh air an sin, tha dĂ fhrithealaiche a 'ruith anns an dĂ rna ionad dĂ ta: tha aon a' ruith maighstir, agus tha am maighstir a 'seòladh IP a' comharrachadh (airson iarrtasan sgrĂŹobhaidh leughaidh fhaighinn); agus air an dĂ rna frithealaiche tha trĂ ill aâ ruith le mac-samhail sioncronaich, agus tha aon de na IPan fleòdraidh trĂ illean aâ comharrachadh air (airson iarrtasan leughaidh a-mhĂ in).
Is e aâ chiad rud ri thoirt fa-near nach bi a h-uile IP fleòdraidh trĂ illean nan luchd-obrach, ach dĂŹreach aon. Agus airson obrachadh leis gu ceart bidh feum air sin neach-ionaid sql ath-stiĂšireadh a h-uile iarrtas chun an aon IP fleòdraidh a bha air fhĂ gail; agus ma tha neach-ionaid sql chan e, an uairsin faodaidh tu liosta a dhèanamh de na trĂ illean IP fleòdraidh air an sgaradh le cromagan anns an URL ceangail. Anns a 'chĂšis seo, le libpq bidh an ceangal ris aâ chiad IP obrach, tha seo air a dhèanamh san t-siostam deuchainn fèin-ghluasadach. 'S dòcha ann an leabharlannan eile, mar eisimpleir, JDBC, chan obraich seo agus tha e riatanach neach-ionaid sql. Tha seo air a dhèanamh leis gu bheil casg air IPan fleòdraidh airson trĂ illean a bhith air an togail aig an aon Ă m air aon fhrithealaiche, gus am bi iad air an sgaoileadh gu cothromach am measg luchd-frithealaidh thrĂ illean ma tha grunn dhiubh aâ ruith.
San dĂ rna h-Ă ite: eadhon ma dhâ fhĂ illig ionad dĂ ta, thèid ath-riochdachadh sioncronaich a chumail suas. Agus eadhon ged a thachras fĂ iligeadh Ă rd-sgoile, is e sin, gu bheil aon den dĂ sheirbheisiche san ionad dĂ ta a tha air fhĂ gail aâ fĂ iligeadh, cumaidh am buidheann, ged a sguireas e seirbheisean a thoirt seachad, fiosrachadh fhathast mu dheidhinn a h-uile gnothach dealasach a thug e seachad dearbhadh air aâ ghealladh. (cha bhi fiosrachadh air chall ma thachras fĂ iligeadh Ă rd-sgoile).
Tuchanka3 (3 ionadan dĂ ta)
structar

Is e cruinneachadh a tha seo airson suidheachadh far a bheil trĂŹ ionadan dĂ ta lĂ n-ghnĂŹomhach, agus tha frithealaiche stòr-dĂ ta lĂ n-ghnĂŹomhach aig gach fear dhiubh. Anns a 'chĂšis seo inneal cuòram chan eil feum air. Tha maighstir ann an aon ionad dĂ ta, agus tha trĂ illean anns an dithis eile. Tha ath-riochdachadh sioncronaich, dèan seòrsa AON (trĂ ill 1, trĂ ill2), is e sin, gheibh an neach-dèiligidh dearbhadh gealltanas nuair is e gin de na trĂ illean aâ chiad fhear a fhreagair gu bheil e air gabhail ris aâ ghealladh. Tha goireasan air an comharrachadh le aon IP fleòdraidh airson aâ mhaighstir agus dhĂ airson trĂ illean. Eu-coltach ri Tuchanka4, tha na trĂŹ IPan fleòdraidh aâ fulang le lochdan. Gus ceistean SQL a leughadh a-mhĂ in a chothromachadh, faodaidh tu a chleachdadh neach-ionaid sql (le fulangas fa leth), no sònraich aon IP fleòdraidh trĂ illean gu leth an luchd-dèiligidh, agus an leth eile chun dĂ rna fear.
Tuchanka3 a dhiĂšltadh

Ma dhâ fhailicheas aon de na h-ionadan dĂ ta, tha dhĂ fhathast ann. Ann an aon, tha am maighstir agus IP fleòdraidh bhon mhaighstir air an togail, anns an dĂ rna fear - IPan fleòdraidh trĂ ill agus an dĂ chuid trĂ illean (feumaidh cĂšl-stòr dĂšbailte de ghoireasan a bhith aig an eisimpleir gus gabhail ris a h-uile ceangal bhon dĂ IP fleòdraidh trĂ illean). Ath-riochdachadh sioncronaich eadar maighstirean agus trĂ illean. Cuideachd, sĂ bhalaidh am buidheann fiosrachadh mu ghnothaichean dearbhte agus dearbhte (cha tèid fiosrachadh a chall) ma thèid dĂ ionad dĂ ta a sgrios (mura tèid an sgrios aig an aon Ă m).
Cho-dhĂšin mi gun a bhith aâ toirt a-steach tuairisgeul mionaideach air structar an fhaidhle agus cleachdadh. Faodaidh duine sam bith a tha airson cluich mun cuairt a leughadh gu lèir anns an README. Chan eil mi aâ toirt seachad ach tuairisgeul air deuchainn fèin-ghluasadach.
Siostam deuchainn fèin-ghluasadach
Gus fulangas sgà inidhean cruinneachaidhean a dhearbhadh le bhith ag atharrais air diofar sgà inidhean, chaidh siostam deuchainn fèin-ghluasadach a chruthachadh. Air a chuir air bhog le sgriobt test/failure. Faodaidh an sgriobt na h-à ireamhan de chlà ran a tha thu airson deuchainn a ghabhail mar pharaimearan. Mar eisimpleir an òrdugh seo:
test/failure 2 3cha dèan e deuchainn ach air an dĂ rna agus an treas buidheann. Mura h-eil crĂŹochan air an sònrachadh, thèid na cruinneachaidhean uile a dhearbhadh. Bithear aâ dèanamh deuchainn air a h-uile buidheann aig an aon Ă m, agus tha an toradh air a thaisbeanadh anns aâ phannal tmux. Bidh Tmux aâ cleachdadh frithealaiche tmux sònraichte, agus mar sin faodar an sgriobt a ruith bho tmux Ă bhaisteach, agus mar thoradh air sin bidh tmux neadachaidh ann. Tha mi aâ moladh an inneal-crĂŹochnachaidh a chleachdadh ann an uinneag mhòr agus le cruth-clò beag. Mus tòisich an deuchainn, thèid a h-uile inneal brĂŹgheil a thoirt air ais gu dealbh beag aig an Ă m a bhios an sgriobt deiseil setup.

Tha an inneal-crĂŹochnachaidh air a roinn ann an colbhan a rèir an Ă ireamh de chlĂ ran a thathar aâ dèanamh deuchainn; gu bunaiteach (san dealbh-sgrĂŹn) tha ceithir ann. Bheir mi cunntas air susbaint nan colbhan aâ cleachdadh eisimpleir Tuchanka2. Tha na pannalan san dealbh air an Ă ireamhachadh:
- Tha staitistig deuchainn air a thaisbeanadh an seo. Colbhan:
- fĂ illigeadh - ainm an deuchainn (gnĂŹomh san sgriobt) a tha ag aithris an locht.
- reaction - Ăšine chuibheasach Ă ireamhachd ann an diogan nuair a fhuair am buidheann a ghnĂŹomhachd air ais. Tha e air a thomhas bho thoiseach an sgriobt aâ dèanamh atharrais air sgĂ ineadh gus an Ă m nuair a bhios an cruinneachadh ag ath-nuadhachadh a ghnĂŹomhachd agus comasach air cumail aâ toirt seachad seirbheisean. Ma tha an Ăšine gu math goirid, mar eisimpleir, sia diogan (bidh seo aâ tachairt ann an cruinneachaidhean le grunn thrĂ illean (Tuchanka3 agus Tuchanka4)), tha seo aâ ciallachadh gun robh aâ choire air an trĂ ill asynchronous agus nach tug e buaidh air coileanadh ann an dòigh sam bith; cha robh. suidsichean stĂ ite brabhsair.
- gluasaid - aâ sealltainn sgaoileadh (cruinneas) an luach reaction aâ cleachdadh an dòigh claonadh Ă bhaisteach.
- a 'cunntadh - cia mheud uair a chaidh an deuchainn seo a dhèanamh.
- Leigidh log goirid dhut measadh a dhèanamh air na tha am buidheann aâ dèanamh an-drĂ sta. Tha an Ă ireamh ath-aithris (deuchainn), an clĂ r-ama agus ainm na h-obrach air an taisbeanadh. Tha ruith ro fhada (> 5 mionaidean) aâ nochdadh duilgheadas.
- chridhe (cridhe) - Ă m lĂ ithreach. Airson measadh lèirsinneach air coileanadh maighstirean Tha an Ăšine a thâ ann an-drĂ sta air a sgrĂŹobhadh chun bhòrd aige gu cunbhalach aâ cleachdadh am maighstir IP fleòdraidh. Ma shoirbhicheas leis, chithear an toradh sa phannal seo.
- chĂšis (pulse) - "Ă m lĂ ithreach", a chaidh a chlĂ radh roimhe leis an sgriobt chridhe a mhaighstir, leugh a nis o trĂ ill tron ââip float aige. Aâ leigeil leat measadh lèirsinneach a dhèanamh air coileanadh an trĂ ill agus ath-riochdachadh. Ann an Tuchanka1 chan eil trĂ illean ann le IP fleòdraidh (chan eil trĂ illean aâ toirt seachad seirbheisean), ach tha dĂ chĂšis ann (DBn), agus mar sin cha tèid a shealltainn an seo chĂšisagus chridhe dara h-aite.
- Aâ cumail sĂšil air slĂ inte brabhsair aâ cleachdadh aâ ghoireas
pcs mon. Aâ sealltainn structar, cuairteachadh ghoireasan thairis air nodan agus fiosrachadh feumail eile. - Tha sgrĂšdadh siostam bho gach inneal brĂŹgheil sa bhuidheann air a thaisbeanadh an seo. Is dòcha gum bi barrachd phannalan mar sin ann a rèir cia mheud inneal brĂŹgheil a tha aig aâ bhuidheann. DĂ ghraf Luchdaich a-nuas CPU (tha dĂ phròiseasar aig innealan brĂŹgheil), ainm inneal brĂŹgheil, Luchdaich Siostam (ainmichte Cuibheasachd luchdaidh oir tha e cuibheasach thairis air 5, 10 agus 15 mionaidean), dĂ ta pròiseas agus riarachadh cuimhne.
- Lorg an sgriobt a 'dèanamh deuchainn. Ma thachras mĂŹ-ghnĂ thachadh - briseadh gu h-obann air gnĂŹomhachd no cearcall feitheimh gun chrĂŹoch - an seo chĂŹ thu adhbhar a âghiĂšlain seo.
Tha an deuchainn air a dhèanamh ann an dĂ ĂŹre. An toiseach, bidh an sgriobt aâ dol tro gach seòrsa deuchainn, aâ taghadh inneal brĂŹgheil air thuaiream airson an deuchainn seo a chuir an sĂ s. An uairsin thèid cearcall deuchainn gun chrĂŹoch a dhèanamh, thèid na h-innealan brĂŹgheil agus an locht a thaghadh air thuaiream gach uair. CrĂŹoch gu h-obann air an sgriobt deuchainn (pannal aig a âbhonn) no lĂšb gun chrĂŹoch de bhith aâ feitheamh ri rudeigin (> Ăšine cur gu bĂ s 5 mionaidean airson aon ghnĂŹomhachd, chithear seo san lorg) a ânochdadh gu bheil cuid de na deuchainnean air aâ bhuidheann seo air fĂ iligeadh.
Tha gach deuchainn air a dhèanamh suas de na gnÏomhan a leanas:
- Cuir air bhog gnĂŹomh a bhios ag aithris locht.
- Ready? - aâ feitheamh ris aâ bhuidheann ath-nuadhachadh (nuair a bhios a h-uile seirbheis air a thoirt seachad).
- Aâ sealltainn an Ăšine-ama ath-bheothachaidh brabhsair (reaction).
- Fix - tha am buidheann âga chĂ radh.â Ăs deidh sin bu chòir dha tilleadh gu staid lĂ n-ghnĂŹomhach agus a bhith deiseil airson an ath dhuilgheadas.
Seo liosta de dheuchainnean le tuairisgeul air na bhios iad aâ dèanamh:
- ForcBomb: Aâ cruthachadh âA-mach Ă cuimhneâ aâ cleachdadh boma forc.
- OutOfspace: Tha an dreach cruaidh lĂ n. Ach tha an deuchainn caran samhlachail; leis an eallach beag a thèid a chruthachadh aig Ă m deuchainn, mar as trice cha bhith PostgreSQL aâ fĂ iligeadh nuair a bhios an draibhear cruaidh lĂ n.
- Postgres-KILL: a 'marbhadh PostgreSQL leis an Ă ithne
killall -KILL postgres. - Postgres-STOP: a 'crochadh òrdugh PostgreSQL
killall -STOP postgres. - cumhachd dheth: âde-energizesâ an inneal brĂŹgheil leis an Ă ithne
VBoxManage controlvm "виŃŃŃаНка" poweroff. - Ath-: a 'toirt thairis air an inneal mas-fhĂŹor leis an Ă ithne
VBoxManage controlvm "виŃŃŃаНка" reset. - SBD-STOP: a 'cur stad air an deamhan SBD leis an Ă ithne
killall -STOP sbd. - DĂšin sĂŹos: aâ cur Ă ithne chun inneal brĂŹgheil tro SSH
systemctl poweroff, tha an siostam a 'dĂšnadh sĂŹos gu grĂ smhor. - DĂŹ-cheangal: iomallachd lĂŹonra, Ă ithne
VBoxManage controlvm "виŃŃŃаНка" setlinkstate1 off.
Aâ crĂŹochnachadh deuchainn an dĂ rna cuid aâ cleachdadh an Ă ithne Ă bhaisteach tmux âkill-windowâ Ctrl-b &, no an Ă ithne "detach-client". Ctrl-b d: aig an ĂŹre seo thig an deuchainn gu crĂŹch, bidh tmux aâ dĂšnadh, tha innealan brĂŹgheil air an tionndadh dheth.
Duilgheadasan air an comharrachadh aig Ă m deuchainn
Aig an Ă m seo deamhan faire sbd ag obair air stad a chur air deamhan a chaidh fhaicinn, ach gun a bhith gan reothadh. Agus, mar thoradh air sin, sgĂ inidhean a tha a 'leantainn gu reothadh a-mhĂ in Corosync и pacemaker, ach gun a bhith crochte sbd. Airson seic Corosync mu thrĂ th , gabhail ris an t-snĂ thaid mhaighstir. Gheall iad (ann am PR#83) gum biodh rudeigin coltach ris ann airson Pacemaker, tha mi an dòchas gum biodh Hat Dearg 8 nĂŹ. Ach tha âmĂŹ-obrachaidheanâ mar sin tuairmeasach agus faodar an atharrais gu furasta le bhith aâ cleachdadh, mar eisimpleir,
killall -STOP corosync, ach na coinnich gu brĂ th ann am fĂŹor bheatha.ĐŁ pacemaker anns an tionndadh airson CentOS 7 air a shuidheachadh gu ceĂ rr sync_timeout Ń inneal cuòram, Mar thoradh , dh' ionnsuidh an robh còir aig a' mhaighstir gluasad. Air a leigheas le meudachadh sync_timeout Ń inneal cuòram rè cleachdadh (ann an sgriobt
setup/setup1). Cha do ghabh an luchd-leasachaidh ris an atharrachadh seo pacemaker, an Ă ite sin gheall iad am bun-structar ath-dhealbhadh ann an dòigh (aig Ă m ri teachd neo-ainmichte) gun deidheadh ââââan Ăšine-ama seo a thomhas gu fèin-ghluasadach.Ma shònraicheas rèiteachadh an stòr-dĂ ta sin
LC_MESSAGES(teachdaireachdan teacsa) Faodar Unicode a chleachdadh, m.e.ru_RU.UTF-8, an uairsin aig toiseach tòiseachaidh sgaoileadh ann an Ă rainneachd far nach eil an locale UTF-8, can ann an Ă rainneachd falamh (an seo ceumadair+pgsqlms(paf) ruith sgaoileadh) an uairsin . Chan eil luchd-leasachaidh PostgreSQL air aontachadh dè a nĂŹ iad sa chĂšis seo. Tha e a 'cosg, feumaidh tu a stĂ ladhLC_MESSAGES=en_US.UTF-8nuair a bhios tu aâ rèiteachadh (cruthachadh) eisimpleir stòr-dĂ ta.Ma tha wal_receiver_timeout air a shuidheachadh (mar as trice is e 60s a thâ ann), an uairsin rè deuchainn PostgreSQL-STOP air a âmhaighstir anns na cruinneachaidhean tuchanka3 agus tuchanka4 . Tha mac-samhail ann sioncronaich, agus mar sin chan e a-mhĂ in gu bheil an trĂ ill aâ stad, ach cuideachd am maighstir Ăšr. Ag obair timcheall le bhith aâ suidheachadh wal_receiver_timeout=0 nuair a thathar aâ rèiteachadh PostgreSQL.
Bho Ă m gu Ă m chunnaic mi ath-riochdachadh aâ reothadh ann am PostgreSQL anns an deuchainn ForkBomb (thar-shruth cuimhne). . Cha do thachair mi ach ri seo anns na cruinneachaidhean tuchanka3 agus tuchanka4, far an do reothadh am maighstir air sgĂ th mac-samhail sioncronaich. Dh'fhalbh an duilgheadas leis fhèin an dèidh Ăšine mhòr (mu dhĂ uair a thĂŹde). Tha feum air tuilleadh rannsachaidh gus seo a cheartachadh. Tha na comharraidhean coltach ris a 'bhiast roimhe, a tha air adhbhrachadh le adhbhar eadar-dhealaichte, ach leis na h-aon bhuilean.
Dealbh Krogan air a thoirt bho le cead an Ăšghdair:

Source: www.habr.com
