Maitiro ekukwana "yemahara" PostgreSQL munzvimbo ine hutsinye bhizinesi

Vanhu vazhinji vanoziva iyo PostgreSQL DBMS, uye yakazviratidza mune zvidiki zvimisikidzo. Nekudaro, maitiro akananga kuOpen Source ave kuwedzera kujeka, kunyangwe kana zvasvika kumakambani makuru uye zvinodiwa zvebhizinesi. Muchinyorwa chino tichakuudza nzira yekubatanidza Postgres munharaunda yemakambani uye kugovera ruzivo rwedu rwekugadzira backup system (BSS) yeiyi dhatabhesi uchishandisa iyo Commvault backup system semuenzaniso.

Maitiro ekukwana "yemahara" PostgreSQL munzvimbo ine hutsinye bhizinesi
PostgreSQL yakatoratidza kukosha kwayo - iyo DBMS inoshanda zvikuru, inoshandiswa nemafashoni emabhizinesi edhijitari seAlibaba uye TripAdvisor, uye kushomeka kwemari yerezinesi kunoita kuti ive imwe nzira inoedza kune dzakaita seMS SQL kana Oracle DB. Asi patinongotanga kufunga nezvePostgreSQL muBusiness landscape, tinobva tapinda mune zvakaomesesa zvinodiwa: "Zvakadini nekugadzirisa kukanganisa kushivirira? kudzivisa njodzi? kupi kutarisisa kwakadzama? Zvakadini neautomated backups? Zvakadini nekushandisa maraibhurari ematepi zvakananga uye pane chechipiri chekuchengetera?"

Maitiro ekukwana "yemahara" PostgreSQL munzvimbo ine hutsinye bhizinesi
Kune rimwe divi, PostgreSQL haina akavakirwa-mukati maturusi ekuchengetedza, senge "vakuru" maDBMS akadai seRMAN muOracle DB kana SAP Database Backup. Kune rimwe divi, vatengesi vemakambani ekuchengetedza masisitimu (Veeam, Veritas, Commvault) kunyangwe vachitsigira PostgreSQL, kutaura zvazviri vanongoshanda neimwe (kazhinji yakamira) gadziriso uye neseti yezvirambidzo zvakasiyana.

Backup masisitimu akagadzirirwa zvakanyanya kuPostgreSQL, akadai saBarman, Wal-g, pg_probackup, anonyanya kufarirwa mukumisikidzwa kudiki kwePostgreSQL DBMS kana uko kunorema backups yezvimwe zvinhu zveIT landscape zvisingadiwi. Semuenzaniso, kuwedzera kuPostgreSQL, zvivakwa zvinogona kusanganisira maseva emuviri uye chaiwo, OpenShift, Oracle, MariaDB, Cassandra, nezvimwe. Zvinokurudzirwa kutsigira zvese izvi nechishandiso chakafanana. Kuisa mhinduro yakaparadzana chete yePostgreSQL ipfungwa yakaipa: iyo data ichakopwa kumwe kudhisiki, uyezve inoda kubviswa kumatepi. Iyi backup kaviri inowedzera nguva yekuchengetedza, uye zvakare, zvakanyanya, nguva yekudzoreredza.

Mune mhinduro yebhizinesi, backup yekumisikidza inoitika neimwe nhamba yemanodhi musumbu rakatsaurirwa. Panguva imwecheteyo, semuenzaniso, Commvault inogona chete kushanda neaviri-node cluster, umo Primary neSekondari zvakapihwa kune dzimwe node. Uye zvinongonzwisisika kuchengetedza kubva kuPuraimari, nekuti backup kubva kuSekondari ine painogumira. Nekuda kwehunhu hweDBMS, dump haina kugadzirwa paSekondari, uye saka mukana chete wekuchengetedza faira unosara.

