Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Whakataki

I etahi wa i mua i tukuna mai ki ahau te mahi ki te whakawhanake i te tautau failover mo PostgreSQL, e mahi ana i roto i te maha o nga pokapū raraunga e honoa ana e te muka whatu i roto i te taone kotahi, me te kaha ki te tu atu i te kore (hei tauira, pango) o tetahi pokapū raraunga. I te mea ko te raupaparorohiko te kawenga mo te aukati i te he, i whiriwhiria e au pacemakerna te mea koinei te otinga mana mai i RedHat mo te hanga i nga tautau failover. He pai na te mea kei te tautokohia e RedHat, na te mea ko tenei otinga he ao (modular). Ma tana awhina, ka taea ki te whakarite he kore noa mo PostgreSQL, engari mo etahi atu ratonga, ma te whakamahi i nga waahanga paerewa, te hanga ranei mo nga hiahia motuhake.

I whakaarahia e tenei whakatau he patai whaitake: ka pehea te he o te kahui karekau? Hei whakatewhatewha i tenei, i whakawhanakehia e ahau he papa whakamatautau e whakataurite ana i nga momo rahunga i runga i nga kohinga kohinga, e tatari ana kia whakahokia mai te ratonga, te whakaora i te pona kua rahua, ka haere tonu te whakamatautau i roto i te kohanga. I tapaina tenei kaupapa i te tuatahi ko hapgsql, engari i te roanga o te wa ka hoha ahau ki te ingoa, kotahi noa te oropuare. Na reira, ka tiimata ahau ki te karanga i nga papaaarangi kaaa-hara (me te IP rewa e tohu ana ki a raatau) krogana (he kiripuaki mai i te keemu rorohiko e taarua ana nga whekau nui katoa), me nga pona, nga tautau me te kaupapa ake tuchanka (te aorangi e noho ana nga krogans).

Inaianei kua whakaaetia e te whakahaere whakatuwheratia te kaupapa ki te hapori puna tuwhera i raro i te raihana MIT. Ka tere te whakamaoritanga o te README ki te reo Ingarihi (no te mea ko nga kaihoko matua ko Pacemaker me PostgreSQL kaiwhakawhanake), a ka whakatau ahau ki te whakaatu i te putanga tawhito o Rūhia o README (he waahanga) i roto i te ahua o tenei tuhinga.

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Ka horahia nga roopu ki nga miihini mariko VirtualBox. He 12 nga miihini mariko (36GiB te tapeke) ka tukuna, ka hanga e 4 nga tautau hee (he rereke nga whiringa). Ko nga huinga tuatahi e rua e rua nga tuumau PostgreSQL, kei roto i nga pokapu raraunga rereke, me tetahi tūmau noa. kaiwhakaatu c pūrere kōrum (i whakahaerehia i runga i te miihini mariko iti i roto i te tuatoru o nga pokapū raraunga), e whakatau ana i te koretake 50% / 50%, tuku i to pooti ki tetahi o nga roopu. Ko te roopu tuatoru i roto i nga pokapū raraunga e toru: kotahi te rangatira, e rua nga pononga, kaore pūrere kōrum. Ko te huinga tuawha e wha nga poupou PostgreSQL, e rua mo ia pokapū raraunga: kotahi te rangatira, te toenga tauira, me te whakamahi ano kaiwhakaatu c pūrere kōrum. Ka taea e te tuawha te tu ki te kore o nga kaitoro e rua, tetahi pokapū raraunga ranei. Ko tenei otinga ka taea te whakaheke ki te maha atu o nga tauira mena e tika ana.

Ratonga wa tika ntpd i whirihora ano hoki mo te he, engari ka whakamahia e ia te tikanga ake ntpd (aratau pani). Tūmau tiritahi kaiwhakaatu ka mahi hei tūmau NTP pokapū, ka tohatoha i tona wa ki nga tautau katoa, na reira ka tukutahi i nga kaitoro katoa ki a raatau ano. Mehemea kaiwhakaatu ka rahua, ka noho mokemoke ranei, katahi ka timata tetahi o nga kaiwhakarato tautau (i roto i te tautau) ki te tohatoha i tona wa. Keteroki awhina Takawaenga HTTP whakaarahia hoki ki kaiwhakaatu, me tana awhina, ka whai waahi etahi atu miihini mariko ki nga whare putunga Yum. Ko te mea pono, ko nga ratonga penei i te wa tika me nga takawaenga ka whakahaerehia i runga i nga kaitoro whakatapua, engari i roto i te tihokahoka kei te whakahaerehia. kaiwhakaatu hei tiaki noa i te maha o nga miihini mariko me te waahi.

