Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Selelekela

Nakong e fetileng ke ile ka fuoa mosebetsi oa ho hlahisa sehlopha sa failover bakeng sa PostgreSQL, e sebetsang litsing tse 'maloa tsa data tse amanang le fiber ea optical ka har'a motse o le mong,' me e khona ho mamella ho hlōleha (mohlala, ho tima) ha setsi se le seng sa data. Joaloka software e ikarabellang bakeng sa mamello ea liphoso, ke ile ka khetha sethusapelohobane ena ke tharollo ea molao e tsoang ho RedHat bakeng sa ho theha lihlopha tsa failover. E ntle hobane RedHat e fana ka ts'ehetso bakeng sa eona, le hobane tharollo ena ke ea bokahohle (modular). Ka thuso ea eona, ho tla khoneha ho netefatsa mamello ea liphoso eseng feela ea PostgreSQL, empa le ea litšebeletso tse ling, ebang ke ho sebelisa li-modules tse tloaelehileng kapa ho li bōpa bakeng sa litlhoko tse khethehileng.

Qeto ena e hlahisitse potso e utloahalang: na sehlopha sa failover se tla mamella joang? Ho etsa lipatlisiso ka sena, ke thehile benche ea liteko e etsisang mefokolo e fapaneng ho li-cluster node, e emetse hore ts'ebeletso e tsosolosoe, e khutlise node e hlōlehileng, 'me e tsoele pele ho etsa liteko ka loop. Morero ona qalong o ne o bitsoa hapgsql, empa ha nako e ntse e ea ke ile ka teneha ke lebitso leo, le neng le e-na le seluma-nosi se le seng feela. Ka hona, ke ile ka qala ho bitsa li-database tse mamellang liphoso (le IP ea float e li supa) krogan (setšoantšo se tsoang papaling ea komporo eo litho tsohle tsa bohlokoa li kopitsoang), le li-node, lihlopha le morero ka boona tuchanka (polanete eo li-krogan li phelang ho eona).

Joale botsamaisi bo lumelletse bula morero ho sechaba sa mohloli o bulehileng tlas'a laesense ea MIT. Haufinyane README e tla fetoleloa ka Senyesemane (hobane ho lebeletsoe hore bareki ba ka sehloohong e tla ba bahlahisi ba Pacemaker le PostgreSQL), 'me ke ile ka etsa qeto ea ho hlahisa phetolelo ea khale ea Serussia ea README (ka mokhoa o itseng) ka mokhoa oa sehlooho sena.

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Lihlopha li sebelisoa ka mechine ea sebele VirtualBox. Kakaretso ea mechine ea sebele ea 12 (36GiB ka kakaretso) e tla sebelisoa, e etsang lihlopha tse 4 tse mamellang liphoso (likhetho tse fapaneng). Lihlopha tse peli tsa pele li na le li-server tse peli tsa PostgreSQL, tse fumanehang litsing tse fapaneng tsa data, le seva se tloaelehileng. paka c sesebelisoa sa quorum (e tšoaroa ka mochine o theko e tlaase o fumanehang setsing sa boraro sa data), se rarollang ho hloka botsitso 50% / 50%, ho fana ka voutu ea hau ho o mong oa mekha. Sehlopha sa boraro litsing tse tharo tsa data: monghali a le mong, makhoba a mabeli, che sesebelisoa sa quorum. Sehlopha sa bone se na le li-server tse 'ne tsa PostgreSQL, tse peli ho setsi sa data: monghali a le mong, likopi tse ling hape li sebelisa. paka c sesebelisoa sa quorum. Ea bone e ka mamella ho hlōleha ha li-server tse peli kapa setsi se le seng sa data. Tharollo ena e ka fetisetsoa ho palo e kholoanyane ea likopi haeba ho hlokahala.

