Mokhoa oa ho kenya "mahala" PostgreSQL tikolohong e thata ea khoebo

Batho ba bangata ba tloaelane le PostgreSQL DBMS, 'me e ipakile e le lisebelisoa tse nyane. Leha ho le joalo, mokhoa o lebisang ho Open Source o se o hlakile haholoanyane, leha ho tluoa ho likhamphani tse kholo le litlhoko tsa likhoebo. Sehloohong sena re tla u bolella mokhoa oa ho kopanya Postgres tikolohong ea khoebo le ho arolelana phihlelo ea rona ea ho theha mokhoa oa ho boloka boitsebiso (BSS) bakeng sa database ena u sebelisa mokhoa oa ho boloka oa Commvault e le mohlala.

Mokhoa oa ho kenya "mahala" PostgreSQL tikolohong e thata ea khoebo
PostgreSQL e se e ipakile e le ea bohlokoa - DBMS e sebetsa hantle, e sebelisoa ke likhoebo tsa feshene tsa dijithale tse kang Alibaba le TripAdvisor, 'me khaello ea litefiso tsa laesense e etsa hore e be mokhoa o mong o lekang ho feta liphoofolo tsa litonanahali tse kang MS SQL kapa Oracle DB. Empa hang ha re qala ho nahana ka PostgreSQL sebakeng sa Enterprise, hang-hang re tobana le litlhoko tse thata: "Ho thoe'ng ka mamello ea liphoso tsa tlhophiso? khanyetso ea likoluoa? ho lekola ka botlalo ho kae? Ho thoe'ng ka li-backups tse ikemetseng? Ho thoe'ng ka ho sebelisa lilaeborari tsa litheipi ka ho toba le polokelong ea bobeli?

Mokhoa oa ho kenya "mahala" PostgreSQL tikolohong e thata ea khoebo
Ka lehlakoreng le leng, PostgreSQL ha e na lisebelisoa tsa "backup" tse hahelletsoeng, joalo ka li-DBMS tsa "batho ba baholo" joalo ka RMAN ho Oracle DB kapa SAP Database Backup. Ka lehlakoreng le leng, barekisi ba lits'ebetso tsa "backups" tsa mekhatlo (Veeam, Veritas, Commvault) leha ba ts'ehetsa PostgreSQL, ha e le hantle ba sebetsa feela ka tlhophiso e itseng (hangata e ikemetseng) le lithibelo tse fapaneng.

Sistimi ea bekapo e etselitsoeng PostgreSQL ka ho khetheha, joalo ka Barman, Wal-g, pg_probackup, e tumme haholo lits'ebetsong tse nyane tsa PostgreSQL DBMS kapa moo li-backups tse boima tsa likarolo tse ling tsa sebopeho sa IT li sa hlokeng. Ka mohlala, ho phaella ho PostgreSQL, lisebelisoa tsa motheo li ka kenyelletsa lisebelisoa tsa 'mele le tsa sebele, OpenShift, Oracle, MariaDB, Cassandra, joalo-joalo. Ho eletsoa ho boloka tsena tsohle ka sesebelisoa se tloaelehileng. Ho kenya tharollo e arohaneng bakeng sa PostgreSQL feela ke mohopolo o mobe: data e tla kopitsoa kae-kae ho disk, ebe e hloka ho tlosoa ho theipi. Backup ena e habeli e eketsa nako ea ho boloka, hape, ka ho teba, nako ea ho hlaphoheloa.

Tharollong ea khoebo, bekapo ea ho kenya e etsahala ka palo e itseng ea li-node sehlopheng se inehetseng. Ka nako e ts'oanang, mohlala, Commvault e ka sebetsa feela le sehlopha sa li-node tse peli, moo Primary le Sekondari li abetsoeng ka thata ho li-node tse itseng. 'Me hoa utloahala ho boloka backup ho tsoa ho Primary, hobane backup e tsoang ho Secondary e na le mefokolo ea eona. Ka lebaka la likarolo tse ikhethang tsa DBMS, ho lahla ha hoa bōptjoa ho Sekondari, ka hona ho na le monyetla oa ho boloka lifaele.