Tuhinga

v0. Ka mahi tahi me CentOS 7 me PostgreSQL 11 i runga i te VirtualBox 6.1.

Hanganga huinga

Kua hoahoatia nga tautau katoa kia noho ki roto i nga pokapu raraunga maha, ka honoa ki te kupenga papatahi me te aukati i te kore, te wehenga whatunga ranei o te pokapū raraunga kotahi. Koia te take kaore e taea whakamahia mo te whakamarumaru wehe-roro hangarau Pacemaker paerewa e kiia ana KOTONITI (Shoot The Other Node In The Head) ranei taiapa. Ko tona tino: mena ka timata nga pona o te tautau ki te whakapae kei te he tetahi mea ki etahi node, kaore i te whakautu, kei te he ranei te mahi, katahi ka peia e ratou ma nga taputapu "waho", hei tauira, he kaari whakahaere IPMI, UPS ranei. . Engari ka mahi noa tenei i roto i nga keehi, mena he koretake, kei te mahi tonu te IPMI, UPS ranei. I konei ka whakamahere matou ki te whakamarumaru mai i te raru nui atu, ina rahua te pokapū raraunga katoa (hei tauira, ka ngaro te mana). Na me te kore e whakaae, nga mea katoa stonith-Ko nga taputapu (IPMI, UPS, me etahi atu) ka kore e mahi.

Engari, ko te punaha kei runga i te whakaaro o te koorum. He reo to nga pona katoa, a ko te hunga ka kite neke atu i te haurua o nga pona katoa ka mahi. Ka kiia tenei rahinga o “hawhe + 1”. kōrama. Ki te kore e eke ki te koorum, ka whakatauhia e te node kei roto i te wehenga whatunga me whakawetohia ona rawa, i.e. koinei te mea tiaki wehe-roro. Mena ka kore e mahi te punaha whakahaere mo tenei whanonga, katahi ka mahi tetahi kaitutei, hei tauira, i runga i te IPMI.

Mēnā he taurite te maha o ngā kōpuku (he kāhui i roto i ngā pokapū raraunga e rua), ka ara ake pea te mea e kiia ana he koretake. 50% / 50% (rima tekau ma rima tekau) ina wehea te wehenga whatunga kia rite ki te haurua. Na reira, mo te maha o nga pona, ka taapirihia e matou pūrere kōrum he daemon kore tono ka taea te whakarewahia i runga i te miihini mariko iti rawa i roto i te tuatoru o nga pokapū raraunga. Ka hoatu e ia tana pooti ki tetahi o nga wahanga (e kite ana ia), na reira ka whakatau i te 50%/50% koretake. I whakaingoatia e ahau te tūmau ka whakarewahia te taputapu kōrum kaiwhakaatu (nga kupu mai i te repmgr, i pai ahau).

Ka taea te neke atu i nga rauemi mai i nga waahi ki tera waahi, hei tauira, mai i nga tūmau hapa ki nga mea hauora, ma te whakahau ranei a nga kaiwhakahaere punaha. Kia mohio nga kiritaki kei hea nga rauemi e hiahiatia ana e ratou (kei hea te hono?), mānu IP (rere IP). He IP enei ka taea e Pacemaker te neke huri noa i nga pona (kei runga i te whatunga papatahi nga mea katoa). Ka tohu ia o ratou he rauemi (ratonga) ka tu ki te wahi e hiahia ana koe ki te hono kia uru atu koe ki tenei ratonga (i roto i ta maatau take, he putunga raraunga).

Tuchanka1 (whakawhitiwhiti me te whakatiki)

hanganga

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Ko te whakaaro he maha nga papaaarangi iti me te iti o te utaina, kaore he pai ki te pupuri i tetahi tuumau pononga i whakatapua i roto i te aratau tatari wera mo nga whakawhitinga korero anake (kaore he take mo te ururua o nga rauemi).

