Conas PostgreSQL “saor in aisce” a fheistiú i dtimpeallacht chrua fiontraíochta

Tá go leor daoine eolach ar DBMS PostgreSQL, agus tá sé cruthaithe i suiteálacha beaga. Mar sin féin, tá an treocht i dtreo Foinse Oscailte tar éis éirí níos soiléire, fiú nuair a thagann sé le cuideachtaí móra agus ceanglais fiontair. San Airteagal seo inseoimid duit conas Postgres a chomhtháthú i dtimpeallacht chorparáideach agus roinnfimid ár dtaithí ar chóras cúltaca (BSS) a chruthú don bhunachar sonraí seo ag baint úsáide as an gcóras cúltaca Commvault mar shampla.

Conas PostgreSQL “saor in aisce” a fheistiú i dtimpeallacht chrua fiontraíochta
Tá a luach cruthaithe cheana féin ag PostgreSQL - oibríonn an DBMS go hiontach, úsáideann gnólachtaí digiteacha faiseanta cosúil le Alibaba agus TripAdvisor é, agus mar gheall ar an easpa táillí ceadúnaithe tá sé ina rogha malartach tempting ar arrachtaigh mar MS SQL nó Oracle DB. Ach a luaithe a thosaímid ag smaoineamh ar PostgreSQL i dtírdhreach na Fiontraíochta, déanaimid dianriachtanais láithreach: “Cad faoi lamháltas locht cumraíochta? friotaíocht tubaiste? cá bhfuil an mhonatóireacht chuimsitheach? Cad mar gheall ar chúltacaí uathoibrithe? Cad faoi leabharlanna téip a úsáid go díreach agus ar stóráil thánaisteach?”

Conas PostgreSQL “saor in aisce” a fheistiú i dtimpeallacht chrua fiontraíochta
Ar thaobh amháin, níl uirlisí cúltaca ionsuite ag PostgreSQL, cosúil le DBMSanna “fásta” mar RMAN in Oracle DB nó Cúltaca Bunachar Sonraí SAP. Ar an láimh eile, soláthraithe córais chúltaca corparáidí (Veeam, Veritas, Commvault) cé go dtacaíonn siad le PostgreSQL, i ndáiríre ní oibríonn siad ach le cumraíocht áirithe (de ghnáth standalone) agus le sraith srianta éagsúla.

Tá an-tóir ar chórais chúltaca atá saindeartha do PostgreSQL, mar shampla Barman, Wal-g, pg_probackup, i suiteálacha beaga de DBMS PostgreSQL nó nuair nach bhfuil gá le cúltacaí troma d’eilimintí eile den tírdhreach TF. Mar shampla, i dteannta le PostgreSQL, féadfaidh an bonneagar freastalaithe fisiceacha agus fíorúla, OpenShift, Oracle, MariaDB, Cassandra, etc. Tá sé inmholta tacaíocht a thabhairt do seo go léir le huirlis choiteann. Is droch-smaoineamh é réiteach ar leith a shuiteáil go heisiach le haghaidh PostgreSQL: déanfar na sonraí a chóipeáil áit éigin ar an diosca, agus ansin ní mór é a bhaint go téip. Méadaíonn an cúltaca dúbailte seo an t-am cúltaca, agus freisin, níos tábhachtaí fós, an t-am téarnaimh.

I réiteach fiontair, tarlaíonn cúltaca na suiteála le líon áirithe nóid i mbraisle tiomnaithe. Ag an am céanna, mar shampla, ní féidir le Commvault oibriú ach le braisle dhá nód, ina bhfuil Bunscoil agus Meánscoileanna sannta go docht do nóid áirithe. Agus ní dhéanann sé ciall ach cúltaca a dhéanamh ó Bhunscoileanna, toisc go bhfuil teorainneacha ag baint le cúltaca ón Meánscoil. Mar gheall ar shainiúlachtaí an DBMS, ní chruthaítear dumpáil ar an Tánaisteach, agus mar sin níl ach an fhéidearthacht ann go mbeidh cúltaca comhaid ann.

