Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Okwu Mmalite

Oge ụfọdụ gara aga e nyere m ọrụ nke ịmepụta ụyọkọ nke na-agaghị emeli maka ya PostgreSQL, Na-arụ ọrụ n'ọtụtụ ebe data jikọtara site na eriri anya n'ime otu obodo, ma nwee ike iguzogide ọdịda (dịka ọmụmaatụ, nkwụsị) nke otu ebe data. Dị ka ngwanrọ na-ahụ maka nnabata mmejọ, ahọpụtara m Onye mmeben'ihi na nke a bụ ngwọta gọọmentị sitere na RedHat maka ịmepụta ụyọkọ ọdịda. Ọ dị mma n'ihi na RedHat na-enye nkwado maka ya, na n'ihi na ngwọta a bụ eluigwe na ala (modular). Site n'enyemaka ya, ọ ga-ekwe omume iji hụ na ọ bụghị naanị nke PostgreSQL na-emejọ, kamakwa nke ọrụ ndị ọzọ, ma ọ bụ iji modul ọkọlọtọ ma ọ bụ ịmepụta ha maka mkpa ụfọdụ.

Mkpebi a welitere ajụjụ ezi uche dị na ya: kedu ka ụyọkọ mmejọ ga-esi bụrụ? Iji nyochaa nke a, m mepụtara oche nnwale nke na-egosipụta ọdịda dị iche iche na ọnụ ụyọkọ, na-eche ka eweghachi ọrụ, na-eweghachi ọnụ ọnụ dara ada, ma na-aga n'ihu na-anwale na loop. A na-akpọbu ọrụ a hapgsql, mana ka oge na-aga, aha ahụ gwụrụ m, nke nwere naanị otu ụdaume. Ya mere, amalitere m ịkpọ ọdụ data ndị na-adịghị mma (na IP na-ese n'elu na-atụ aka na ha) krogan (agwa sitere na egwuregwu kọmputa nke ejiri akụkụ ahụ niile dị mkpa megharịa), na ọnụ, ụyọkọ na ọrụ ahụ n'onwe ya bụ. tuchanka (ụwa ebe ndị krogan bi).

Ugbu a njikwa ekwela mepee oru ngo a na obodo mepere emepe n'okpuru ikikere MIT. A ga-asụgharị README n'oge na-adịghị anya n'asụsụ Bekee (n'ihi na a na-atụ anya na ndị na-azụ ahịa bụ ndị na-emepụta Pacemaker na PostgreSQL), ma ekpebiri m ịnye nsụgharị ochie nke Russian README (akụkụ ụfọdụ) n'ụdị isiokwu a.

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

A na-etinye ụyọkọ na igwe mebere Virtualbox. A ga-ebuga ngụkọta igwe mebere 12 (36GiB na mkpokọta), nke na-etolite ụyọkọ 4 na-anabata mmejọ (nhọrọ dị iche iche). Ụyọkọ abụọ mbụ nwere sava PostgreSQL abụọ, nke dị na ebe data dị iche iche, yana sava nkịtị. àmà c ngwaọrụ quorum (kwadoro na igwe mebere dị ọnụ ala na etiti data nke atọ), nke na-edozi ejighị n'aka 50% / 50%, na-enye gị votu gị otu n'ime ndị ọzọ. Ụyọkọ nke atọ na ebe data atọ: otu nna ukwu, ohu abụọ, mba ngwaọrụ quorum. Ụyọkọ nke anọ nwere sava PostgreSQL anọ, abụọ kwa etiti data: otu nna ukwu, ihe ndị ọzọ, ma na-ejikwa. àmà c ngwaọrụ quorum. Nke anọ nwere ike iguzogide ọdịda nke sava abụọ ma ọ bụ otu ebe data. Enwere ike ịhazi ihe ngwọta a ka ọ bụrụ ọnụ ọgụgụ buru ibu nke oyiri ma ọ bụrụ na ọ dị mkpa.