Kotahi te tūmau o ia pokapū raraunga. E rua nga waahanga PostgreSQL o ia tūmau (i roto i nga kupu a PostgreSQL ka kiia ko nga tautau, engari kia kore e rangirua ka kiia e ahau he tauira (ma te whakataurite me etahi atu papaa raraunga), ka karangahia e ahau nga tautau Pacemaker anake). Ko tetahi tauira e mahi ana i roto i te aratau rangatira, a ka whakarato ratonga anake (ko te IP rewa anake ka arahi ki reira). Ko te tauira tuarua ka mahi hei taurekareka mo te pokapū raraunga tuarua, ka whakarato ratonga mena ka rahua tana rangatira. I te mea ko te nuinga o nga wa kotahi anake i roto i te rua (te rangatira) ka whakarato ratonga (whakahaere i nga tono), ka arotauhia nga rauemi tūmau katoa mo te rangatira (kua tohaina te mahara mo te keteroki shared_buffers, me etahi atu), engari na te mea tuarua. he rawaka hoki nga rauemi (ahakoa mo te mahi suboptimal i roto i te keteroki punaha konae) mena ka ngaro tetahi o nga pokapū raraunga. Kaore te pononga e whakarato ratonga (kaore e mahi i nga tono panui anake) i te wa e mahi noa ana te kohinga, kia kore ai he pakanga mo nga rauemi me te rangatira i runga i te miihini kotahi.

I te take o nga pona e rua, ka taea anake te whakararu i te he ki te tukurua tukutahi, na te mea me te tukurua tukutahi, ko te kore o te pononga ka mutu te rangatira.

Kore ki te whakaatu

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Kore ki te whakaatu (pūrere kōrum) Ka whakaaro ahau mo te roopu Tuchanka1 anake, me era atu katoa ka rite tonu te korero. Mena ka rahua te kaitaunaki, kaore he mea e rerekee i roto i te hanganga tautau, ka haere tonu nga mea katoa ki te mahi pera ano. Engari ka noho te koorama ki te 2 i roto i te 3, no reira ka mate te kaporetanga o muri mai. Me tere tonu te whakatika.

Tuchanka1 whakahē

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

He rahua tetahi o nga pokapū raraunga mo Tuchanka1. I tenei take kaiwhakaatu ka tukuna tana pooti ki tetahi pona tuarua i roto i te pokapū raraunga tuarua. I reira, ka huri te taurekareka o mua ki te rangatira, na reira, ka mahi nga rangatira e rua i runga i te tūmau kotahi, ka tohu atu o raua IP rererangi ki a raua.

Tuchanka2 (matarohia)

hanganga

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Kaupapa matarohia o nga pona e rua. Ka mahi te rangatira ki tetahi, ko te pononga ki te tuarua. Ka taea e raua te mahi tono (he panui anake te taurekareka), no reira ka tohuhia nga mea e rua ma te IP rererangi: ko krogan2 te rangatira, ko krogan2s1 te taurekareka. Ko te rangatira me te pononga ka mau ki nga he.

I roto i te take o nga pona e rua, ka taea anake te whakararu i te he ki te tukurua tukutahi, na te mea ma te tukurua tukutahi, ko te korenga o te pononga ka mutu te rangatira.

Tuchanka2 whakahē

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Mena ka rahua tetahi o nga pokapū raraunga kaiwhakaatu pooti mo te tuarua. I runga i te pokapū raraunga mahi anake, ka whakaarahia te rangatira, ka tohu nga IP e rua ki a ia: te rangatira me te pononga. Ko te tikanga, me whirihorahia te tauira kia nui ai nga rauemi (nga rohe hono, me etahi atu) hei whakaae i nga hononga katoa me nga tono mai i te rangatira me te pononga maanu IP. Arā, i te wa e mahi noa ana, me whai rawaka nga rohe.

Tuchanka4 (he maha nga taurekareka)