E le ho fokotsa kotsi ea ho fokotsa nako, ha ho theha tsamaiso ea ho mamella liphoso, ho thehoa "phela" ea lihlopha tsa lihlopha, 'me Primary e ka falla butle-butle pakeng tsa lisebelisoa tse fapaneng. Mohlala, software ea Patroni ka boeona e qala Primary ho node e khethiloeng ka mokhoa o sa reroang. IBS ha e na mokhoa oa ho latela sena ka ntle ho lebokose, 'me haeba tlhophiso e fetoha, lits'ebetso lia senyeha. Ke hore, ho kenyelletsoa ha taolo ea kantle ho thibela ISR ho sebetsa ka katleho, hobane seva sa taolo ha se utloisise hore na data e lokela ho kopitsoa hokae le hore na ke efe.

Bothata bo bong ke ts'ebetsong ea backup ho Postgres. E ea khoneha ka ho lahla, 'me e sebetsa ho li-database tse nyenyane. Empa litsing tse kholo tsa marang-rang, ho lahla ho nka nako e telele, ho hloka lisebelisoa tse ngata mme ho ka lebisa ho hloleheng ha mohlala oa database.

Backup ea faele e lokisa boemo, empa litsing tse kholo tsa polokelo ea litaba e ea lieha hobane e sebetsa ka mokhoa o nang le khoele e le 'ngoe. Ho phaella moo, barekisi ba na le lithibelo tse ling tse eketsehileng. Mohlomong u ke ke ua sebelisa li-backups tsa faele le ho lahla ka nako e le 'ngoe, kapa deduplication ha e tšehetsoe. Ho na le mathata a mangata, 'me hangata ho bonolo ho khetha DBMS e theko e boima empa e netefalitsoe ho e-na le Postgres.

Ha ho na moo u ka ikhulang teng! Baetsi ba Moscow ba morao!

Leha ho le joalo, haufinyane sehlopha sa rona se ile sa tobana le phephetso e boima: morerong oa ho theha AIS OSAGO 2.0, moo re entseng lisebelisoa tsa IT, bahlahisi ba khethile PostgreSQL bakeng sa tsamaiso e ncha.

Ho bonolo haholo ho baetsi ba li-software tse kholo ho sebelisa litharollo tsa "mohloli" tse bulehileng. Facebook e na le litsebi tse lekaneng ho tšehetsa ts'ebetso ea DBMS ena. 'Me tabeng ea RSA, mesebetsi eohle ea "letsatsi la bobeli" e ile ea oela mahetleng a rona. Re ne re hlokoa ho etsa bonnete ba ho mamella liphoso, ho bokella sehlopha, 'me, ehlile, ho theha backup. The logic ea ketso e ne e le tjena:

  • Ruta SRK ho etsa li-backups ho tsoa ho Primary node ea cluster. Ho etsa sena, SRK e tlameha ho e fumana - ho bolelang ho kopanngoa le tharollo ea tsamaiso ea lihlopha tsa PostgreSQL e hlokahalang. Tabeng ea RSA, software ea Patroni e ne e sebelisetsoa sena.
  • Etsa qeto ea mofuta oa "backup" ho latela boholo ba data le litlhoko tsa ho hlaphoheloa. Ka mohlala, ha o hloka ho tsosolosa maqephe ka mokhoa o fokolang, sebelisa ho lahla, 'me haeba li-database li le khōlō' me ha ho hlokahale tsosoloso ea granular, sebetsa boemong ba faele.
  • Hokela monyetla oa ho boloka "block" tharollong ea ho etsa kopi ea "backup" ka mokhoa o nang le likhoele tse ngata.

Ka nako e ts'oanang, qalong re ne re ikemiselitse ho theha sistimi e sebetsang le e bonolo ntle le lisebelisoa tse mpe tsa likarolo tse ling. Ho fokotseha ha lithupa, ho fokotsa mosebetsi ho basebetsi le ho fokotsa kotsi ea ho hloleha ha IBS. Hang-hang re ile ra qhelela ka thoko mekhoa e neng e sebelisa Veeam le RMAN, hobane litharollo tse peli li se li ntse li fana ka maikutlo a ho se tšepahale ha sistimi.

Boselamose bo fokolang bakeng sa khoebo