Chun an baol a bhaineann le ham neamhfhónaimh a laghdú, nuair a chruthaítear córas fabht-fhulangach, cruthaítear cumraíocht bhraisle “beo”, agus is féidir le Bunscoil aistriú de réir a chéile idir freastalaithe éagsúla. Mar shampla, seolann bogearraí Patroni féin Bunscoil ar nód braisle roghnaithe go randamach. Níl aon bhealach ag an IBS é seo a rianú as an mbosca, agus má athraíonn an chumraíocht, briseann na próisis. Is é sin, cuireann tabhairt isteach rialú seachtrach cosc ​​ar an ISR oibriú go héifeachtach, toisc nach dtuigeann an freastalaí rialaithe cén áit agus cad iad na sonraí ar gá iad a chóipeáil uathu.

Fadhb eile is ea cur i bhfeidhm cúltaca i Postgres. Is féidir trí dhumpáil, agus oibríonn sé ar bhunachair shonraí beaga. Ach i mbunachair shonraí móra, tógann an dumpáil go leor ama, teastaíonn a lán acmhainní de agus d’fhéadfadh teip an bhunachar sonraí a bheith mar thoradh air.

Ceartaíonn cúltaca comhaid an scéal, ach tá sé mall ar bhunachair shonraí mhóra toisc go n-oibríonn sé i mód aon-snáithithe. Ina theannta sin, tá roinnt srianta breise ag díoltóirí. Ní féidir leat cúltacaí comhaid agus dumpála a úsáid ag an am céanna, nó ní thacaítear le dídhúbláil. Tá go leor fadhbanna ann, agus is minic a bhíonn sé níos éasca DBMS daor ach cruthaithe a roghnú in ionad Postgres.

Níl aon áit le cúlú! Tá forbróirí Moscó taobh thiar!

Mar sin féin, le déanaí bhí dúshlán deacair ag ár bhfoireann: sa tionscadal chun AIS OSAGO 2.0 a chruthú, áit ar chruthaigh muid an bonneagar TF, roghnaigh na forbróirí PostgreSQL don chóras nua.

Tá sé i bhfad níos éasca d’fhorbróirí bogearraí móra réitigh foinse oscailte “trenúla” a úsáid. Tá go leor speisialtóirí ag Facebook chun tacú le feidhmiú an DBMS seo. Agus i gcás an RSA, thit cúraimí uile an “dara lá” ar ár gualainn. Ceanglaíodh orainn lamháltas lochtanna a chinntiú, braisle a chur le chéile agus, ar ndóigh, cúltaca a chur ar bun. Seo a leanas loighic na gníomhaíochta:

  • Múin don SRK cúltacaí a dhéanamh ó nód Bunscoile an bhraisle. Chun seo a dhéanamh, ní mór don SRK é a aimsiú - rud a chiallaíonn go bhfuil gá le comhtháthú le réiteach bainistíochta braisle PostgreSQL amháin nó eile. I gcás RSA, baineadh úsáid as bogearraí Patroni chuige seo.
  • Déan cinneadh ar an gcineál cúltaca bunaithe ar an méid sonraí agus riachtanais a ghnóthú. Mar shampla, nuair is gá duit leathanaigh a athbhunú go gráinneach, bain úsáid as dumpáil, agus má tá na bunachair shonraí mór agus nach bhfuil gá le hathchóiriú gráinneach, oibrigh ar leibhéal an chomhaid.
  • Ceangail an fhéidearthacht cúltaca bloc leis an réiteach chun cóip chúltaca a chruthú i mód il-snáithithe.

Ag an am céanna, leagamar amach ar dtús córas éifeachtach simplí a chruthú gan úim monstrous de chomhpháirteanna breise. Dá lú magairlí, is lú an t-ualach oibre ar an bhfoireann agus is lú an baol go dteipfidh ar IBS. Chuireamar as an áireamh láithreach cuir chuige a bhain úsáid as Veeam agus RMAN, mar go dtugann sraith de dhá réiteach le tuiscint cheana féin ar neamhiontaofacht an chórais.

Draíocht beag don fhiontar

Mar sin, bhí orainn cúltaca iontaofa a ráthú do 10 gcnuasach de 3 nód an ceann, agus an bonneagar céanna le feiceáil san ionad sonraí cúltaca. Oibríonn ionaid sonraí i dtéarmaí PostgreSQL ar an bprionsabal gníomhach-éighníomhach. Ba é méid iomlán an bhunachair shonraí ná 50 TB. Is féidir le haon chóras rialaithe ar leibhéal corparáideach dul i ngleic leis seo go héasca. Ach is é an caveat ná nach bhfuil aon chiall ag Postgres ar dtús maidir le comhoiriúnacht iomlán agus dhomhain le córais chúltaca. Dá bhrí sin, bhí orainn réiteach a lorg a raibh feidhmiúlacht uasta aige ar dtús i gcomhar le PostgreSQL, agus an córas a bheachtú.