hanganga

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Kua tetahi atu tino. He pātengi raraunga e whiwhi ana i te maha o nga tono panui-anake (he ahua angamaheni o te pae uta nui). Ko Tuchanka4 tetahi ahuatanga e toru, neke atu ranei nga pononga hei whakahaere i aua tono, engari kaore i te maha rawa. Na te nui rawa o nga taurekareka, ka tika te hanga i tetahi punaha tukurua aroākapa. I roto i te take iti rawa (kei te pikitia), e rua nga tūmau o ia pokapū raraunga, he tauira PostgreSQL ia ia.

Ko tetahi atu ahuatanga o tenei kaupapa ka taea te whakarite i tetahi tukurua tukutahi. Kua whirihorahia ki te tukurua, ki te taea, ki tetahi atu pokapū raraunga, kaua ki te tauira i roto i te pokapū raraunga rite tonu ki te rangatira. Ko te rangatira me ia pononga e tohuhia ana e te IP rererangi. Waimarie, i waenga i nga pononga ka tika kia taurite nga tono sql takawaenga, hei tauira, i te taha o te kiritaki. Ko nga momo kaihoko rereke ka hiahia pea nga momo rereke sql takawaenga, a ko nga kaihanga kaihoko anake e mohio ana ko wai e hiahia ana. Ka taea te whakatinana i tenei mahi ma te daemon o waho, ma te whare pukapuka kiritaki ranei (puna hono), aha atu. Ko enei mea katoa kei tua atu i te kaupapa o te kahui raraunga failover (failover takawaenga SQL Ka taea te whakatinana takitahi, me te whakaae ki nga hapa o te kiritaki).

Tuchanka4 whakahē

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Ki te rahua tetahi pokapū raraunga (arā, e rua nga tūmau), ka pooti te kaiwhakaatu mo te tuarua. Ko te hua o tenei, e rua nga kaitoro e rere ana i te rua o nga pokapū raraunga: ko tetahi kei te whakahaere i te rangatira, ka tohu te IP matua ki a ia (mo te whiwhi tono panui-tuhi); kei runga i te tūmau tuarua he taurekareka e rere ana me te tukurua tukutahi, ka tohu tetahi o nga taurekareka IPs ki a ia (mo nga tono panui-anake).

Ko te mea tuatahi kia mahara ko te mea kaore nga IP taurekareka katoa hei kaimahi, engari kotahi anake. A ki te mahi tika ki a ia ka tika sql takawaenga i tukuna nga tono katoa ki te IP maanu anake e toe ana; a mehemea sql takawaenga kāo, ka taea e koe te whakarārangi i ngā taurekareka IP mānu katoa kua wehea e ngā piko i te hononga URL. I roto i tenei take, me libpq ko te hononga ki te IP mahi tuatahi, ka mahia tenei i roto i te punaha whakamatautau aunoa. Akene i etahi atu whare pukapuka, hei tauira, JDBC, kaore tenei e mahi me te tika sql takawaenga. Ka mahia tenei na te mea ka rahuitia nga IP rewa mo nga taurekareka kia kore e whakaarahia i te wa kotahi ki runga i te tūmau kotahi, kia rite ai te tohatoha ki waenga i nga tūmau taurekareka mena he maha o ratou e rere ana.

Tuarua: ahakoa he rahunga te pokapū raraunga, ka mau tonu te tukutahi. A, ahakoa ka puta he rahunga tuarua, ara, ka rahua tetahi o nga kaitoro e rua i roto i te toenga o te pokapū raraunga, ko te tautau, ahakoa ka mutu te tuku ratonga, ka mau tonu nga korero mo nga tauwhitinga kua oti te whakarite mo te whakamanatanga. (karekau he korero ngaro i te mea ka rahua tuarua).

Tuchanka3 (3 pokapū raraunga)

hanganga

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

He kohinga tenei mo tetahi ahuatanga e toru nga pokapū raraunga e mahi katoa ana, kei ia o ratou he tūmau pātengi raraunga e mahi katoa ana. I tenei take pūrere kōrum kaore e hiahiatia. Ko tetahi pokapū raraunga he rangatira, ko etahi atu e rua he kaimahi. He tukutahi te tukuruatanga, momo ANY (slave1, slave2), ara, ka whiwhi te kaihoko i te whakapumautanga i te mea ko tetahi o nga taurekareka te whakautu tuatahi kua whakaae ia ki te tuku. Ko nga rauemi e tohuhia ana e tetahi IP rewa mo te rangatira me te rua mo nga taurekareka. Kaore i rite ki a Tuchanka4, ko nga IP rererangi e toru he he-whakaaro. Hei taurite i nga patai SQL panui-anake ka taea e koe te whakamahi sql takawaenga (me te noho motuhake ki te he), me toha ranei tetahi pononga maanu IP ki te haurua o nga kaihoko, me te haurua ki te tuarua.