Kahoo, re ne re hloka ho netefatsa bekapo e tšepahalang bakeng sa lihlopha tse 10 tsa li-node tse 3 e 'ngoe le e 'ngoe, e nang le meaho e ts'oanang e bonts'itsoeng setsing sa data sa backup. Litsi tsa data ho ea ka PostgreSQL li sebetsa ka molao-motheo o sebetsang. Kakaretso ea boholo ba database e ne e le 50 TB. Sistimi efe kapa efe ea taolo ea boemo ba khoebo e ka sebetsana le sena habonolo. Empa tlhokomeliso ke hore qalong Postgres ha e na leseli bakeng sa tšebelisano e felletseng le e tebileng le lits'ebetso tsa backup. Ka hona, re ile ra tlameha ho batla tharollo eo qalong e neng e e-na le ts'ebetso e phahameng ka ho fetisisa hammoho le PostgreSQL, le ho ntlafatsa tsamaiso.

Re ile ra tšoara "hackathon" tse 3 tsa ka hare - re ile ra sheba tsoelo-pele e fetang mashome a mahlano, ra li leka, ra etsa liphetoho mabapi le likhopolo-taba tsa rona, 'me ra li leka hape. Kamora ho hlahloba likhetho tse fumanehang, re ile ra khetha Commvault. Ka ntle ho lebokose, sehlahisoa sena se ka sebetsa ka mokhoa o bonolo oa ho kenya lihlopha tsa PostgreSQL, 'me mohaho oa eona o bulehileng o ile oa phahamisa tšepo (e neng e nepahetse) bakeng sa tsoelo-pele e atlehileng le ho kopanya. Commvault e ka boela ea boloka li-logs tsa PostgreSQL. Mohlala, Veritas NetBackup ho latela PostgreSQL e ka etsa likopi tse felletseng feela.

Tse ling mabapi le meralo. Li-server tsa tsamaiso ea Commvault li kentsoe setsing se seng le se seng sa lintlha tse peli tsa tlhophiso ea CommServ HA. Sistimi e bonoa ka seiponeng, e laoloa ka khomphutha e le 'ngoe mme, ho tloha ponong ea HA, e fihlela litlhoko tsohle tsa khoebo.

Mokhoa oa ho kenya "mahala" PostgreSQL tikolohong e thata ea khoebo
Re boetse re hlahisitse li-server tse peli tsa media setsing se seng le se seng sa data, moo re hokahaneng le li-disk le lilaebrari tsa theipi tse nehetsoeng ka ho khetheha bakeng sa li-backups ka SAN ka Fiber Channel. Mananeo a atolositsoeng a deduplication a netefalitse mamello ea liphoso tsa li-server tsa media, mme ho hokela seva ka seng ho CSV ka 'ngoe ho nolofalletse ts'ebetso e tsoelang pele haeba karolo efe kapa efe e hlolehile. Mehaho ea tsamaiso e lumella bekapo hore e tsoele pele le haeba e 'ngoe ea litsi tsa data e oa.

Patroni o hlalosa node ea Primary bakeng sa sehlopha ka seng. E ka ba node efe kapa efe ea mahala setsing sa data - empa haholo. Ho bekapo, li-node tsohle ke tsa Bobeli.

E le hore Commvault e utloisise hore na ke sebaka sefe sa sehlopha sa mantlha, re ile ra kopanya sistimi (ka lebaka la meralo e bulehileng ea tharollo) le Postgres. Bakeng sa morero ona, ho ile ha etsoa sengoloa se tlalehang sebaka sa hajoale sa node ea mantlha ho seva sa taolo ea Commvault.

Ka kakaretso, mokhoa ona o shebahala tjena:

Patroni o khetha Primary → Keepalived o nka sehlopha sa IP ebe o tsamaisa sengoloa → moemeli oa Commvault sebakeng se khethiloeng sa sehlopha se fumana tsebiso ea hore ena ke eona ea mantlha → Commvault e lokisa ka bo eona bekapo ka har'a moreki oa pseudo.

Mokhoa oa ho kenya "mahala" PostgreSQL tikolohong e thata ea khoebo
Molemo oa mokhoa ona ke hore tharollo ha e ame ho tsitsisa, ho nepahala ha li-log, kapa ho hlaphoheloa ha mohlala oa Postgres. E boetse e senyeha habonolo, hobane ha ho sa hlokahala ho lokisa li-node tsa Commvault Primary le Secondary. Ho lekane hore tsamaiso e utloisise hore na Primary e hokae, 'me palo ea li-node e ka eketsoa hoo e batlang e le boleng leha e le bofe.