Ọrụ oge ziri ezi ntpd hazigharịrị maka nnabata mmejọ, mana ọ na-eji usoro ahụ n'onwe ya ntpd (nwa mgbei mode). Nkesa nkekọrịtara àmà na-arụ ọrụ dị ka ihe nkesa etiti NTP, na-ekesa oge ya na ụyọkọ niile, si otú ahụ na-emekọrịta ihe nkesa niile na ibe ha. Ọ bụrụ àmà daa ma ọ bụ na-ekewapụ onwe ya, mgbe ahụ, otu n'ime sava ụyọkọ (n'ime ụyọkọ) ga-amalite ikesa oge ya. Ndokwa ihe inyeaka HTTP proxy zụlitekwara ka àmà, site n'enyemaka ya, igwe mebere ndị ọzọ nwere ohere ịnweta ebe nchekwa Yum. N'ezie, a ga-akwado ọrụ dịka oge ziri ezi na proxies na sava raara onwe ya nye, mana n'ụlọ ntu a na-akwado ya. àmà naanị iji chekwaa ọnụ ọgụgụ nke igwe mebere na oghere.

Amaokwu

v0. Na-arụ ọrụ na CentOS 7 na PostgreSQL 11 na VirtualBox 6.1.

Ọdịdị ụyọkọ

Emebere ụyọkọ niile ka ọ dị n'ọtụtụ ebe data, jikọtara ya na netwọk dị larịị ma ga-egbochi ọdịda ma ọ bụ kewapụ netwọkụ nke otu ebe data. Ya kpatara agaghị ekwe omume iji maka nchebe megide gbawara-ụbụrụ ọkọlọtọ Pacemaker teknụzụ a na-akpọ STONITH (Gbanye ọnụ nke ọzọ na isi) ma ọ bụ ugbo. Ihe kachasị mkpa: ọ bụrụ na ọnụ ọgụgụ dị na ụyọkọ ahụ amalite iche na ihe dị njọ na ụfọdụ ọnụ, ọ naghị azaghachi ma ọ bụ na-eme omume na-ezighị ezi, mgbe ahụ, ha na-amanye gbanyụọ ya site na ngwaọrụ "mpụga", dịka ọmụmaatụ, IPMI ma ọ bụ kaadị njikwa UPS. . Mana nke a ga-arụ ọrụ naanị n'ọnọdụ ebe, n'ọnọdụ nke otu ọdịda, IPMI ma ọ bụ ihe nkesa UPS na-aga n'ihu na-arụ ọrụ. N'ebe a, anyị na-eme atụmatụ iji chebe onwe anyị pụọ na ọdịda dị egwu karị, mgbe etiti data dum dara (dịka ọmụmaatụ, na-efunahụ ike). Na ọjụjụ dị otú ahụ, ihe niile stonith-ngwaọrụ (IPMI, UPS, wdg) agaghịkwa arụ ọrụ.

Kama, usoro a dabere na echiche nke quorum. Ọnụ niile nwere olu, naanị ndị nwere ike ịhụ ihe karịrị ọkara nke ọnụ ọnụ niile nwere ike ịrụ ọrụ. A na-akpọ ọnụọgụ nke "ọkara + 1". kworum. Ọ bụrụ na eruteghị quorum, mgbe ahụ ọnụ na-ekpebi na ọ nọ na netwọk dịpụrụ adịpụ na ọ ga-agbanyụrịrị akụrụngwa ya, ya bụ. nke a bụ ihe ọ bụ gbawara-ụbụrụ nchebe. Ọ bụrụ na ngwanrọ na-ahụ maka omume a anaghị arụ ọrụ, mgbe ahụ, onye na-eche nche, dịka ọmụmaatụ, dabere na IPMI, ga-arụ ọrụ.

Ọ bụrụ na ọnụ ọgụgụ nke ọnụ ọnụ bụ ọbụna (ụyọkọ na ebe data abụọ), mgbe ahụ ihe a na-akpọ ejighị n'aka nwere ike ibili. 50% / 50% (iri ise na iri ise) mgbe ikewapụ netwọkụ kewara ụyọkọ ahụ kpọmkwem na ọkara. Ya mere, maka ọnụ ọgụgụ nke ọnụ ọgụgụ, anyị na-agbakwụnye ngwaọrụ quorum bụ daemon na-enweghị atụ nke enwere ike ịmalite na igwe mebere dị ọnụ ala na etiti data nke atọ. Ọ na-enye votu ya na otu akụkụ (nke ọ na-ahụ), ma si otú ahụ dozie 50%/50% ejighị n'aka. Aha m aha sava nke a ga-ewepụta ngwaọrụ quorum na ya àmà (okwu sitere na repmgr, ọ masịrị m).

Enwere ike ibugharị akụrụngwa site n'otu ebe ruo ebe, dịka ọmụmaatụ, site na sava na-ezighi ezi gaa na ndị ahụike, ma ọ bụ n'iwu nke ndị na-ahụ maka sistemụ. Ka ndị ahịa wee mara ebe akụrụngwa ha chọrọ dị (ebe a ga-ejikọ?), IP na-ese n'elu (sere n'elu IP). Ndị a bụ IP ndị Pacemaker nwere ike ịgagharị gburugburu ọnụ (ihe niile dị na netwọk dị larịị). Onye ọ bụla n'ime ha na-anọchi anya akụrụngwa (ọrụ) ma ga-adị ebe ịchọrọ ijikọ iji nweta ọrụ a (n'ọnọdụ anyị, nchekwa data).