Tuchanka3 whakahē

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Mena ka rahua tetahi o nga pokapū raraunga, ka noho tonu kia rua. I roto i tetahi, ka whakaarahia te rangatira me te IP rewa mai i te rangatira, i te tuarua - te taurekareka me te taurekareka e rua nga IP rewa (me rua nga rahui rauemi mo te tauira kia whakaaehia nga hononga katoa mai i nga IP rewa e rua). Tukutahi tukutahi i waenga i nga rangatira me nga taurekareka. Ano, ka tiakina e te roopu nga korero mo nga whakawhitinga kua oti te whakarite me te whakapumau (kaore e ngaro nga korero) mena ka pakaru nga pokapu raraunga e rua (mehemea kaore e ngaro i te wa kotahi).

I whakatau ahau kia kaua e whakauruhia he whakaahuatanga mo te hanganga o te konae me te whakatakotoranga. Ko nga tangata e pirangi ana ki te takaro ka taea te panui katoa i roto i te README. Kei te whakarato noa ahau i te whakamaarama mo te whakamatautau aunoa.

Pūnaha whakamātautau aunoa

Hei whakamatautau i te he o nga tautau ma te whakatauira i nga momo he, kua hangaia he punaha whakamatautau aunoa. I whakarewahia e te tuhinga test/failure. Ka taea e te tuhinga te tango hei tawhā i te maha o nga tautau e hiahia ana koe ki te whakamatautau. Hei tauira tenei whakahau:

test/failure 2 3

ka whakamatau noa i te huinga tuarua me te tuatoru. Mena karekau nga tawhā i tohua, ka whakamatauria nga tautau katoa. Ko nga tautau katoa ka whakamatauria ki te whakarara, ka whakaatuhia te hua ki te papa tmux. Ka whakamahia e Tmux tetahi tūmau tmux i whakatapua, na reira ka taea te whakahaere i te tuhinga mai i raro i te tmux taunoa, ka puta he tmux kohanga. Ka tūtohu ahau ki te whakamahi i te tauranga i roto i te matapihi nui me te momotuhi iti. I mua i te tiimata o te whakamatautau, ka hurihia nga miihini mariko katoa ki tetahi whakaahua i te wa e oti ai te tuhinga setup.

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Ka wehea te tauranga ki nga pou i runga i te maha o nga tautau e whakamatautauria ana; ma te taunoa (i te whakaahua) e wha. Ka whakaahua ahau i nga korero o nga pou ma te whakamahi i te tauira o Tuchanka2. Ko nga panui kei roto i te Whakaahuamata he nama:

  1. Ka whakaatuhia nga tatauranga whakamatautau ki konei. Tīwae:
    • kore — te ingoa o te whakamatautau (mahi i roto i te tuhinga) e whai ana i te he.
    • tauhohenga — tairitenga wa toharite i roto i nga hēkona i te wa i ora ake ai te mahi a te tautau. Ka inehia mai i te tiimatanga o te tuhinga e whai ana i te he tae noa ki te wa ka whakahokia mai e te tautau tana mahi ka taea tonu te whakarato ratonga. Mena he poto rawa te wa, hei tauira, e ono hēkona (ka tupu tenei i roto i nga tautau me nga taurekareka maha (Tuchanka3 me Tuchanka4)), ko te tikanga ko te he i runga i te pononga tukutahi, a, kaore i pa ki te mahi i tetahi huarahi; kaore he whakakā āhua kāhui.
    • wehe — whakaatu i te horahanga (tika) o te uara tauhohenga te whakamahi i te tikanga inenga paerewa.
    • tatau — e hia nga wa i mahia ai tenei whakamatautau.
  2. Ma te raarangi poto ka taea e koe te arotake i nga mahi a te roopu i tenei wa. Ka whakaatuhia te tau whitiwhiti (whakamatautau), tohu wa me te ingoa o te mahi. Ko te oma roa (> 5 meneti) ka tohu he raru.
  3. ngakau (ngakau) - te wa o naianei. Mo te aromatawai ataata o te mahi rangatira Ko te wa o naianei ka tuhia ki tana teepu ma te whakamahi i te rangatira IP rererangi. Ki te angitu, ka whakaatuhia te hua ki tenei panui.
  4. whiua (pulse) - "wa o naianei", i tuhia i mua e te tuhinga ngakau ki te rangatira, panui mai inaianei taurekareka mā tana IP mānu. Ka taea e koe te aromatawai kanohi i te mahi o te taurekareka me te tukurua. I Tuchanka1 kaore he taurekareka me te IP rererangi (kaore he pononga e whakarato ana i nga ratonga), engari e rua nga waahanga (DB), na reira kaore e whakaatuhia ki konei. whiuaa ngakau tauira tuarua.
  5. Te aro turuki i te hauora tautau ma te whakamahi i te whaipainga pcs mon. Ka whakaatu i te hanganga, te tohatoha rauemi puta noa i nga pona me etahi atu korero whai hua.
  6. Ko te aro turuki i nga punaha mai i ia miihini mariko kei roto i te kohinga ka whakaatuhia ki konei. He maha atu pea nga panui penei i runga i te maha o nga miihini mariko kei te tautau. E rua nga kauwhata Uta CPU (e rua nga tukatuka o nga miihini mariko), ingoa miihini mariko, Utaina Punaha (i whakaingoatia te Uta Wawaenga na te mea ka neke ake i te 5, 10 me te 15 meneti), tukatuka raraunga me te tohatoha mahara.
  7. He tohu o te tuhinga e mahi ana i nga whakamatautau. Mena he kino te mahi - he aukati ohorere o te mahi, he huringa tatari mutunga ranei - i konei ka kite koe i te take o tenei whanonga.