Reáchtáladh 3 “hackathon” inmheánacha – d’fhéachamar ar níos mó ná caoga forbairt, rinneamar iad a thástáil, rinneamar athruithe maidir lenár hipitéisí, agus rinneamar iad a thástáil arís. Tar éis athbhreithniú a dhéanamh ar na roghanna atá ar fáil, roghnaigh muid Commvault. As an mbosca, d'fhéadfadh an táirge seo oibriú le suiteáil braisle PostgreSQL is simplí, agus d'ardaigh a ailtireacht oscailte dóchas (a bhí údar maith) le haghaidh forbairt agus comhtháthú rathúil. Is féidir le Commvault logaí PostgreSQL a chúltaca freisin. Mar shampla, ní féidir le Veritas NetBackup i dtéarmaí PostgreSQL ach cúltacaí iomlána a dhéanamh.

Tuilleadh faoin ailtireacht. Suiteáladh freastalaithe bainistíochta commvault i ngach ceann den dá ionad sonraí i gcumraíocht HA CommServ. Déantar an córas a scáthánú, a bhainistiú trí chonsól amháin agus, ó thaobh HA, comhlíonann sé gach riachtanas fiontair.

Conas PostgreSQL “saor in aisce” a fheistiú i dtimpeallacht chrua fiontraíochta
Sheolamar dhá fhreastalaí meán fisiceach freisin i ngach lárionad sonraí, lenar cheangail muid eagair dioscaí agus leabharlanna téipe atá tiomnaithe go sonrach do chúltacaí trí SAN trí Fiber Channel. Chinntigh bunachair shonraí leathnaithe dí-dhúblála lamháltas lochtanna ar fhreastalaithe meán, agus trí gach freastalaí a nascadh le gach CSV bhí sé ar chumas oibriú leanúnach má theip ar aon chomhpháirt. Ceadaíonn ailtireacht an chórais leanúint ar aghaidh le cúltaca fiú má thiteann ceann de na hionaid sonraí.

Sainmhíníonn Patroni nód Príomhúil do gach braisle. Féadfaidh sé a bheith ina nód saor in aisce ar bith sa lárionad sonraí - ach den chuid is mó amháin. Sa chúltaca, tá gach nóid Tánaisteach.

Ionas go dtuigfeadh Commvault cén nód braisle atá Bunscoile, rinneamar an córas a chomhtháthú (a bhuí le hailtireacht oscailte an réitigh) le Postgres. Chun na críche seo, cruthaíodh script a thuairiscíonn suíomh reatha an nód Phríomhúil don fhreastalaí bainistíochta Commvault.

Go ginearálta, breathnaíonn an próiseas mar seo:

Roghnaíonn Patroni Primary → Keepalived piocann sé an braisle IP agus ritheann sé an script → faigheann an gníomhaire Commvault ar an nód braisle roghnaithe fógra gurb é seo an Primary → Commvault athchumraíonn sé go huathoibríoch an cúltaca laistigh den bhraisle-chliant.

Conas PostgreSQL “saor in aisce” a fheistiú i dtimpeallacht chrua fiontraíochta
Is é an buntáiste a bhaineann leis an gcur chuige seo ná nach ndéanann an réiteach difear do chomhsheasmhacht, cruinneas na logaí nó aisghabháil shampla Postgres. Tá sé inscálaithe go héasca freisin, toisc nach bhfuil sé riachtanach a thuilleadh na nóid Commvault Bunscoile agus Tánaisteach a shocrú. Is leor go dtuigeann an córas cá bhfuil Bunscoil, agus is féidir líon na nóid a mhéadú go dtí beagnach aon luach.

Ní ligeann an réiteach go bhfuil sé idéalach agus tá a nuances féin aige. Ní féidir le Commvault ach cúltaca a dhéanamh den ásc iomlán, agus ní bunachair shonraí aonair. Mar sin, cruthaíodh sampla ar leith do gach bunachar sonraí. Comhcheanglaítear fíorchliant i gclianta bréagacha fíorúla. Is braisle UNIX é gach pseudo-cliaint Commvault. Cuirtear na nóid bhraisle sin ar a bhfuil an gníomhaire Commvault do Postgres suiteáilte leis. Mar thoradh air sin, tá gach nód fíorúil den chliant pseudo tacaíocht mar shampla amháin.