Tharollo ha e iketse eka e nepahetse ebile e na le mekhelo ea eona. Commvault e ka boloka mohlala oohle feela, eseng li-database tsa motho ka mong. Ka hona, mohlala o arohaneng o entsoe bakeng sa database ka 'ngoe. Bareki ba 'nete ba kopantsoe ho ba bareki ba pseudo. Moreki e mong le e mong oa pseudo oa Commvault ke sehlopha sa UNIX. Li-cluster nodes tseo moemeli oa Commvault bakeng sa Postgres a kentsoeng ho tsona. Ka lebaka leo, li-node tsohle tsa pseudo-client li tšehetsoa joalo ka mohlala o le mong.

Ka har'a moreki e mong le e mong oa pseudo, node e sebetsang ea sehlopha e bontšitsoe. Sena ke seo tharollo ea rona ea kopanyo bakeng sa Commvault e se hlalosang. Molao-motheo oa ts'ebetso ea ona o bonolo haholo: haeba sehlopha sa IP se phahamiselitsoe node, sengoloa se beha paramente ea "node e sebetsang" ho komporo ea moemeli oa Commvault - ha e le hantle, sengoloa se beha "1" karolong e hlokahalang ea mohopolo. . Moemeli o fetisetsa data ena ho CommServe, 'me Commvault e etsa bekapo ho tsoa sebakeng se lakatsehang. Ho phaella moo, ho nepahala ha tlhophiso ho hlahlojoa boemong ba script, ho thusa ho qoba liphoso ha u qala bekapo.

Ka nako e ts'oanang, li-database tse kholo li tšehetsoa ka li-blocks ho pholletsa le likhoele tse ngata, ho kopana le RPO le litlhoko tsa fensetere tsa bekapo. Mojaro oa tsamaiso ha o na thuso: Likopi tse feletseng ha li hlahe hangata, ka matsatsi a mang ho bokelloa feela li-log, le nakong ea mojaro o tlaase.

Ka tsela, re sebelisitse maano a arohaneng bakeng sa ho boloka li-archive tsa PostgreSQL - li bolokoa ho latela melao e fapaneng, li kopitsoa ho latela kemiso e fapaneng, 'me ha li khone ho etsa deduplication, hobane li-log tsena li na le data e ikhethang.

Ho etsa bonnete ba ho ts'oara lits'ebetso tsohle tsa IT, bareki ba fapaneng ba faele ba Commvault ba kentsoe sebakeng se seng le se seng sa lihlopha. Ha li kenye lifaele tsa Postgres ho li-backups mme li etselitsoe feela OS le li-backups tsa ts'ebeliso. Karolo ena ea data e boetse e na le leano la eona le nako ea polokelo.

Mokhoa oa ho kenya "mahala" PostgreSQL tikolohong e thata ea khoebo
Hajoale, IBS ha e ame litšebeletso tsa tlhahiso, empa haeba maemo a fetoha, Commvault e ka thusa ho fokotsa mojaro.

E ntle? Ho lokile!

Kahoo, ha rea ​​fumana feela sesebelisoa se sebetsang, empa hape le bekapo ea boiketsetso e felletseng bakeng sa ts'ebetso ea sehlopha sa PostgreSQL, 'me e fihlela litlhoko tsohle tsa mehala ea likhoebo.

Mekhahlelo ea RPO le RTO ea hora ea 1 le lihora tsa 2 e koahetsoe ka moeli, e leng se bolelang hore tsamaiso e tla lumellana le bona esita le ka keketseho e kholo ea palo ea data e bolokiloeng. Ho fapana le lipelaelo tse ngata, PostgreSQL le tikoloho ea likhoebo li ile tsa lumellana haholo. 'Me joale re tseba ho tsoa phihlelong ea rona hore ho boloka li-DBMS tse joalo ho ka khoneha ka mefuta e mengata ea litlhophiso.

Ha e le hantle, tseleng ena re ne re tlameha ho roala lieta tse supileng tsa tšepe, ho hlōla mathata a mangata, ho hata lirakeng tse 'maloa le ho lokisa liphoso tse' maloa. Empa joale mokhoa ona o se o lekoa mme o ka sebelisoa ho kenya ts'ebetsong Open Source ho e-na le DBMS ea mong'a maemo a thata a khoebo.

Na u lekile ho sebetsa le PostgreSQL sebakeng sa khoebo?

Bangoli:

Oleg Lavrenov, moenjiniere oa moralo oa lisebelisoa tsa polokelo ea data, Jet Infosystems

Dmitry Erykin, moenjiniere oa moralo oa litsamaiso tsa likhomphutha ho Jet Infosystems

Source: www.habr.com

Eketsa ka tlhaloso