Kuti uderedze njodzi yenguva yekudzikira, paunenge uchigadzira kukanganisa-kushivirira system, "kurarama" cluster configuration inogadzirwa, uye Primary inogona kutama zvishoma nezvishoma pakati pemaseva akasiyana. Semuenzaniso, Patroni software pachayo inotangisa Primary pane yakasarudzika yakasarudzwa cluster node. Iyo IBS haina nzira yekutevera izvi kunze kwebhokisi, uye kana iyo gadziriso ikachinja, maitiro anoputsika. Ndiko kuti, kuiswa kwekutonga kwekunze kunodzivirira ISR kushanda zvakanaka, nokuti sevha yekutonga hainzwisisi kuti kupi uye ndeipi data inoda kukopwa kubva.

Rimwe dambudziko nderekuitwa kwe backup muPostgres. Zvinogoneka kuburikidza nekurasira, uye inoshanda pane diki dhatabhesi. Asi mune yakakura dhatabhesi, iyo yekurasa inotora nguva yakareba, inoda yakawanda zviwanikwa uye inogona kutungamira mukukundikana kweiyo database muenzaniso.

Kuchengetedza faira kunogadzirisa mamiriro acho ezvinhu, asi pane dhatabhesi hombe inononoka nekuti inoshanda mune imwechete-tambo mode. Mukuwedzera, vatengesi vane nhamba yezvimwe zvirambidzo. Pamwe iwe haugone kushandisa faira uye kurasa ma backups panguva imwe chete, kana kudonhedza hakutsigirwe. Kune matambudziko akawanda, uye kazhinji zviri nyore kusarudza DBMS inodhura asi yakaratidza panzvimbo yePostgres.

Hapana kwekudzokera! Vagadziri veMoscow vari kumashure!

Nekudaro, munguva pfupi yapfuura timu yedu yakatarisana nedambudziko rakaoma: mupurojekiti yekugadzira AIS OSAGO 2.0, kwatakagadzira IT masisitimu, vagadziri vakasarudza PostgreSQL yehurongwa hutsva.

Zviri nyore kune vanogadzira software hombe kushandisa "maitiro" yakavhurika-sosi mhinduro. Facebook ine nyanzvi dzakakwana kutsigira kushanda kweDBMS iyi. Uye munyaya yeRSA, mabasa ose e "zuva rechipiri" akawira pamapfudzi edu. Isu taidikanwa kuti tive nechokwadi chekushivirira kukanganisa, kuunganidza sumbu uye, zvechokwadi, kumisikidza backup. Iyo logic yekuita yaive inotevera:

  • Dzidzisa iyo SRK kugadzira backups kubva kuPrimary node yesumbu. Kuti uite izvi, iyo SRK inofanirwa kuiwana - zvinoreva kubatanidzwa neimwe kana imwe PostgreSQL cluster management solution inodiwa. Panyaya yeRSA, Patroni software yakashandiswa pane izvi.
  • Sarudza pamhando ye backup zvichienderana nehuwandu hwe data uye kudzoreredza zvinodiwa. Semuenzaniso, kana iwe uchida kudzoreredza mapeji granularly, shandisa dump, uye kana dhatabhesi yakakura uye granular kudzoreredza hakudiwi, shanda pamwero wefaira.
  • Batanidza mukana weiyo block backup kune mhinduro kuti ugadzire kopi yekuchengetedza mune akawanda-akarukwa maitiro.

Panguva imwecheteyo, isu takatanga kugadzira inoshanda uye yakapfava sisitimu isina hutsinye hunotyisa hwezvimwe zvikamu. Madondoro mashoma, kushomeka kwebasa pavashandi uye kunoderedza njodzi yekutadza kweIBS. Isu takabva tangobvisa nzira dzakashandisa Veeam neRMAN, nekuti seti yemhinduro mbiri yatoratidza kusavimbika kwehurongwa.

Mashiripiti mashoma ebhizinesi

Saka, isu taida kuvimbisa kuchengetedza kwakavimbika kwemasumbu gumi emanodhi matatu ega ega, aine masikirwo akafanana akaratidzwa munzvimbo yekuchengetedza data. Data nzvimbo maererano nePostgreSQL inoshanda pane inoshanda-passive musimboti. Saizi yese yedatabase yaive 10 TB. Chero corporate-level control system inogona kurarama neizvi zviri nyore. Asi caveat ndeyekuti pakutanga Postgres haina ruzivo rwekuzara uye kwakadzika kuenderana ne backup masisitimu. Naizvozvo, taifanira kutsvaga mhinduro iyo pakutanga yaive nehupamhi hwekushanda pamwe chete nePostgreSQL, uye nekunatsa sisitimu.