Laistigh de gach pseudo-client, léirítear nód gníomhach an bhraisle. Is é seo a shainíonn ár réiteach comhtháthaithe do Commvault. Tá prionsabal a oibríochta simplí go leor: má ardaítear braisle IP ar nód, socraíonn an script an paraiméadar “nód gníomhach” sa dhénártha gníomhaire Commvault - go deimhin, leagann an script “1” sa chuid riachtanach den chuimhne . Tarchuireann an gníomhaire na sonraí seo chuig CommServe, agus déanann Commvault cúltaca ón nód atá ag teastáil. Ina theannta sin, seiceáiltear cruinneas na cumraíochta ag leibhéal na scripte, rud a chabhraíonn le hearráidí a sheachaint agus cúltaca á thosú.

Ag an am céanna, déantar bunachair shonraí mhóra a thacú i mbloic trasna snáitheanna iolracha, ag comhlíonadh riachtanais RPO agus fuinneoige cúltaca. Tá an t-ualach ar an gcóras neamhshuntasach: Ní tharlaíonn cóipeanna iomlána chomh minic, ar laethanta eile ní bhailítear ach logaí, agus le linn tréimhsí ualach íseal.

Dála an scéil, tá beartais ar leith curtha i bhfeidhm againn chun logaí cartlainne PostgreSQL a thacú - déantar iad a stóráil de réir rialacha éagsúla, déantar iad a chóipeáil de réir sceidil dhifriúla, agus níl dídhúbláil cumasaithe dóibh, ós rud é go bhfuil sonraí uathúla sna logaí seo.

Chun comhsheasmhacht a chinntiú ar fud an bhonneagair TF ar fad, tá cliaint comhaid Commvault ar leithligh suiteáilte ar gach ceann de na nóid bhraisle. Eisíonn siad comhaid Postgres ó chúltacaí agus níl siad beartaithe ach le haghaidh cúltacaí OS agus feidhmchlár. Tá a beartas agus a tréimhse stórála féin ag an gcuid seo de na sonraí freisin.

Conas PostgreSQL “saor in aisce” a fheistiú i dtimpeallacht chrua fiontraíochta
Faoi láthair, ní dhéanann IBS difear do sheirbhísí táirgiúlachta, ach má thagann athrú ar an scéal, is féidir le Commvault teorannú ualaigh a chumasú.

An bhfuil sé go maith? Maith sibh!

Mar sin, ní hamháin go bhfuil cúltaca inoibrithe faighte againn, ach freisin cúltaca iomlán uathoibrithe le haghaidh suiteáil braisle PostgreSQL, agus comhlíonann sé na ceanglais go léir maidir le glaonna fiontair.

Tá na paraiméadair RPO agus RTO de 1 uair agus 2 uair an chloig clúdaithe le corrlach, rud a chiallaíonn go gcomhlíonfaidh an córas iad fiú le méadú suntasach ar líon na sonraí stóráilte. Murab ionann agus go leor amhras, d'éirigh le PostgreSQL agus an timpeallacht fiontraíochta a bheith sách comhoiriúnach. Agus anois tá a fhios againn ónár dtaithí féin gur féidir cúltaca a dhéanamh le haghaidh DBMSanna den sórt sin i raon leathan cumraíochtaí.

Ar ndóigh, feadh an chosáin seo bhí orainn seacht bpéire buataisí iarainn a chaitheamh, roinnt deacrachtaí a shárú, roinnt rácaí a chur i bhfeidhm agus roinnt botúin a cheartú. Ach anois tá an cur chuige tástáladh cheana féin agus is féidir é a úsáid chun Foinse Oscailte a chur i bhfeidhm in ionad DBMS dílseánaigh i gcoinníollacha crua fiontair.

An ndearna tú iarracht oibriú le PostgreSQL i dtimpeallacht chorparáideach?

Údair:

Oleg Lavrenov, innealtóir deartha córais stórála sonraí, Jet Infosystems

Dmitry Erykin, innealtóir deartha córais ríomhaireachta ag Jet Infosystems

Foinse: will.com

Add a comment