Ka whakahaerehia nga whakamatautau i nga waahanga e rua. Tuatahi, ka haere te tuhinga ki nga momo whakamatautau katoa, ka kowhiri matapōkeretia he miihini mariko hei whakamahi i tenei whakamatautau. Na ka mahia he huringa mutunga kore o te whakamatautau, ko nga miihini mariko me te he ka tohua matapōkeretia ia wa. Ko te whakamutua ohorere o te tuhinga whakamatautau (te pae o raro) he kopikopiko mutunga kore ranei mo te tatari mo tetahi mea (> 5 meneti te wa mahi mo te mahi kotahi, ka kitea tenei i te tohu) e tohu ana kua rahua etahi o nga whakamatautau i runga i tenei tautau.

Kei ia whakamatautau nga mahi e whai ake nei:

  1. Whakarewahia he mahi e whai ana i te he.
  2. Rite? — e tatari ana kia whakahokia mai te tautau (ka tukuna nga ratonga katoa).
  3. He whakaatu i te waahi whakaora tautau (tauhohenga).
  4. Whakatika — kei te "whakatika" te tautau. I muri i tera me hoki ki te ahua tino mahi me te rite mo te mahi kino e whai ake nei.

Anei te rarangi o nga whakamatautau me te whakamaarama mo o raatau mahi:

  • ForkBomb: Ka waihanga "Kei te maumahara" ma te whakamahi i te poma marau.
  • Mokowāwaho: Kua kī te puku mārō. Engari he tohu tohu te whakamatautau; me te taumaha iti i hangaia i te wa o te whakamatautau, ko te nuinga o te waa kaore a PostgreSQL e rahua ina kiki te puku.
  • Postgres-KILL: ka patua te PostgreSQL me te whakahau killall -KILL postgres.
  • Postgres-STOP: whakairihia te whakahau PostgreSQL killall -STOP postgres.
  • MahingaHiko: "de-kaha" te miihini mariko me te whakahau VBoxManage controlvm "виртуалка" poweroff.
  • Tautuhi anō: ka utaina te miihini mariko me te whakahau VBoxManage controlvm "виртуалка" reset.
  • SBD-KATA: ka whakatarewa i te rewera SBD me te whakahau killall -STOP sbd.
  • Whakaweto: ka tukuna he whakahau ki te miihini mariko ma te SSH systemctl poweroff, ka tutakina te punaha ma te ataahua.
  • Wete Hononga: wehe whatunga, whakahau VBoxManage controlvm "виртуалка" setlinkstate1 off.