Tšebeletso ea nako e nepahetseng ntpd e boetse e lokiselitsoe ho mamella liphoso, empa e sebelisa mokhoa ka boeona ntpd (mokgoa wa dikhutsana). Seva e arolelanoang paka e sebetsa joalo ka seva e bohareng ea NTP, e abela nako ea eona ho lihlopha tsohle, ka hona e hokahanya li-server tsohle hammoho. Haeba paka e hloleha kapa e ikarola, ebe e 'ngoe ea li-server tsa sehlopha (ka har'a sehlopha) e tla qala ho aba nako ea eona. Caching e thusang Moemeli oa HTTP hape e phahamisitsoe ho paka, ka thuso ea eona, mechini e meng ea sebele e na le phihlello ea polokelo ea Yum. Ha e le hantle, litšebeletso tse kang nako e nepahetseng le li-proxies li ka 'na tsa tšoaroa ho li-server tse inehetseng, empa ka lephepheng li tšoaroa. paka feela ho boloka palo ea mechine le sebaka.

Liphetolelo

v0. E sebetsa le CentOS 7 le PostgreSQL 11 ho VirtualBox 6.1.

Sebopeho sa lihlopha

Lihlopha tsohle li etselitsoe hore li be teng litsing tse ngata tsa data, li kopantsoe le marang-rang a le mong 'me li tlameha ho mamella ho hlōleha kapa ho itšehla thajana ha setsi se le seng sa data. Ke ka lebaka lena ha ho khonehe tshebediso bakeng sa tshireletso kgahlanong le boko bo arohaneng thekenoloji e tloaelehileng ea Pacemaker e bitsoang LETS'OA (Thunya Node e 'Ngoe Hloohong) kapa ho thibella. Ntho ea bohlokoa ea eona: haeba li-node tse sehlopheng li qala ho belaela hore ho na le ho hong ho phoso ka node e itseng, ha e arabe kapa e itšoara ka tsela e fosahetseng, joale e e tima ka likhoka ka lisebelisoa tsa "ka ntle", mohlala, karete ea taolo ea IPMI kapa UPS. . Empa sena se tla sebetsa feela maemong ao, ha ho e-na le ho hlōleha ho le mong, seva sa IPMI kapa UPS se tsoela pele ho sebetsa. Mona re rera ho sireletsa khahlanong le ho hlōleha ho kotsi haholo, ha setsi sohle sa data se hlōleha (mohlala, se lahleheloa ke matla). 'Me ka ho hana ho joalo, ntho e' ngoe le e 'ngoe stonth-devices (IPMI, UPS, joalo-joalo) le tsona li ke ke tsa sebetsa.

Sebakeng seo, sistimi e ipapisitse le mohopolo oa quorum. Li-node tsohle li na le lentsoe, 'me ke feela tse khonang ho bona karolo e fetang halofo ea li-node tsohle tse ka sebetsang. Palo ena ea "half + 1" e bitsoa quorum. Haeba quorum e sa finyelloe, joale node e etsa qeto ea hore e ka thōko ho marang-rang 'me e tlameha ho tima mehloli ea eona, ke hore. ke seo eleng sona tshireletso ya boko bo arohaneng. Haeba software e ikarabellang bakeng sa boitšoaro bona e sa sebetse, joale molebeli, mohlala, o thehiloeng ho IPMI, o tla tlameha ho sebetsa.

Haeba palo ea li-node e lekana (sehlopha sa lits'ebeletso tse peli tsa data), ho ka hlaha seo ho thoeng ke ho hloka botsitso. 50% / 50% (mashome a mahlano a metso e mehlano) ha ho itšehla thajana ho arola sehlopha hantle ka halofo. Ka hona, bakeng sa palo e lekanang ea li-node, re eketsa sesebelisoa sa quorum ke daemon e sa hlokeng letho e ka hlahisoang mochining o theko e tlaase ka ho fetisisa setsing sa boraro sa data. O fana ka voutu ea hae ho e 'ngoe ea likarolo (tseo a li bonang),' me ka hona o rarolla ho se tsitse ha 50% / 50%. Ke rehile seva seo sesebelisoa sa quorum se tla hlahisoa ho sona paka (mareo a tsoang ho repmgr, ke a ratile).

Lisebelisoa li ka tsamaisoa ho tloha sebakeng se seng ho ea ho se seng, mohlala, ho tloha ho li-server tse fosahetseng ho ea ho tse phetseng hantle, kapa ka taelo ea batsamaisi ba tsamaiso. E le hore bareki ba tsebe moo lisebelisoa tseo ba li hlokang li leng teng (ho hokela kae?), IP e phaphametseng (phaphametse IP). Tsena ke li-IP tseo Pacemaker e ka li tsamaisang li-node (ntho e 'ngoe le e' ngoe e holim'a marang-rang a bataletseng). E 'ngoe le e' ngoe ea tsona e tšoantšetsa mohloli (ts'ebeletso) 'me e tla be e le moo u lokelang ho hokela teng e le hore u ka fumana tšebeletso ena (ho rona, database).

Tuchanka1 (potoloho e nang le compaction)

sebopeho sa

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Maikutlo e ne e le hore re na le li-database tse ngata tse nyenyane tse nang le mojaro o tlaase, oo ho oona ho se nang thuso ho boloka seva se inehetseng sa lekhoba ka mokhoa o chesang oa ho ema bakeng sa ho bala feela litšebelisano (ha ho hlokahale hore ho be le litšila tse joalo tsa lisebelisoa).

Setsi se seng le se seng sa data se na le seva se le seng. Seva e 'ngoe le e' ngoe e na le maemo a mabeli a PostgreSQL (ka mantsoe a PostgreSQL a bitsoa lihlopha, empa ho qoba pherekano ke tla li bitsa mehlala (ka papiso le li-database tse ling), 'me ke tla bitsa lihlopha tsa Pacemaker feela. Ketsahalo e le 'ngoe e sebetsa ka mokhoa oa master,' me ke eona feela e fanang ka lits'ebeletso (ke IP ea float feela e lebisang ho eona). Mohlala oa bobeli o sebetsa e le lekhoba la setsi sa bobeli sa data, 'me o tla fana ka litšebeletso feela haeba mong'a lona a hlōleha. Kaha boholo ba nako ke ketsahalo e le 'ngoe feela ho tse peli (monghali) o tla fana ka lits'ebeletso (etsa likopo), lisebelisoa tsohle tsa seva li ntlafalitsoe bakeng sa monghali (memori e abetsoe cache e arolelanoang, joalo-joalo), empa e le hore mohlala oa bobeli. e boetse e na le lisebelisoa tse lekaneng (leha ho le joalo bakeng sa ts'ebetso e tlase ka har'a cache ea sistimi ea faele) ha ho ka hloleha e 'ngoe ea litsi tsa data. Lekhoba ha le fane ka litšebeletso (ha le etse likōpo tsa ho bala feela) nakong ea ts'ebetso e tloaelehileng ea sehlopha, e le hore ho se ke ha e-ba le ntoa bakeng sa lisebelisoa le mong'a mochine o le mong.

Tabeng ea li-node tse peli, ho mamellana ha liphoso ho ka khoneha feela ka ho pheta-pheta ha asynchronous, kaha ka ho pheta-pheta ka mokhoa o lumellanang, ho hlōleha ha lekhoba ho tla lebisa ho emeng ha monghali.

Ho hloleha ho paka

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Ho hloleha ho paka (sesebelisoa sa quorum) Ke tla nahana feela bakeng sa sehlopha sa Tuchanka1, hammoho le tse ling kaofela e tla ba pale e tšoanang. Haeba paki e hlōleha, ha ho letho le tla fetoha mohahong oa lihlopha, ntho e 'ngoe le e' ngoe e tla tsoela pele ho sebetsa ka tsela e tšoanang le eo e entseng ka eona. Empa palo e tla fetoha 2 ho ba 3, ka hona, ho hloleha hofe kapa hofe ho tla ba kotsi bakeng sa sehlopha. E ntse e tla tlameha ho lokisoa ka potlako.

Tuchanka1 ho hana

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Ho hloleha ho e 'ngoe ea litsi tsa data bakeng sa Tuchanka1. Boemong bona paka e khetha sebaka sa bobeli sebakeng sa bobeli sa data. Ha e le moo, lekhoba la pele le fetoha monghali, ka lebaka leo, benghali ka bobeli ba sebetsa ho seva se le seng 'me bobeli ba bona ba IPs ba phaphametseng ba supa ho bona.

Tuchanka2 (ea khale)

sebopeho sa

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Moralo oa khale oa li-node tse peli. Monghali o sebetsa ho e mong, lekhoba ho oa bobeli. Ka bobeli li ka etsa likopo (lekhoba le baloa feela), kahoo bobeli ba bona ba suptjoa ke float IP: krogan2 ke monghali, krogan2s1 ke lekhoba. Monghali le lekhoba ba tla mamella liphoso.

Tabeng ea li-node tse peli, mamello ea phoso e ka khoneha feela ka ho pheta-pheta ha asynchronous, hobane ka ho pheta-pheta ka mokhoa o lumellanang, ho hlōleha ha lekhoba ho tla lebisa ho emeng ha monghali.

Tuchanka2 ho hana

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Haeba e 'ngoe ea litsi tsa data e hlōleha paka likhetho bakeng sa oa bobeli. Setsing se le seng sa data se sebetsang, monghali o tla phahamisoa, 'me li-IP tse peli tsa float li tla li supa: monghali le lekhoba. Ha e le hantle, mohlala o tlameha ho hlophisoa ka tsela eo e nang le lisebelisoa tse lekaneng (meeli ea khokahanyo, joalo-joalo) ho amohela ka nako e le 'ngoe likhokahano tsohle le likōpo tse tsoang ho master le makhoba a IP. Ke hore, nakong ea ts'ebetso e tloaelehileng e lokela ho ba le phepelo e lekaneng ea meeli.

Tuchanka4 (makhoba a mangata)

sebopeho sa

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

E se e le e 'ngoe e feteletseng. Ho na le li-database tse amohelang likopo tse ngata tsa ho bala feela (e leng boemo bo tloaelehileng ba sebaka se nang le thepa e ngata). Tuchanka4 ke boemo boo ho ka 'nang ha e-ba le makhoba a mararo kapa ho feta ho sebetsana le likōpo tse joalo, empa leha ho le joalo ha a ngata haholo. Ka palo e kholo ea makhoba, ho tla hlokahala ho qapa mokhoa oa ho pheta-pheta oa hierarchical. Boemong bo fokolang (se setšoantšong), e 'ngoe le e' ngoe ea litsi tse peli tsa data e na le li-server tse peli, e 'ngoe le e' ngoe e na le mohlala oa PostgreSQL.

Tšobotsi e 'ngoe ea morero ona ke hore ho se ho ntse ho khoneha ho hlophisa phetisetso e le' ngoe ea synchronous. E lokiselitsoe ho pheta-pheta, haeba ho khoneha, ho setsi se seng sa data, ho e-na le ho replica setsing se tšoanang sa data le monghali. Mong'a le lekhoba le leng le le leng ba suptjoa ke IP e phaphametseng. Ka lehlohonolo, pakeng tsa makhoba ho tla hlokahala ho leka-lekanya likōpo ka tsela e itseng sql proxy, mohlala, lehlakoreng la bareki. Mefuta e fapaneng ea bareki e ka hloka mefuta e fapaneng sql proxy, mme ke baetsi ba bareki feela ba tsebang hore na ke mang ea hlokang. Ts'ebetso ena e ka sebelisoa ka daemon ea kantle kapa laeborari ea bareki (letamo la khokahano), joalo-joalo. Sena sohle se feta sehlooho sa sehlopha sa database sa failover (failover SQL proxy e ka kengoa tšebetsong ka boikemelo, hammoho le mamello ea liphoso tsa bareki).

Tuchanka4 ho hana

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Haeba setsi se le seng sa data (ke hore, li-server tse peli) se hlōleha, lipaki li khetha bakeng sa bobeli. Ka lebaka leo, ho na le li-server tse peli tse sebetsang setsing sa bobeli sa data: e 'ngoe e tsamaisa master,' me master float IP e supa ho eona (bakeng sa ho amohela likopo tsa ho bala-ngola); 'me ho seva sa bobeli ho na le lekhoba le mathang ka ho pheta-pheta ka mokhoa o lumellanang,' me e 'ngoe ea li-IP tsa makhoba e supa ho eona (bakeng sa likopo tsa ho bala feela).

Ntho ea pele eo u lokelang ho e ela hloko ke hore ha se li-IP tsohle tsa makhoba tse tla ba basebetsi, empa e le 'ngoe feela. 'Me ho sebetsa le eona ka nepo ho tla hlokahala hore sql proxy e fetiselitse likopo tsohle ho IP e setseng feela ea float; le haeba sql proxy Che, joale o ka thathamisa makhoba ohle a phaphametseng a IP a arotsoeng ke lipheelo ho URL ea khokahano. Tabeng ena, ka libpq khokahanyo e tla ba ho IP ea pele e sebetsang, sena se etsoa ka mokhoa o itekanetseng oa ho hlahloba. Mohlomong lilaebraring tse ling, mohlala, JDBC, sena se ke ke sa sebetsa ebile sea hlokahala sql proxy. Sena se etsoa hobane li-IP tsa float bakeng sa makhoba li thibetsoe ho tsosoa ka nako e le 'ngoe ho seva se le seng, e le hore li arolelanoe ka ho lekana har'a li-server tsa makhoba haeba ho na le tse' maloa tsa tsona tse sebetsang.

Ea bobeli: esita le haeba ho na le ho hlōleha ha setsi sa data, ho pheta-pheta ka synchronous ho tla bolokoa. 'Me le haeba ho hloleha ha bobeli ho etsahala, ke hore, e' ngoe ea li-server tse peli setsing se setseng sa data e hloleha, sehlopha, leha se tla emisa ho fana ka lits'ebeletso, se ntse se tla boloka tlhaiso-leseling mabapi le lits'ebetso tsohle tse entsoeng tseo e faneng ka netefatso ea boitlamo ho tsona. (ho ke ke ha e-ba le tlhahisoleseding ea tahlehelo tabeng ea ho hlōleha ha bobeli).

Tuchanka3 (litsi tse 3 tsa data)

sebopeho sa

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Ena ke sehlopha sa boemo boo ho nang le litsi tse tharo tsa data tse sebetsang ka botlalo, tseo e 'ngoe le e 'ngoe e nang le seva sa database se sebetsang ka botlalo. Boemong bona sesebelisoa sa quorum ha e hlokehe. Setsi se seng sa data se na le monghali, tse ling tse peli li sebetsa ke makhoba. Replication ke synchronous, thaepa ANY (lekhoba1, lekhoba2), ke hore, moreki o tla fumana netefatso ea boitlamo ha makhoba e le eena oa pele oa ho araba hore o amohetse boitlamo. Lisebelisoa li bontšoa ke IP e le 'ngoe ea float bakeng sa monghali le tse peli bakeng sa makhoba. Ho fapana le Tuchanka4, li-IP tse tharo tse phaphametseng li mamella liphoso. Ho leka-lekanya lipotso tsa SQL tseo u ka li sebelisang feela sql proxy (ka mamello e fapaneng ea liphoso), kapa abela lekhoba le le leng la IP ho halofo ea bareki, le halofo e 'ngoe ho ea bobeli.

Tuchanka3 ho hana

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Haeba e 'ngoe ea litsi tsa data e hlōleha, ho sala tse peli. Ho e 'ngoe, mong'a le IP e phaphametseng ho tsoa ho mong'a e tsosoa, ka lekhetlo la bobeli - lekhoba le bobeli ba li-IP tsa makhoba (mohlala o tlameha ho ba le polokelo e habeli ea lisebelisoa ho amohela likhokahano tsohle ho tsoa ho li-IP tsa bobeli ba makhoba). Phetolelo e lumellanang pakeng tsa benghali le makhoba. Hape, sehlopha se tla boloka tlhahisoleseding mabapi le litšebelisano tse entsoeng le tse tiisitsoeng (ho ke ke ha e-ba le tahlehelo ea tlhahisoleseding) ha ho senyeha ha litsi tse peli tsa data (haeba li sa senyehe ka nako e le 'ngoe).

Ke ile ka etsa qeto ea hore ke se ke ka kenyelletsa tlhaloso e qaqileng ea sebopeho sa faele le ho tsamaisoa. Mang kapa mang ea batlang ho bapala a ka e bala kaofela ho README. Ke fana feela ka tlhaloso ea tlhahlobo e iketsang.

Sistimi ea ho etsa liteko ka boiketsetso

Ho lekola mamello ea liphoso tsa lihlopha ka ho etsisa liphoso tse fapaneng, ho entsoe mokhoa oa ho itlhahloba o ikemetseng. E tsebisitsoe ka script test/failure. Script e ka nka lipalo tsa lihlopha tseo u batlang ho li hlahloba e le liparamente. Ka mohlala, taelo ena:

test/failure 2 3

e tla leka feela sehlopha sa bobeli le sa boraro. Haeba li-parameter li sa hlalosoa, lihlopha tsohle li tla lekoa. Lihlopha tsohle li lekoa ka ho bapisa, 'me sephetho se bontšoa phanele ea tmux. Tmux e sebelisa seva e inehetseng ea tmux, kahoo script e ka tsamaisoa ho tloha tlas'a tmux ea kamehla, e hlahisang tmux e hlophisitsoeng. Ke khothaletsa ho sebelisa terminal ka fensetere e kholo le ka fonte e nyane. Pele tlhahlobo e qala, mechini eohle e fumanehang e khutlisetsoa ho senepe ka nako eo sengoloa se phethelang. setup.

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

The terminal e arotsoe ka likholomo ho latela palo ea lihlopha tse ntseng li lekoa; ka ho sa feleng (ho skrini) ho na le tse 'ne. Ke tla hlalosa litaba tsa litšiea ke sebelisa mohlala oa Tuchanka2. Liphanele tse skrineng li na le linomoro:

  1. Lipalopalo tsa liteko li hlahisoa mona. Likholomo:
    • ho hlōleha - lebitso la teko (mosebetsi ho script) e etsisang phoso.
    • karabelong - nako e tloaelehileng ea lipalo ka metsotsoana eo sehlopha se ileng sa boela sa sebetsa. E lekanngoa ho tloha qalong ea script emulating phoso ho fihlela motsotso oo sehlopha se tsosolosa tshebetso ea sona 'me se khona ho tsoela pele ho fana ka litšebeletso. Haeba nako e le khutšoanyane haholo, mohlala, metsotsoana e tšeletseng (sena se etsahala ka lihlopha tse nang le makhoba a 'maloa (Tuchanka3 le Tuchanka4)), sena se bolela hore phoso e ne e le lekhoba la asynchronous' me ha lea ka la ama ts'ebetso ka tsela leha e le efe; ho ne ho se na li-switches tsa cluster state.
    • ho kheloha - e bonts'a ho ata (ho nepahala) ha boleng karabelong ho sebedisa mokgoa o tlwaelehileng wa ho kgeloha.
    • bala — teko ena e entsoe ka makhetlo a makae.
  2. Log e khuts'oane e u lumella ho lekola seo sehlopha se se etsang hajoale. Nomoro ea ho pheta-pheta (teko), setempe sa nako le lebitso la ts'ebetso lia hlaha. Ho matha nako e telele haholo (> metsotso e 5) ho bontša bothata.
  3. pelo (pelo) - nako ya jwale. Bakeng sa tlhahlobo ea pono ea ts'ebetso monghali Nako ea hona joale e lula e ngolloa tafoleng ea eona ho sebelisa float IP master. Haeba e atlehile, sephetho se tla hlaha phanele ena.
  4. otla (pulse) - "nako ea hona joale", e neng e ngotsoe pele ke script pelo ho tseba, joale bala ho tloha lekgoba ka IP ea eona ea float. E u lumella ho lekola ts'ebetso ea lekhoba le ho pheta-pheta. Ho Tuchanka1 ha ho na makhoba a nang le float IP (ha ho makhoba a fanang ka litšebeletso), empa ho na le maemo a mabeli (DBs), kahoo e ke ke ea bontšoa mona. otlale pelo mohlala oa bobeli.
  5. Ho lekola bophelo bo botle ba lihlopha ho sebelisa lisebelisoa pcs mon. E bonts'a sebopeho, kabo ea lisebelisoa ho pholletsa le li-node le lintlha tse ling tsa bohlokoa.
  6. Tlhokomelo ea sistimi ho tsoa mochining o mong le o mong oa sehlopha se bonts'itsoeng mona. Ho ka 'na ha e-ba le liphanele tse joalo ho latela hore na sehlopha se na le mechini e kae ea sebele. Li-graph tse peli Moroalo oa CPU (mechini ea sebele e na le li-processor tse peli), lebitso la mochine, Mojaro oa Sisteme (e rehiloe Karolelano ea Mojaro hobane e feta metsotso e 5, 10 le 15), sebetsa data le kabo ea memori.
  7. Mehlala ea tlhahlobo ea script. Ha ho e-na le ho se sebetse hantle - tšitiso ea tšohanyetso ea ts'ebetso kapa potoloho e sa feleng ea ho leta - mona u ka bona lebaka la boitšoaro bona.

Teko e etsoa ka mekhahlelo e 'meli. Taba ea pele, mongolo o feta mefuteng eohle ea liteko, o khetha mochini o sebetsang oo o ka sebelisang tlhahlobo ena ho ona. Ebe potoloho e sa feleng ea tlhahlobo e etsoa, ​​​​mechini ea sebele le phoso li khethoa ka mokhoa o sa reroang nako le nako. Ho felisoa ka tšohanyetso ha mongolo oa tlhahlobo (phanele e ka tlase) kapa leqhubu le sa feleng la ho emela ntho e itseng (> Nako ea ho etsa metsotso e 5 bakeng sa ts'ebetso e le 'ngoe, sena se ka bonoa moleng) se bontša hore liteko tse ling tsa sehlopha sena li hlōlehile.

Teko ka 'ngoe e na le ts'ebetso e latelang:

  1. Qala mosebetsi o etsisang phoso.
  2. Itokisitse? — e emetse hore sehlopha se kgutlisetswe (ha ditshebeletso tsohle di fanwe).
  3. E bonts'a nako ea ho khutlisa sehlopha (karabelong).
  4. Lokisa - sehlopha se ntse se "lokisoa." Ka mor'a moo e lokela ho khutlela boemong ba ho sebetsa ka botlalo 'me e be e loketse ho se sebetse ho latelang.

Mona ke lethathamo la liteko tse nang le tlhaloso ea seo li se etsang:

  • ForkBomb: E theha "Kantle ho mohopolo" ho sebelisa bomo ea fereko.
  • OutOfSpace: Hard drive e tletse. Empa tlhahlobo ke ea tšoantšetso; ka mojaro o sa reng letho o bōpiloeng nakong ea teko, PostgreSQL hangata ha e hlolehe ha hard drive e tletse.
  • Postgres-BALA: e bolaea PostgreSQL ka taelo killall -KILL postgres.
  • Postgres-ETSA: e fanyeha taelo ea PostgreSQL killall -STOP postgres.
  • tima matla: "de-energizes" mochine oa sebele o nang le taelo VBoxManage controlvm "виртуалка" poweroff.
  • Reset: e tlatsa mochini o hlakileng haholo ka taelo VBoxManage controlvm "виртуалка" reset.
  • SBD-ETSA: e emisa modemona oa SBD ka taelo killall -STOP sbd.
  • Koala: e romela taelo mochineng oa sebele ka SSH systemctl poweroff, sistimi e koala ka bokhabane.
  • Tlosa Sehokelo: ho itšehla thajana ha marang-rang, taelo VBoxManage controlvm "виртуалка" setlinkstate1 off.

Ho phethela liteko ka ho sebelisa taelo e tloaelehileng ea tmux "kill-window" Ctrl-b &, kapa taelo ea "detach-client". Ctrl-b d: ntlheng ena tlhahlobo ea fela, tmux ea koala, mechini ea sebele ea tima.

Mathata a bonoang nakong ea tlhahlobo

  • Ka nako ena ledemona la molebeli sbd e sebetsa ho emisa li-daemone tse bonoang, empa e sa li hatsele. 'Me, ka lebaka leo, liphoso tse lebisang ho leqhoa feela Corosync и sethusapelo, empa eseng ho fanyeha sbd. Bakeng sa ho hlahloba Corosync e se e PR#83 (ho GitHub ho sbd), ho amoheloa khoeleng mong'a. Ba tšepisitse (ho PR#83) hore ho tla ba le ntho e tšoanang bakeng sa Pacemaker, ke tšepa hore ka Red Hat 8 ke tla etsa joalo. Empa "lisebelisoa" tse joalo ke tse inahaneloang 'me li ka etsoa habonolo ka mokhoa oa maiketsetso, mohlala, killall -STOP corosync, empa u se ke ua kopana bophelong ba sebele.

  • У sethusapelo phetolelong bakeng sa CentOS 7 e behiloeng ka phoso sync_timeout у sesebelisoa sa quorum, ka hoo haeba node e le 'ngoe e hlolehile, ka monyetla o itseng node ea bobeli le eona e ka qala hape, eo monghali a neng a lokela ho fallela ho eona. Ho folisoa ka ho hodisa sync_timeout у sesebelisoa sa quorum nakong ea tlhahiso (ka script setup/setup1). Phetoho ena ha e ea amoheloa ke bahlahisi sethusapelo, ho e-na le hoo ba tšepisitse ho hlophisa bocha meralo ea motheo ka tsela eo (kamoso e sa boleloang) e le hore nako ena e felile e tla baloa ka bo eona.

  • Haeba tlhophiso ea database e bolela seo LC_MESSAGES (melaetsa ea mongolo) Unicode e ka sebelisoa, mohlala. ru_RU.UTF-8, ebe qalong lipapatso tikolohong eo sebaka sa eona e seng UTF-8, e re sebakeng se se nang letho (mona sethusapelo+pgsqlms(paf) matha lipapatso), joale log e tla ba le matšoao a potso sebakeng sa litlhaku tsa UTF-8. Bahlahisi ba PostgreSQL ha ba so lumellane ka seo ba lokelang ho se etsa tabeng ena. E bitsa chelete, u hloka ho kenya LC_MESSAGES=en_US.UTF-8 ha o hlophisa (ho theha) mohlala oa database.

  • Haeba wal_receiver_timeout e behiloe (ka ho sa feleng ke 60s), joale nakong ea tlhahlobo ea PostgreSQL-STOP ho master ho lihlopha tsa tuchanka3 le tuchanka4. ho pheta-pheta ha ho kopane hape le monghali e mocha. Ho pheta-pheta moo hoa lumellana, kahoo ha se lekhoba feela le emisang, empa le monghali e mocha. E sebetsa hohle ka ho beha wal_receiver_timeout=0 ha o hlophisa PostgreSQL.

  • Ka nako e 'ngoe ke ne ke bona phetisetso e hoama ho PostgreSQL tekong ea ForkBomb (ho tlala memori). Kamora ForkBomb, ka linako tse ling makhoba a kanna a se ke a ikopanya le monghali e mocha. Ke kopane le sena feela ka lihlopha tsa tuchanka3 le tuchanka4, moo monghali a ileng a hoama ka lebaka la ho pheta-pheta ka mokhoa o lumellanang. Bothata bo ile ba itsamaela ka bobona ka mor'a nako e telele (hoo e ka bang lihora tse peli). Ho hlokahala lipatlisiso tse ling ho lokisa sena. Matšoao a tšoana le kokoana e fetileng, e bakoang ke lebaka le fapaneng, empa ka liphello tse tšoanang.

Setšoantšo sa Krogan se nkiloeng ho khelohileng Art ka tumello ea mongoli:

Ho etsa mohlala oa lihlopha tsa failover tse thehiloeng ho PostgreSQL le Pacemaker

Source: www.habr.com

Eketsa ka tlhaloso