Takabata "hackathons" nhatu dzemukati - takatarisa zviitiko zvinopfuura makumi mashanu, tikazviedza, takaita shanduko maererano nemafungiro edu, uye tikazviedza zvakare. Mushure mekuongorora sarudzo dziripo, takasarudza Commvault. Kunze kwebhokisi, chigadzirwa ichi chaigona kushanda neiyo yakapusa PostgreSQL cluster yekumisikidza, uye yakavhurika dhizaini yakasimudza tariro (iyo yairuramiswa) yebudiriro nekubatanidza. Commvault inogona zvakare kuchengetedza PostgreSQL matanda. Semuyenzaniso, Veritas NetBackup maererano nePostgreSQL inogona kungoita mabhapu akazara.

Zvimwe pamusoro pezvivakwa. Commvault manejimendi maseva akaiswa mune imwe neimwe yenzvimbo mbiri dzedata muCommServ HA kumisikidzwa. Iyo sisitimu inotariswa, inotungamirwa kuburikidza nekoni imwe uye, kubva paHA point yekuona, inosangana nezvose zvinodiwa nebhizinesi.

Maitiro ekukwana "yemahara" PostgreSQL munzvimbo ine hutsinye bhizinesi
Isu takatangisawo maviri emuviri midhiya maseva munzvimbo yega yega data, kwatakabatanidza dhisiki arrays uye tepi maraibhurari akatsaurirwa zvakagadzirirwa ma backups kuburikidza neSAN kuburikidza neFiber Channel. Yakawedzerwa deduplication dhatabhesi yakavimbisa kukanganisa kushivirira kwemaseva emidhiya, uye kubatanidza sevha yega yega kuCSV yega yega inogonesa kuenderera mberi kushanda kana chero chikamu chatadza. Iyo sisitimu yekuvaka inobvumira backup kuti ienderere mberi kunyangwe imwe yedata data ikadonha.

Patroni anotsanangura Primary node yesumbu rega rega. Inogona kuve chero yemahara node munzvimbo yedata - asi zvakanyanya. Mune backup, node dzese dziri Sekondari.

Kuti Commvault inzwisise kuti ndeipi cluster node iri Primary, isu takabatanidza sisitimu (nekuda kwekuvhurika kwekuvaka kwemhinduro) nePostgres. Nechinangwa ichi, script yakagadzirwa inoshuma nzvimbo iripo yePrimary node kuCommvault management server.

Kazhinji, maitiro anoita seizvi:

Patroni anosarudza Primary β†’ Keepalived inotora IP cluster uye inomhanya script β†’ Commvault mumiririri pane yakasarudzwa cluster node inogamuchira chiziviso chokuti iyi ndiyo Primary β†’ Commvault inogadzirisa zvakare kuchengetedza mukati me pseudo-client.

Maitiro ekukwana "yemahara" PostgreSQL munzvimbo ine hutsinye bhizinesi
Chakanakira nzira iyi ndechekuti mhinduro haina kukanganisa kuenderana, kurongeka kwematanda, kana kudzoreredza kweiyo Postgres muenzaniso. Zvakare zvakareruka nyore, nekuti hazvichakoshe kugadzirisa maCommvault Primary neSekondari node. Zvakakwana kuti sisitimu inonzwisisa kuti Primary iripi, uye nhamba yemanodhi inogona kuwedzerwa kusvika kunenge chero kukosha.

Mhinduro yacho hainyepedzeri kuva yakanaka uye ine nuances yayo. Commvault inogona kungo chengetedza iyo yese muenzaniso, uye kwete yega dhatabhesi. Naizvozvo, imwe muenzaniso wakasiyana wakagadzirwa kune yega yega database. Vatengi chaivo vanosanganiswa kuita virtual pseudo-clients. Imwe neimwe Commvault pseudo-mutengi isumbu reUNIX. Iwo masumbu node painoiswa Commvault mumiriri wePostgres anowedzerwa kwairi. Nekuda kweizvozvo, ese chaiwo ma node eiyo pseudo-mutengi anotsigirwa semuenzaniso mumwe.