Te whakaoti i nga whakamatautau ma te whakamahi i te whakahau tmux paerewa "matapihi-mate" Mana-b &, te whakahau "wehe-kiritaki" ranei Mana-b d: i tenei wa ka mutu te whakamatautau, ka kati te tmux, ka weto nga miihini mariko.

Ko nga raruraru i kitea i te wa e whakamatautau ana

  • I tenei wa kaitiaki rewera sbd ka mahi ki te aukati i nga daemon kua kitea, engari kaua e whakatio. Na, ko te mutunga, ko nga hapa e arai ana ki te mīti anake Corosync и pacemaker, engari kaore i te iri sbd. Mo te taki CorosyncPR #83 (i te GitHub i sbd), whakaaetia ki te miro ariki. I oati ratou (i roto i te PR #83) tera ano tetahi mea mo Pacemaker, e tumanako ana ahau WheroHat 8 ka mahi. Engari ko enei "mahi kino" he pohehe, ka taea te whakataurite ma te whakamahi, hei tauira, killall -STOP corosync, engari e kore e tutaki i roto i te ora tūturu.

  • У pacemaker i te putanga mo CentOS 7 i hē te whakatakoto sync_timeout у pūrere kōrum, hei hua ki te rahua tetahi node, me te mea pea ka whakaara ano te pona tuarua, e tika ana kia nekehia e te rangatira. Whakaorangia e te whakanui sync_timeout у pūrere kōrum i te wa tuku (i roto i te tuhinga setup/setup1). Ko tenei whakatikatika kaore i whakaaetia e nga kaihanga pacemaker, engari i oati ratou ki te hoahoa ano i nga hanganga i runga i tetahi huarahi (i etahi wa kare i whakaingoatia) ka tatau aunoatia tenei waahi.

  • Mena ka tohua e te whirihoranga raraunga LC_MESSAGES (karere kuputuhi) Ka taea te whakamahi Waehereao, hei tauira. ru_RU.UTF-8, katahi ka timata Tuhinga i roto i te waahi kaore he UTF-8 te waahi, me kii i roto i te waahi kore (i konei tangihanga+pgsqlms(paf) rere Tuhinga) ka kei roto i te rangitaki he tohu patai hei utu mo nga reta UTF-8. Ko nga kaiwhakawhanake PostgreSQL kaore i whakaae ki nga mahi mo tenei keehi. He utu, me whakauru koe LC_MESSAGES=en_US.UTF-8 i te wa e whirihora ana (te hanga) i tetahi tauira putunga raraunga.

  • Mena kua tautuhia te wal_receiver_timeout (ma te taunoa he 60s), na i te wa o te whakamatautau PostgreSQL-STOP ki te rangatira i roto i nga tautau tuchanka3 me tuchanka4 e kore e hono ano te tukurua ki te rangatira hou. He tukutahi ano te tukurua, no reira ka mutu te taurekareka, engari ko te rangatira hou. Ka mahi ma te tautuhi wal_receiver_timeout=0 i te wa e whirihora ana i te PostgreSQL.

  • I etahi wa ka kite ahau i te tukuruatanga i roto i te PostgreSQL i roto i te whakamatautau ForkBomb (pupuhi mahara). Whai muri i te ForkBomb, i etahi wa karekau pea nga pononga e hono atu ki te rangatira hou. I tupono noa ahau ki te tuchanka3 me te tuchanka4 tautau, i reira i tio ai te rangatira na te tukuruatanga tukutahi. I mutu te raruraru i muri i te wa roa (e rua haora). Me nui ake nga rangahau hei whakatika i tenei. He rite nga tohu ki te pepeke o mua, he rereke te take, engari he rite tonu nga hua.

Ko Krogan pikitia i tangohia mai i Art Deviant me te whakaaetanga o te kaituhi:

Te whakatauira i nga tautau failover i runga i te PostgreSQL me te Pacemaker

Source: will.com

Tāpiri i te kōrero