Tuchanka1 (okirikiri na compaction)

Ọdịdị

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Echiche bụ na anyị nwere ọtụtụ obere ọdụ data na obere ibu, nke na-abaghị uru ịnọgide na-enwe ihe nkesa ohu raara onwe ya nye na ọnọdụ njikere dị ọkụ maka ịgụ naanị azụmahịa (ọ dịghị mkpa maka ihe efu dị otú ahụ).

Ebe data ọ bụla nwere otu ihe nkesa. Ihe nkesa ọ bụla nwere ihe abụọ PostgreSQL (na okwu PostgreSQL, a na-akpọ ha ụyọkọ, mana iji zere mgbagwoju anya, m ga-akpọ ha ihe atụ (site na ntụnyere na ọdụ data ndị ọzọ), na m ga-akpọ naanị ụyọkọ Pacemaker clusters). Otu ihe atụ na-arụ ọrụ na ọnọdụ nna ukwu, naanị ọ na-enye ọrụ (naanị ise n'elu IP na-eduga na ya). Ihe atụ nke abụọ na-arụ ọrụ dị ka ohu maka ụlọ ọrụ data nke abụọ, ọ ga-enye ọrụ naanị ma ọ bụrụ na nna ya ukwu ada ada. Ebe ọ bụ na ọtụtụ oge naanị otu ihe atụ n'ime abụọ (nna ukwu) ga-enye ọrụ (na-eme arịrịọ), a na-ahazi ihe nkesa niile maka nna ukwu (a na-ekenye ebe nchekwa maka cache share_buffers, wdg), mana nke mere na nke abụọ. nwekwara ego zuru oke (n'agbanyeghị maka ọrụ suboptimal site na cache sistemụ faịlụ) ma ọ bụrụ na ọdịda nke otu ebe data dara. Ohu ahụ adịghị enye ọrụ (anaghị eme agụ naanị arịrịọ) n'oge ọrụ nkịtị nke ụyọkọ, nke mere na ọ dịghị agha maka akụrụngwa na nna ukwu na otu igwe.

N'ihe banyere ọnụ ụzọ abụọ, nkwụsị nke mmejọ ga-ekwe omume naanị site na ịmegharị asynchronous, ebe ọ bụ na site na mmegharị synchronous, ọdịda nke ohu ga-eduga na nkwụsị nke nna ukwu.

Ịghara ịgba akaebe

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Ịgba ama (ngwaọrụ quorum) M ga-atụle naanị maka ụyọkọ Tuchanka1, ya na ndị ọzọ niile ọ ga-abụ otu akụkọ ahụ. Ọ bụrụ na akaebe daa, ọ nweghị ihe ga-agbanwe na nhazi ụyọkọ, ihe niile ga-aga n'ihu na-arụ ọrụ otu ụzọ o si arụ ọrụ. Mana kworum ga-abụ 2 n'ime 3, ya mere ọdịda ọ bụla na-esote ga-egbu egbu maka ụyọkọ ahụ. A ka ga-edozi ya ngwa ngwa.

Tuchanka1 jụrụ

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Ọdịda nke otu ebe data maka Tuchanka1. N'okwu a àmà na-atụba votu ya na ọnụ nke abụọ na etiti data nke abụọ. N'ebe ahụ, onye bụbu ohu na-atụgharị ghọọ nna ukwu, n'ihi ya, ndị nna ukwu abụọ na-arụ ọrụ na otu ihe nkesa na ha abụọ float IP na-ezo aka na ha.

Tuchanka2 (nke oge gboo)

Ọdịdị

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Omuma atụmatụ nke abụọ ọnụ. Nna ya ukwu na-arụ ọrụ na otu, ohu na nke abụọ. Ha abụọ nwere ike ime arịrịọ (a na-agụ ohu ahụ naanị), yabụ na IP float na-egosi ha abụọ: krogan2 bụ nna ukwu, krogan2s1 bụ ohu. Ma nna ukwu ma ohu ahụ ga-anagide mmejọ.

N'ihe banyere ọnụ ụzọ abụọ, nnabata mmejọ ga-ekwe omume naanị site na mmegharị asynchronous, n'ihi na site na mmegharị synchronous, ọdịda nke ohu ahụ ga-eduga na nkwụsị nke nna ukwu.

Tuchanka2 jụrụ

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Ọ bụrụ na otu ebe data ada ada àmà votu maka nke abụọ. Na naanị ebe data na-arụ ọrụ, a ga-ebuli nna ukwu ahụ, ma IP abụọ na-ese n'elu mmiri ga-arụtụ aka na ya: nna ukwu na ohu. N'ezie, a ga-ahazi ihe atụ ahụ n'ụzọ na ọ nwere ihe onwunwe zuru ezu (oke njikọ, wdg) iji nabata njikọ niile na arịrịọ sitere n'aka onye isi na ohu na-ese n'elu IP. Ya bụ, n'oge ọrụ nkịtị ọ kwesịrị inwe oke oke.

Tuchanka4 (ọtụtụ ndị ohu)

Ọdịdị

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Ugbua oke ọzọ. Enwere ọdụ data nke na-enweta ọtụtụ arịrịọ naanị ịgụ (ihe gbasara saịtị dị elu). Tuchanka4 bụ ọnọdụ ebe enwere ike ịnwe ohu atọ ma ọ bụ karịa ga-edozi arịrịọ ndị dị otú ahụ, mana ọ kaghị ọtụtụ. N'ịbụ ndị nwere ọnụ ọgụgụ dị ukwuu nke ndị ohu, ọ ga-adị mkpa ịmepụta usoro nhazi usoro nhazi. N'okwu opekempe (na foto a), nke ọ bụla n'ime ebe data abụọ nwere sava abụọ, nke ọ bụla nwere ihe atụ PostgreSQL.

Ihe ọzọ dị na atụmatụ a bụ na ọ ga-ekwe omume ịhazi otu mmegharị mmegharị ahụ. A haziri ya ka ịmegharị, ọ bụrụ na ọ ga-ekwe omume, gaa na ebe data ọzọ, kama ka ọ bụrụ oyiri n'otu ebe data dị ka nna ukwu. A na-atụ aka nna ukwu na ohu ọ bụla site na IP na-ese n'elu mmiri. Ọ dabara nke ọma, n'etiti ndị ohu ọ ga-adị mkpa ịhazi arịrịọ n'ụzọ ụfọdụ sql proxy, dịka ọmụmaatụ, n'akụkụ ndị ahịa. Ụdị dị iche iche nke ndị ahịa nwere ike ịchọ ụdị dị iche iche sql proxy, na naanị ndị mmepe ahịa maara onye chọrọ nke. Enwere ike itinye ọrụ a site na daemon dị n'èzí ma ọ bụ site na ọba akwụkwọ ndị ahịa (ọdọ mmiri njikọ), wdg. Ihe a niile na-agabiga isiokwu nke ụyọkọ nchekwa data failover (failover SQL proxy enwere ike itinye ya n'onwe ya, yana nnabata mmejọ ndị ahịa).

Tuchanka4 jụrụ

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Ọ bụrụ na otu ebe data (ya bụ, sava abụọ) daa, gbaa akaebe maka nke abụọ. N'ihi ya, e nwere ihe nkesa abụọ na-agba ọsọ na nke abụọ data center: otu na-agba ọsọ a nna ukwu, na nna ukwu sere n'elu IP na-atụ aka ya (maka ịnata na-agụ-dee arịrịọ); na na nke abụọ nkesa e nwere ohu na-agba ọsọ na synchronous replication, na otu n'ime ohu sere n'elu IPs na-atụ aka na ya (maka ịgụ-naanị arịrịọ).

Ihe mbụ ị ga-amata bụ na ọ bụghị ndị ohu na-ese n'elu IP ga-abụ ndị ọrụ, mana naanị otu. Na iji ya rụọ ọrụ nke ọma ọ ga-adị mkpa na sql proxy bugharịa arịrịọ niile na naanị IP ise n'elu mmiri; ma ọ bụrụ sql proxy mba, ị nwere ike depụta ndị ohu IP niile na-ese n'elu mmiri nke rịkọm dị na URL njikọ. N'okwu a, na libpq njikọ ahụ ga-abụ IP mbụ na-arụ ọrụ, a na-eme nke a na usoro nyocha akpaka. Ikekwe n'ọbá akwụkwọ ndị ọzọ, dịka ọmụmaatụ, JDBC, nke a agaghị arụ ọrụ ma dị mkpa sql proxy. A na-eme nke a n'ihi na amachibidoro IP float maka ndị ohu ka ebulite ya n'otu oge n'otu ihe nkesa, nke mere na a na-ekesa ya n'etiti sava ohu ma ọ bụrụ na ọtụtụ n'ime ha na-agba ọsọ.

Nke abụọ: ọbụlagodi na ọdịda nke ọdịda data etiti, a ga-edobe mmegharị mmekọrịta. Ma ọ bụrụgodi na ọdịda nke abụọ emee, ya bụ, otu n'ime sava abụọ na ebe data fọdụrụnụ ada ada, ụyọkọ ahụ, n'agbanyeghị na ọ ga-akwụsị inye ọrụ, ka ga-ejigide ozi gbasara azụmahịa niile etinyere n'ọrụ nke o nyela nkwenye nke itinye aka. (a gaghị enwe ozi ọnwụ ma ọ bụrụ na ọdịda nke abụọ).

Tuchanka3 (Ebe data 3)

Ọdịdị

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Nke a bụ ụyọkọ maka ọnọdụ ebe enwere ebe data atọ na-arụ ọrụ zuru oke, nke ọ bụla nwere ihe nkesa nchekwa data na-arụ ọrụ zuru oke. N'okwu a ngwaọrụ quorum adịghị mkpa. Otu ụlọ ọrụ data bụ nna ukwu na-arụ ọrụ, nke abụọ nke ọzọ bụ ndị ohu. Ntugharị bụ synchronous, pịnye Ọ BỤLA (ohu1, ohu2), ya bụ, onye ahịa ga-enweta nkwenye mgbe onye ọ bụla n'ime ndị ohu ahụ bụ onye mbụ na-aza na ọ nabatala nkwa ahụ. E gosipụtara akụrụngwa site na otu IP float maka nna ukwu yana abụọ maka ndị ohu. N'adịghị ka Tuchanka4, IP atọ niile na-ese n'elu na-anabata mmejọ. Iji dozie ajụjụ SQL naanị ọgụgụ ị nwere ike iji sql proxy (ya na nnabata dị iche iche), ma ọ bụ kenye otu ohu sere n'elu IP na ọkara nke ndị ahịa, na ọkara nke ọzọ na nke abụọ.

Tuchanka3 jụrụ

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

Ọ bụrụ na otu ebe data ada ada, abụọ ga-adị. N'ime otu, a na-ebuli nna ukwu na float IP site na nna ukwu, na nke abụọ - ohu ahụ na ma ohu na-ese n'elu IPs (ihe atụ ga-enwerịrị ihe nchekwa okpukpu abụọ iji nabata njikọ niile site na ma ohu float IPs). Ntugharị mmekọrịta n'etiti ndị nna ukwu na ndị ohu. Ọzọkwa, ụyọkọ ahụ ga-echekwa ozi gbasara azụmahịa emebere na nkwenye (a gaghị enwe ihe efu nke ozi) ma ọ bụrụ na mbibi nke ebe data abụọ (ma ọ bụrụ na ebibighị ha n'otu oge).

Ekpebiri m ịghara itinye nkọwa zuru ezu nke nhazi faịlụ na ntinye. Onye ọ bụla chọrọ igwu egwu nwere ike ịgụ ya niile na README. Naanị m na-enye nkọwa nke nnwale akpaaka.

Usoro nnwale akpaaka

Iji nwalee ntachi obi nke ụyọkọ site na ịmegharị mmejọ dị iche iche, emepụtarala usoro nnwale akpaka. Ewepụtara ya site na edemede test/failure. Edemede ahụ nwere ike were dị ka paramita ọnụọgụ ụyọkọ nke ịchọrọ ịnwale. Dịka ọmụmaatụ iwu a:

test/failure 2 3

ga-anwale naanị ụyọkọ nke abụọ na nke atọ. Ọ bụrụ na akọwapụtaghị paramita, mgbe ahụ a ga-anwale ụyọkọ niile. A na-anwale ụyọkọ niile n'otu n'otu, a na-egosipụtakwa nsonaazụ ya na panel tmux. Tmux na-eji sava tmux raara onwe ya nye, yabụ enwere ike ịme edemede ahụ site na ndabara tmux, na-ebute tmux akwụghị ụgwọ. Ana m akwado iji ọnụ ọnụ na nnukwu windo yana obere mkpụrụedemede. Tupu ebido nnwale, a na-atụgharị igwe niile mebere n'otu foto n'oge edemede ahụ gwụchara setup.

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

A na-ekewa ọnụ ọnụ n'ime kọlụm dịka ọnụọgụ nke ụyọkọ a na-anwale; na ndabara (na nseta ihuenyo) enwere anọ. M ga-akọwa ọdịnaya nke ogidi ndị ahụ site na iji ihe atụ nke Tuchanka2. A na-agụ akụkụ ndị dị na nseta ihuenyo:

  1. E gosipụtara ọnụ ọgụgụ ule ebe a. Ogidi:
    • okpu - aha ule (ọrụ na edemede) nke na-eṅomi mmejọ ahụ.
    • mmeghachi omume - oge mgbakọ na mwepụ n'ime sekọnd nke ụyọkọ ahụ nwetara ọrụ ya. A na-atụ ya site na mmalite nke edemede na-eṅomi mmejọ ruo oge mgbe ụyọkọ ahụ weghachiri ọrụ ya ma nwee ike ịga n'ihu na-enye ọrụ. Ọ bụrụ na oge dị mkpụmkpụ, dịka ọmụmaatụ, sekọnd isii (nke a na-eme na ụyọkọ na ọtụtụ ndị ohu (Tuchanka3 na Tuchanka4)), nke a pụtara na mmejọ ahụ dị na ohu asynchronous na emetụtaghị arụmọrụ n'ụzọ ọ bụla; ọ dịghị. mgba ọkụ steeti ụyọkọ.
    • ndiiche - na-egosi mgbasa (nke ziri ezi) nke uru mmeghachi omume iji usoro ngbanwe ọkọlọtọ.
    • ịgụ - ugboro ole ka emere ule a.
  2. Ndekọ ndekọ na-enye gị ohere inyocha ihe ụyọkọ na-eme ugbu a. Egosiri nọmba iteration (ule), akara oge na aha ọrụ ahụ. Ịgba ọsọ ogologo (> nkeji 5) na-egosi nsogbu.
  3. obi (obi) - oge ugbu a. Maka nyocha anya nke arụmọrụ nna ukwu A na-ede oge dị ugbu a na tebụl ya mgbe niile site na iji onye nwe IP sere n'elu. Ọ bụrụ na ịga nke ọma, a ga-egosipụta nsonaazụ ya na panel a.
  4. iti (pulse) - "oge dị ugbu a", nke edere na mbụ site na edemede obi nna ukwu, ugbu a na-agụ si ohu site na ya float IP. Na-enye gị ohere iji anya nyochaa arụmọrụ nke ohu na mmegharị. Na Tuchanka1 enweghị ndị ohu nwere IP float (enweghị ndị ohu na-enye ọrụ), mana enwere oge abụọ (DBs), yabụ agaghị egosi ya ebe a. itina obi ihe atụ nke abụọ.
  5. Nyochaa ahụike ụyọkọ site na iji akụrụngwa pcs mon. Na-egosiputa nhazi, nkesa nke akụrụngwa n'ofe ọnụ na ozi ndị ọzọ bara uru.
  6. Egosiri nlebanya sistemu site na igwe mebere nke ọ bụla dị na ụyọkọ ebe a. Enwere ike ịnwe paịlị ndị dị otú ahụ dabere na igwe mebere nke ụyọkọ ahụ nwere. Eserese abụọ Ibu CPU (igwe mebere nwere processors abụọ), aha igwe mebere, Ibu Ibu sistemụ (nke a na-akpọ Load Nkezi n'ihi na ọ bụ nkezi karịa 5, 10 na 15 nkeji), hazie data na oke ebe nchekwa.
  7. Chọpụta nke edemede na-eme nnwale. N'ihe na-adịghị mma - nkwụsị ọrụ mberede ma ọ bụ usoro nchere na-adịghị agwụ agwụ - ebe a ị nwere ike ịhụ ihe kpatara omume a.

A na-eme nnwale na nkebi abụọ. Nke mbụ, edemede ahụ na-aga n'ụdị ule niile, na-ahọrọ igwe mebere nke a ga-etinye n'ule a. Mgbe ahụ, a na-eme usoro nyocha nke na-adịghị agwụ agwụ, a na-ahọrọ igwe mebere na mmejọ ya na-enweghị usoro oge ọ bụla. Nkwụsị na mberede nke edemede ule (panel ala) ma ọ bụ nkwụsị na-adịghị agwụ agwụ nke ichere ihe (> 5 nkeji oge igbu oge maka otu ọrụ, nke a nwere ike ịhụ na nchọta) na-egosi na ụfọdụ n'ime ule ndị dị na ụyọkọ a dara.

Nnwale ọ bụla nwere ọrụ ndị a:

  1. Mepụta ọrụ na-eṅomi mmejọ.
  2. Njikere? - echere ka eweghachi ụyọkọ ahụ (mgbe enyere ọrụ niile).
  3. Na-egosi ogologo oge mgbake ụyọkọ (mmeghachi omume).
  4. Ndozi - a na-emezi ụyọkọ ahụ. Mgbe nke a gasịrị, ọ ga-alaghachi na steeti arụ ọrụ zuru oke ma dị njikere maka mmebi ọzọ.

Nke a bụ ndepụta ule nwere nkọwa nke ihe ha na-eme:

  • ForkBomb: Na-emepụta "Ebe nchekwa" site na iji bọmbụ ndụdụ.
  • OutOfSpace: Mbanye ike ejula. Mana ule a bụ ihe atụ; na ibu na-enweghị isi nke a na-emepụta n'oge ule, PostgreSQL anaghị ada ada mgbe draịvụ ike juru.
  • Postgres-egbu: na-egbu PostgreSQL na iwu killall -KILL postgres.
  • Postgres-Kwụsị: kpọgidere PostgreSQL iwu killall -STOP postgres.
  • IkeOff: "de-energizes" mebere igwe na iwu VBoxManage controlvm "виртуалка" poweroff.
  • Tọgharịa: overloads mebere igwe na iwu VBoxManage controlvm "виртуалка" reset.
  • SBD-Kwụsị: jiri iwu ahụ kwụsị mmụọ ọjọọ SBD killall -STOP sbd.
  • Mechie: na-eziga iwu na igwe mebere site na SSH systemctl poweroff, sistemu na-emechi nke ọma.
  • Wepu njikọ: ikewapụ netwọkụ, iwu VBoxManage controlvm "виртуалка" setlinkstate1 off.

Na-emecha ule ma ọ bụ iji ọkọlọtọ tmux iwu "kill-window" Ctrl-b &, ma ọ bụ iwu "detach-client". Ctrl-b d: n'oge a na-agwụ ule, tmux na-emechi, igwe mebere na-agbanyụ.

Achọpụtara nsogbu n'oge ule

  • N'oge a onye nche mmụọ ọjọọ sbd na-arụ ọrụ na-akwụsị hụrụ daemons, ma ọ bụghị kefriza ha. Na, n'ihi ya, mmejọ ndị na-eduga na oyi na-atụ naanị Corosync и Onye mmebe, ma ọ bụghị nghọta n'ihi... Maka nlele Corosync enweela PR#83 (na GitHub na n'ihi), nabatara na eri nwe-. Ha kwere nkwa (na PR # 83) na a ga-enwe ihe yiri nke ahụ maka Pacemaker, enwere m olileanya na site na Uhie 8 ga-ezu. Mana "nrụ ọrụ" dị otú ahụ bụ ịkọ nkọ na enwere ike ịme ya ngwa ngwa site na iji, dịka ọmụmaatụ, killall -STOP corosync, ma ọ dịghị mgbe izute na ndụ n'ezie.

  • У Onye mmebe na nsụgharị maka CentOS 7 edobere ezighi ezi sync_timeout у ngwaọrụ quorum, n'ihi ya ọ bụrụ na otu ọnụ ada ada, na ụfọdụ ihe gbasara nke puru omume ọnụ nke abụọ nwekwara rebooted, nke nna ukwu kwesịrị ịkwaga. Agwọ ya site na mmụba sync_timeout у ngwaọrụ quorum n'oge mbugharị (na edemede setup/setup1). Ndị nrụpụta anabataghị mmezigharị a Onye mmebe, kama ha kwere nkwa na ha ga-ahazigharị akụrụngwa n'ụzọ dị otú a (n'ọdịnihu na-akọwapụtaghị) na a ga-agbakọ oge a na-akpaghị aka.

  • Ọ bụrụ na nhazi nchekwa data na-akọwapụta nke ahụ LC_MESSAGES (ozi ederede) Enwere ike iji Unicode, dịka ọmụmaatụ. ru_RU.UTF-8, mgbe ahụ na mmalite postgres na gburugburu ebe mpaghara na-abụghị UTF-8, kwuo na ebe efu (ebe a ihe mgbochiume+pgsqlms(paf) na-agba ọsọ postgres), mgbe ahụ log ga-enwe akara ajụjụ kama mkpụrụedemede UTF-8. Ndị mmepe PostgreSQL ekwenyeghị na ihe ha ga-eme na nke a. Ọ na-efu, ịkwesịrị ịwụnye LC_MESSAGES=en_US.UTF-8 mgbe ị na-ahazi (ịmepụta) ihe atụ nchekwa data.

  • Ọ bụrụ na edobere wal_receiver_timeout (site na ndabara ọ bụ 60s), mgbe ahụ n'oge ule PostgreSQL-STOP na nna ukwu na tuchanka3 na tuchanka4 ụyọkọ. mmegharị anaghị ejikọta ọzọ na nna ukwu ọhụrụ. Ntugharị enwere synchronous, yabụ ọ bụghị naanị ohu na-akwụsị, kamakwa onye nwe ọhụrụ. Na-arụ ọrụ gburugburu site na ịtọ wal_receiver_timeout=0 mgbe ị na-ahazi PostgreSQL.

  • Mgbe ụfọdụ, ahụrụ m ka ọ na-emegharịgharị na PostgreSQL na ule ForkBomb (ntufe ebe nchekwa). Mgbe ForkBomb gasịrị, mgbe ụfọdụ ndị ohu nwere ike ọ gaghị ejikọta ọzọ na nna ukwu ọhụrụ. Naanị m zutere nke a na ụyọkọ tuchanka3 na tuchanka4, ebe nna ukwu jụrụ oyi n'ihi mmegharị mmekọrịta. Nsogbu ahụ lara n'onwe ya ka ogologo oge gasịrị (ihe dị ka awa abụọ). Achọrọ nyocha ọzọ iji mezie nke a. Mgbaàmà ndị ahụ yiri ahụhụ gara aga, nke kpatara ihe dị iche iche, ma na-enwe otu nsonaazụ ahụ.

Foto Krogan e si na ya pụta Ezigbo Art site n'ikike onye odee:

Nlezigharị nke ụyọkọ ọdịda na-adabere na PostgreSQL na Pacemaker

isi: www.habr.com

Tinye a comment