Mukati mese pseudo-client, iyo inoshanda node ye cluster inoratidzwa. Izvi ndizvo zvinotsanangurwa nemhinduro yedu yekubatanidza yeCommvault. Nheyo yekushanda kwayo iri nyore: kana IP yesumbu yakasimudzwa pane node, script inoisa "inoshingaira node" parameter muCommvault agent binary - kutaura zvazviri, script inoisa "1" muchikamu chinodiwa chendangariro. . Mumiririri anoendesa iyi data kuCommServe, uye Commvault inogadzira backup kubva kune inodiwa node. Mukuwedzera, iko kurongeka kwekugadzirisa kunotariswa pane script level, zvichibatsira kudzivirira zvikanganiso paunotanga kuchengetedza.

Panguva imwecheteyo, dhatabhesi hombe dzinotsigirwa mumabhuraki mukati meshinda dzakawanda, kusangana neRPO uye nekuchengetedza hwindo zvinodiwa. Kuremerwa pahurongwa hahuna kukosha: Makopi akazara haaitike kakawanda, pane mamwe mazuva matanda chete anounganidzwa, uye panguva dzemutoro wakaderera.

Nenzira, isu takashandisa marongero akapatsanurwa ekutsigira PostgreSQL archive logs - anochengetwa zvinoenderana nemitemo yakasiyana, akakopwa zvinoenderana neyakasiyana hurongwa, uye kudhirowa hakugoneke kwavari, sezvo matanda aya ane akasiyana data.

Kuti ive nechokwadi chekuenderana kune yese IT zvivakwa, yakaparadzana Commvault faira vatengi vanoiswa pane imwe neimwe yemasumbu node. Ivo havabatanidzi mafaira ePostgres kubva kune backups uye anoitirwa chete OS uye application backups. Ichi chikamu che data zvakare chine mutemo wayo uye nguva yekuchengetedza.

Maitiro ekukwana "yemahara" PostgreSQL munzvimbo ine hutsinye bhizinesi
Parizvino, IBS haikanganisi masevhisi ekugadzira, asi kana mamiriro acho akachinja, Commvault inogona kugonesa kudzikamisa mutoro.

Zvakanaka here? Kugona!

Saka, isu hatina kugamuchira chete inoshanda, asi zvakare yakazara otomatiki backup yePostgreSQL cluster yekumisikidza, uye inosangana nezvose zvinodiwa zvekufona kwebhizinesi.

Iyo RPO neRTO parameters yeawa 1 neawa 2 yakafukidzwa nemargin, izvo zvinoreva kuti hurongwa huchaenderana navo kunyange nekuwedzera kukuru kwehuwandu hwe data yakachengetwa. Kusiyana nekusahadzika kwakawanda, PostgreSQL uye nharaunda yebhizinesi yakave inonyatso kuenderana. Uye ikozvino isu tinoziva kubva kune yedu ruzivo kuti backup yeDBMSs yakadaro inogoneka mune dzakasiyana siyana magadzirirwo.

Ehe, munzira iyi taifanira kupfeka mapeya manomwe emabhutsu esimbi, kukunda akati wandei matambudziko, kutsika maraki akati wandei uye kugadzirisa akati wandei zvikanganiso. Asi ikozvino nzira yacho yakatoedzwa uye inogona kushandiswa kushandisa Open Source panzvimbo yeDBMS yevaridzi mumamiriro ezvinhu akaoma ebhizinesi.

Wakamboedza kushanda nePostgreSQL munzvimbo yemakambani?

Vanyori:

Oleg Lavrenov, dhizaini mainjiniya ekuchengetedza data masisitimu, Jet Infosystems

Dmitry Erykin, dhizaini injiniya wemakomputa masisitimu paJet Infosystems

Source: www.habr.com

Voeg