{"id":93878,"date":"2020-09-10T19:42:02","date_gmt":"2020-09-10T17:42:02","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/kak-vpisat-svobodnuyu-postgresql-v-surovoe-enterprise-okruzhenie"},"modified":"2020-09-10T19:42:02","modified_gmt":"2020-09-10T17:42:02","slug":"kak-vpisat-svobodnuyu-postgresql-v-surovoe-enterprise-okruzhenie","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kak-vpisat-svobodnuyu-postgresql-v-surovoe-enterprise-okruzhenie","title":{"rendered":"Jak integrovat 'volnou' PostgreSQL do p\u0159\u00edsn\u00e9ho podnikov\u00e9ho prost\u0159ed\u00ed","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Mnoz\u00ed jsou obezn\u00e1meni s datab\u00e1zov\u00fdm syst\u00e9mem PostgreSQL, kter\u00fd se osv\u011bd\u010dil na men\u0161\u00edch instalac\u00edch. Nicm\u00e9n\u011b trend p\u0159echodu na Open Source je st\u00e1le v\u00fdrazn\u011bj\u0161\u00ed, a to i ve vztahu k velk\u00fdm firm\u00e1m a podnikov\u00fdch po\u017eadavk\u016fm. V tomto \u010dl\u00e1nku se pod\u00edv\u00e1me na to, jak integrovat Postgres do podnikov\u00e9ho prost\u0159ed\u00ed, a pod\u011bl\u00edme se o zku\u0161enosti se vytvo\u0159en\u00edm syst\u00e9mu z\u00e1lohov\u00e1n\u00ed (ZK) pro tuto datab\u00e1zi na p\u0159\u00edkladu z\u00e1lohovac\u00edho syst\u00e9mu Commvault. <\/p>\n<p><img decoding=\"async\" alt=\"Jak integrovat &#039;volnou&#039; PostgreSQL do p\u0159\u00edsn\u00e9ho podnikov\u00e9ho prost\u0159ed\u00ed\" src=\"\/wp-content\/uploads\/2020\/09\/054cb60090c1b6df6da0010c5ba35f8b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nPostgreSQL ji\u017e prok\u00e1zala svou spolehlivost \u2014 datab\u00e1zov\u00fd syst\u00e9m skv\u011ble funguje, pou\u017e\u00edvaj\u00ed ho modern\u00ed digit\u00e1ln\u00ed podniky jako Alibaba a TripAdvisor, a absence licen\u010dn\u00edch poplatk\u016f ji \u010din\u00ed l\u00e1kavou alternativou k takov\u00fdm gigant\u016fm jako MS SQL nebo Oracle DB. Jakmile v\u0161ak za\u010dneme p\u0159em\u00fd\u0161let o PostgreSQL v kontextu podnik\u016f, okam\u017eit\u011b nar\u00e1\u017e\u00edme na p\u0159\u00edsn\u00e9 po\u017eadavky: \"Co t\u0159eba odolnost konfigurace? Odolnost proti katastrof\u00e1m? Kde je komplexn\u00ed monitorov\u00e1n\u00ed? Jak\u00e9 je automatizovan\u00e9 z\u00e1lohov\u00e1n\u00ed? Jak\u00e9 je pou\u017eit\u00ed p\u00e1skov\u00fdch knihoven jak p\u0159\u00edmo, tak jako sekund\u00e1rn\u00ed \u00falo\u017ei\u0161t\u011b?\"<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<img decoding=\"async\" alt=\"Jak integrovat &#039;volnou&#039; PostgreSQL do p\u0159\u00edsn\u00e9ho podnikov\u00e9ho prost\u0159ed\u00ed\" src=\"\/wp-content\/uploads\/2020\/09\/9b7e3d88c6e5488e1684239b546deb1b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNa jedn\u00e9 stran\u011b PostgreSQL nem\u00e1 vestav\u011bn\u00e9 n\u00e1stroje pro z\u00e1lohov\u00e1n\u00ed jako \"dosp\u011bl\u00e9\" datab\u00e1ze typu RMAN u Oracle DB nebo SAP Database Backup. Na druh\u00e9 stran\u011b, dodavatel\u00e9 korpor\u00e1tn\u00edch z\u00e1lohovac\u00edch syst\u00e9m\u016f (Veeam, Veritas, Commvault) i kdy\u017e podporuj\u00ed PostgreSQL, ve skute\u010dnosti pracuj\u00ed pouze s ur\u010ditou (obvykle standalone) konfigurac\u00ed a s r\u016fzn\u00fdmi omezen\u00edmi. <\/p>\n<p>Syst\u00e9my z\u00e1lohov\u00e1n\u00ed navr\u017een\u00e9 speci\u00e1ln\u011b pro PostgreSQL, jako jsou Barman, Wal-g, pg_probackup, jsou velmi popul\u00e1rn\u00ed v mal\u00fdch instalac\u00edch datab\u00e1ze PostgreSQL nebo tam, kde nejsou pot\u0159eba t\u011b\u017ek\u00e9 z\u00e1lohy dal\u0161\u00edch prvk\u016f IT prost\u0159ed\u00ed. Nap\u0159\u00edklad, krom\u011b PostgreSQL m\u016f\u017ee b\u00fdt v infrastruktu\u0159e fyzick\u00fd a virtu\u00e1ln\u00ed OpenShift, Oracle, MariaDB, Cassandra atd. V\u0161e by m\u011blo b\u00fdt z\u00e1lohov\u00e1no spole\u010dn\u00fdm n\u00e1strojem. Pou\u017eit\u00ed samostatn\u00e9ho \u0159e\u0161en\u00ed pouze pro PostgreSQL je ne\u0161\u0165astn\u00e1 my\u0161lenka: data budou n\u011bkde kop\u00edrov\u00e1na na disk a pak je t\u0159eba je p\u0159esunout na p\u00e1sku. Toto zdvojen\u00ed z\u00e1lohov\u00e1n\u00ed zvy\u0161uje dobu z\u00e1lohov\u00e1n\u00ed a, co je je\u0161t\u011b d\u016fle\u017eit\u011bj\u0161\u00ed, dobu obnovy. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/cs\/server\/\"   title=\"servery\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1900\">servery<\/a>, OpenShift, Oracle, MariaDB, Cassandra atd. Je dobr\u00e9 z\u00e1lohovat to v\u0161echno spole\u010dn\u00fdm n\u00e1strojem. Instalace samostatn\u00e9ho \u0159e\u0161en\u00ed pouze pro PostgreSQL je \u0161patn\u00fd n\u00e1pad: data se nejprve zkop\u00edruj\u00ed na disk a pot\u00e9 je pot\u0159eba je p\u0159ev\u00e9st na p\u00e1sku. Takov\u00e9 duplicitn\u00ed z\u00e1lohov\u00e1n\u00ed zvy\u0161uje dobu z\u00e1lohov\u00e1n\u00ed a tak\u00e9, co\u017e je mnohem kriti\u010dt\u011bj\u0161\u00ed, \u2013 obnovov\u00e1n\u00ed.<\/p>\n<p>V enterprise \u0159e\u0161en\u00ed se z\u00e1lohov\u00e1n\u00ed instalace prov\u00e1d\u00ed s ur\u010dit\u00fdm po\u010dtem uzl\u016f vyhrazen\u00e9ho clusteru. Nap\u0159\u00edklad, Commvault dok\u00e1\u017ee pracovat pouze s dvouuzlov\u00fdm clusterem, ve kter\u00e9m jsou Primary a Secondary pevn\u011b p\u0159i\u0159azeny k ur\u010dit\u00fdm uzl\u016fm. A smysl z\u00e1lohovat existuje pouze s Primary, proto\u017ee z\u00e1lohov\u00e1n\u00ed z Secondary m\u00e1 sv\u00e1 omezen\u00ed. Kv\u016fli vlastnostem DBMS se dump na Secondary nevytv\u00e1\u0159\u00ed, a proto zb\u00fdv\u00e1 pouze mo\u017enost souborov\u00e9 z\u00e1lohy.<\/p>\n<p>Aby se sn\u00ed\u017eila rizika v\u00fdpadku, p\u0159i vytv\u00e1\u0159en\u00ed odoln\u00e9ho syst\u00e9mu vznik\u00e1 \u201e\u017eiv\u00e1\u201c clusterov\u00e1 konfigurace, a Primary m\u016f\u017ee postupn\u011b migrovat mezi r\u016fzn\u00fdmi servery. Nap\u0159\u00edklad software Patroni s\u00e1m spou\u0161t\u00ed Primary na n\u00e1hodn\u011b vybran\u00e9m uzlu clusteru. S\u0158K nem\u00e1 zp\u016fsob, jak to sledovat \u201ez krabice\u201c, a pokud se m\u011bn\u00ed konfigurace, procesy se rozb\u00edjej\u00ed. To znamen\u00e1, \u017ee zaveden\u00ed extern\u00edho \u0159\u00edzen\u00ed br\u00e1n\u00ed S\u0158K efektivn\u011b fungovat, proto\u017ee \u0159\u00eddic\u00ed server jednodu\u0161e nech\u00e1pe, odkud a jak\u00e1 data je t\u0159eba kop\u00edrovat.<\/p>\n<p>Dal\u0161\u00ed probl\u00e9m \u2013 implementace z\u00e1lohy v Postgres. Ta je mo\u017en\u00e1 p\u0159es dump, a na mal\u00fdch datab\u00e1z\u00edch to funguje. Ale u velk\u00fdch DB dump trv\u00e1 dlouho, vy\u017eaduje mnoho zdroj\u016f a m\u016f\u017ee zp\u016fsobit selh\u00e1n\u00ed instance DB.<\/p>\n<p>Souborov\u00e1 z\u00e1loha situaci vy\u0159e\u0161\u00ed, ale na velk\u00fdch datab\u00e1z\u00edch prob\u00edh\u00e1 pomalu, proto\u017ee pracuje v jednovl\u00e1knov\u00e9m re\u017eimu. Krom\u011b toho maj\u00ed dodavatel\u00e9 celou \u0159adu dal\u0161\u00edch omezen\u00ed. Nen\u00ed mo\u017en\u00e9 simult\u00e1nn\u011b pou\u017e\u00edvat souborovou a dumpovou z\u00e1lohu, ani nepodporuj\u00ed deduplikaci. Probl\u00e9m\u016f je mnoho, a \u010dasto je jednodu\u0161\u0161\u00ed vybrat m\u00edsto Postgres drahou, ale osv\u011bd\u010denou DB.<\/p>\n<h2>Nen\u00ed kam ustoupit! Za n\u00e1mi je Moskva a v\u00fdvoj\u00e1\u0159i!<\/h2>\n<p>\nNed\u00e1vno se na\u0161e t\u00fdmu ocitla p\u0159ed nelehk\u00fdm \u00fakolem: v projektu budov\u00e1n\u00ed AIS OSAGo 2.0, kde jsme prov\u00e1d\u011bli IT infrastrukturu, si v\u00fdvoj\u00e1\u0159i pro nov\u00fd syst\u00e9m vybrali PostgreSQL. <\/p>\n<p>Velk\u00fdm v\u00fdvoj\u00e1\u0159\u016fm softwaru je mnohem snaz\u0161\u00ed pou\u017e\u00edvat \u201em\u00f3dn\u00ed\u201c open-source \u0159e\u0161en\u00ed. V r\u00e1mci Facebooku je dost specialist\u016f, kte\u0159\u00ed podporuj\u00ed pr\u00e1ci tohoto DBMS. A v p\u0159\u00edpad\u011b RSA v\u0161echny \u00fakoly \u201edruh\u00e9ho dne\u201c spo\u010d\u00edvaly na na\u0161ich bedrech. Po\u017eadovalo se od n\u00e1s zajistit odolnost, vytvo\u0159it cluster a samoz\u0159ejm\u011b nastavit z\u00e1lohov\u00e1n\u00ed. Logika postup\u016f byla n\u00e1sleduj\u00edc\u00ed: <\/p>\n<ul>\n<li>Nau\u010dit SRK prov\u00e1d\u011bt z\u00e1lohu z prim\u00e1rn\u00edho uzlu clusteru. K tomu mus\u00ed SRK naj\u00edt tento uzel \u2014 to znamen\u00e1, \u017ee je zapot\u0159eb\u00ed integrace s n\u011bjak\u00fdm \u0159e\u0161en\u00edm pro spr\u00e1vu clusteru PostgreSQL. V p\u0159\u00edpad\u011b RSA bylo k tomu pou\u017eito softwarov\u00e9 vybaven\u00ed Patroni.<\/li>\n<li>Ur\u010dit typ z\u00e1lohy na z\u00e1klad\u011b objemu dat a po\u017eadavk\u016f na obnoven\u00ed. Nap\u0159\u00edklad, kdy\u017e je pot\u0159eba obnovovat str\u00e1nky granul\u00e1rn\u011b, pou\u017e\u00edt dump, a pokud jsou datab\u00e1ze velk\u00e9 a granul\u00e1rn\u00ed obnova nen\u00ed po\u017eadov\u00e1na \u2014 pracovat na \u00farovni soubor\u016f.<\/li>\n<li>P\u0159idat k \u0159e\u0161en\u00ed mo\u017enost blokov\u00e9 z\u00e1lohy, aby bylo mo\u017en\u00e9 vytv\u00e1\u0159et z\u00e1lohu v multithreadov\u00e9m re\u017eimu.<\/li>\n<\/ul>\n<p>\nNa\u0161\u00edm c\u00edlem bylo p\u016fvodn\u011b vytvo\u0159it efektivn\u00ed a jednoduch\u00fd syst\u00e9m bez monstr\u00f3zn\u00ed vazby na dal\u0161\u00ed komponenty. \u010c\u00edm m\u00e9n\u011b berli\u010dek, t\u00edm men\u0161\u00ed zat\u00ed\u017een\u00ed pro person\u00e1l a ni\u017e\u0161\u00ed riziko selh\u00e1n\u00ed SRK. P\u0159\u00edstupy, kter\u00e9 pou\u017e\u00edvaly Veeam a RMAN, jsme okam\u017eit\u011b vylou\u010dili, proto\u017ee soubor dvou \u0159e\u0161en\u00ed u\u017e nazna\u010duje nspolehlivost syst\u00e9mu.<\/p>\n<h2>Trochu magie pro enterprise<\/h2>\n<p>\nTak\u017ee jsme pot\u0159ebovali zajistit spolehliv\u00e9 z\u00e1lohov\u00e1n\u00ed pro 10 cluster\u016f po 3 uzlech ka\u017ed\u00fd, p\u0159i\u010dem\u017e v rezervn\u00edm datov\u00e9m centru se nach\u00e1z\u00ed identick\u00e1 infrastruktura. Datov\u00e1 centra v r\u00e1mci PostgreSQL funguj\u00ed na principu active-passive. Celkov\u00fd objem datab\u00e1z\u00ed \u010dinil 50 TB. S t\u00edm si porad\u00ed jak\u00fdkoli SRK na \u00farovni podniku. Ale nuance spo\u010d\u00edv\u00e1 v tom, \u017ee p\u016fvodn\u011b v Postgresu neexistuje podpora pro plnou a hloubkovou kompatibilitu se syst\u00e9my z\u00e1lohov\u00e1n\u00ed. Proto jsme museli hledat \u0159e\u0161en\u00ed, kter\u00e9 od za\u010d\u00e1tku disponuje maximem funkcionality v kombinaci s PostgreSQL a d\u00e1le syst\u00e9m upravit. <\/p>\n<p>Uspo\u0159\u00e1dali jsme 3 intern\u00ed \"hackatony\" \u2014 zhodnotili jsme v\u00edce ne\u017e pades\u00e1t n\u00e1pad\u016f, testovali je, prov\u00e1d\u011bli zm\u011bny v souvislosti s na\u0161imi hypot\u00e9zami a op\u011bt testovali. Po anal\u00fdze dostupn\u00fdch mo\u017enost\u00ed jsme vybrali Commvault. Tento produkt ji\u017e \"z krabice\" mohl pracovat s nejjednodu\u0161\u0161\u00edmi clusterov\u00fdmi instalacemi PostgreSQL, a jeho otev\u0159en\u00e1 architektura vzbuzovala nad\u011bji (kter\u00e1 se naplnila) na \u00fasp\u011b\u0161nou \u00fapravu a integraci. Tak\u00e9 Commvault um\u00ed prov\u00e1d\u011bt z\u00e1lohu log\u016f PostgreSQL. Nap\u0159\u00edklad Veritas NetBackup v oblasti PostgreSQL um\u00ed prov\u00e1d\u011bt pouze pln\u00e9 z\u00e1lohy.<\/p>\n<p>Podrobnosti o architektu\u0159e. \u0158\u00edd\u00edc\u00ed servery Commvault byly nainstalov\u00e1ny v ka\u017ed\u00e9m ze dvou datov\u00fdch center v konfiguraci CommServ HA. Syst\u00e9m je zrcadlov\u00fd, spravov\u00e1n prost\u0159ednictv\u00edm jednoho rozhran\u00ed a z hlediska HA spl\u0148uje v\u0161echna krit\u00e9ria pro podnikov\u00e9 pou\u017eit\u00ed.<\/p>\n<p><img decoding=\"async\" alt=\"Jak integrovat &#039;volnou&#039; PostgreSQL do p\u0159\u00edsn\u00e9ho podnikov\u00e9ho prost\u0159ed\u00ed\" src=\"\/wp-content\/uploads\/2020\/09\/461b05425385435fee233846516e328d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nTak\u00e9 v ka\u017ed\u00e9m datov\u00e9m centru jsme spustili dva fyzick\u00e9 medi\u00e1ln\u00ed servery, k nim\u017e jsme p\u0159es SAN pomoc\u00ed Fibre Channel p\u0159ipojili diskov\u00e9 pole a p\u00e1skov\u00e9 knihovny, kter\u00e9 byly speci\u00e1ln\u011b ur\u010deny pro z\u00e1lohov\u00e1n\u00ed. Roz\u0161\u00ed\u0159en\u00e9 deduplika\u010dn\u00ed datab\u00e1ze zaji\u0161\u0165ovaly odolnost medi\u00e1ln\u00edch server\u016f, a p\u0159ipojen\u00ed ka\u017ed\u00e9ho serveru k ka\u017ed\u00e9mu CSV poskytovalo mo\u017enost nep\u0159etr\u017eit\u00e9 \u010dinnosti i p\u0159i selh\u00e1n\u00ed kter\u00e9hokoliv komponentu. Architektura syst\u00e9mu umo\u017e\u0148uje pokra\u010dovat v z\u00e1lohov\u00e1n\u00ed, i kdy\u017e dojde k v\u00fdpadku jednoho z datov\u00fdch center.<\/p>\n<p>Patroni ur\u010duje Primary uzel pro ka\u017ed\u00fd klastr. T\u00edm m\u016f\u017ee b\u00fdt jak\u00fdkoliv voln\u00fd uzel v datov\u00e9m centru \u2014 ale pouze v hlavn\u00edm. V z\u00e1lo\u017en\u00edm jsou v\u0161echny uzly Secondary. <\/p>\n<p>Aby Commvault rozum\u011bl, kter\u00fd uzel klastra je Primary, integrovali jsme syst\u00e9m (d\u011bkujeme otev\u0159en\u00e9 architektu\u0159e \u0159e\u0161en\u00ed) s Postgres. Za t\u00edmto \u00fa\u010delem byl vytvo\u0159en skript, kter\u00fd informuje o aktu\u00e1ln\u00ed poloze Primary uzlu spr\u00e1vce. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/cs\/server\/dts-shicago\/\"   title=\"serveru\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2881\">serveru<\/a> Commvault.<\/p>\n<p>Celkov\u011b proces vypad\u00e1 takto:<\/p>\n<p>Patroni vyb\u00edr\u00e1 Primary \u2192 Keepalived zved\u00e1 IP klastr a spou\u0161t\u00ed skript \u2192 agent Commvault na vybran\u00e9m uzlu klastra dost\u00e1v\u00e1 upozorn\u011bn\u00ed, \u017ee je to Primary \u2192 Commvault automaticky p\u0159enastav\u00ed z\u00e1lohu pro pseudoz\u00e1kazn\u00edka.<\/p>\n<p><img decoding=\"async\" alt=\"Jak integrovat &#039;volnou&#039; PostgreSQL do p\u0159\u00edsn\u00e9ho podnikov\u00e9ho prost\u0159ed\u00ed\" src=\"\/wp-content\/uploads\/2020\/09\/a3d909bdff1c219fd98cc49cf3054a23.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nV\u00fdhodou tohoto p\u0159\u00edstupu je, \u017ee \u0159e\u0161en\u00ed neovliv\u0148uje ani konzistenci, ani spr\u00e1vnost protokol\u016f, ani obnoven\u00ed instance Postgres. Je tak\u00e9 snadno \u0161k\u00e1lovateln\u00e9, proto\u017ee nyn\u00ed nen\u00ed pot\u0159eba fixovat Primary a Secondary uzly pro Commvault. Sta\u010d\u00ed, \u017ee syst\u00e9m rozum\u00ed, kde je Primary, a po\u010det uzl\u016f m\u016f\u017ee b\u00fdt zv\u00fd\u0161en prakticky na libovolnou hodnotu.<\/p>\n<p>\u0158e\u0161en\u00ed si nen\u00e1rokuje dokonalost a m\u00e1 sv\u00e9 nuance. Commvault um\u00ed z\u00e1lohovat pouze instanci jako celek, a ne jednotliv\u00e9 datab\u00e1ze. Proto byl pro ka\u017edou datab\u00e1zi vytvo\u0159en samostatn\u00fd instance. Skute\u010dn\u00ed z\u00e1kazn\u00edci jsou spojeni do virtu\u00e1ln\u00edch pseudoz\u00e1kazn\u00edk\u016f. Ka\u017ed\u00fd pseudoz\u00e1kazn\u00edk Commvault p\u0159edstavuje UNIX klastr. Do n\u011bj se p\u0159id\u00e1vaj\u00ed ty uzly klastra, na kter\u00fdch je nainstalov\u00e1n agent Commvault pro Postgres. V d\u016fsledku toho jsou v\u0161echny virtu\u00e1ln\u00ed uzly pseudoz\u00e1kazn\u00edka z\u00e1lohov\u00e1ny jako jedna instance. <\/p>\n<p>Uvnit\u0159 ka\u017ed\u00e9ho pseudoklienta je uvedena aktivn\u00ed uzel clustera. Pr\u00e1v\u011b ten ur\u010duje na\u0161e integra\u010dn\u00ed \u0159e\u0161en\u00ed pro Commvault. Princip jeho fungov\u00e1n\u00ed je pom\u011brn\u011b jednoduch\u00fd: pokud na uzlu vzr\u016fst\u00e1 clusterov\u00fd IP, skript nastavuje v bin\u00e1rn\u00edm souboru agenta Commvault parametr \u201eaktivn\u00ed uzel\u201c \u2014 ve skute\u010dnosti skript um\u00edst\u00ed \u201e1\u201c na pot\u0159ebn\u00e9 m\u00edsto v pam\u011bti. Agent p\u0159ed\u00e1v\u00e1 tyto \u00fadaje na CommServe a Commvault prov\u00e1d\u00ed z\u00e1lohu z pot\u0159ebn\u00e9ho uzlu. Krom\u011b toho na \u00farovni skriptu prob\u00edh\u00e1 kontrola spr\u00e1vnosti konfigurace, co\u017e pom\u00e1h\u00e1 p\u0159edej\u00edt chyb\u00e1m p\u0159i spu\u0161t\u011bn\u00ed z\u00e1lohov\u00e1n\u00ed.<\/p>\n<p>Velk\u00e9 datab\u00e1ze jsou p\u0159itom z\u00e1lohov\u00e1ny blokov\u011b ve v\u00edce vl\u00e1knech, co\u017e spl\u0148uje po\u017eadavky RPO a z\u00e1lohovac\u00edho okna. Z\u00e1t\u011b\u017e na syst\u00e9m je minim\u00e1ln\u00ed: pln\u00e9 kopie prob\u00edhaj\u00ed ne tak \u010dasto, v ostatn\u00edch dnech se shroma\u017e\u010fuj\u00ed pouze logy, p\u0159i\u010dem\u017e v obdob\u00edch n\u00edzk\u00e9 z\u00e1t\u011b\u017ee. <\/p>\n<p>Mimochodem jsme pou\u017eili samostatn\u00e9 politiky pro z\u00e1lohov\u00e1n\u00ed archivn\u00edch \u017eurn\u00e1l\u016f PostgreSQL \u2014 ty jsou uchov\u00e1v\u00e1ny podle jin\u00fdch pravidel, kop\u00edrov\u00e1ny podle jin\u00e9ho harmonogramu a pro n\u011b nen\u00ed aktivov\u00e1na deduplikace, proto\u017ee tyto \u017eurn\u00e1ly nesou unik\u00e1tn\u00ed data.<\/p>\n<p>Aby byla zaji\u0161t\u011bna konzistence cel\u00e9 IT infrastruktury, jsou na ka\u017ed\u00e9m uzlu clustera nainstalov\u00e1ni samostatn\u00ed souborov\u00ed klienti Commvault. Vylu\u010duj\u00ed z z\u00e1loh soubory Postgres a jsou ur\u010deni pouze pro z\u00e1lohu opera\u010dn\u00edho syst\u00e9mu a aplika\u010dn\u00edch program\u016f. Pro tuto \u010d\u00e1st dat je tak\u00e9 stanovena vlastn\u00ed politika a vlastn\u00ed doba uchov\u00e1v\u00e1n\u00ed. <\/p>\n<p><img decoding=\"async\" alt=\"Jak integrovat &#039;volnou&#039; PostgreSQL do p\u0159\u00edsn\u00e9ho podnikov\u00e9ho prost\u0159ed\u00ed\" src=\"\/wp-content\/uploads\/2020\/09\/80c74ee17f441308bd8c3b154c1acafc.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNyn\u00ed SRK neovliv\u0148uje produktivn\u00ed slu\u017eby, ale pokud se situace zm\u011bn\u00ed, v Commvaultu bude mo\u017en\u00e9 aktivovat syst\u00e9m omezen\u00ed z\u00e1t\u011b\u017ee. <\/p>\n<p><strong>Vhodn\u00e9? Vhodn\u00e9!<\/strong><\/p>\n<p>Tak\u017ee jsme z\u00edskali nejen funk\u010dn\u00ed, ale tak\u00e9 pln\u011b automatizovan\u00e9 z\u00e1lohov\u00e1n\u00ed pro clusterovou instalaci PostgreSQL, kter\u00e9 spl\u0148uje v\u0161echny po\u017eadavky na enterprise.<\/p>\n<p>Parametry RPO a RTO na 1 hodinu a 2 hodiny jsou pokryty s rezervou, a to znamen\u00e1, \u017ee syst\u00e9m je bude spl\u0148ovat i p\u0159i v\u00fdznamn\u00e9m n\u00e1r\u016fstu objem\u016f ulo\u017een\u00fdch dat. Navzdory mnoha pochybnostem se PostgreSQL a enterprise prost\u0159ed\u00ed uk\u00e1zaly jako zcela kompatibiln\u00ed. A nyn\u00ed v\u00edme ze sv\u00e9 zku\u0161enosti, \u017ee z\u00e1lohov\u00e1n\u00ed pro podobn\u00e9 DBMS je mo\u017en\u00e9 v nejr\u016fzn\u011bj\u0161\u00edch konfigurac\u00edch. <\/p>\n<p>Samoz\u0159ejm\u011b, na t\u00e9to cest\u011b jsme si museli po\u0159\u00eddit sedm p\u00e1r\u016f \u017eelezn\u00fdch bot, p\u0159ekonat \u0159adu obt\u00ed\u017e\u00ed, \u0161l\u00e1pnout na n\u011bkolik h\u0159eb\u00edk\u016f a napravit mno\u017estv\u00ed chyb. Ale nyn\u00ed je p\u0159\u00edstup ji\u017e vyzkou\u0161en a m\u016f\u017ee b\u00fdt pou\u017eit pro nasazen\u00ed Open Source m\u00edsto propriet\u00e1rn\u00edch DBMS v n\u00e1ro\u010dn\u00fdch podm\u00ednk\u00e1ch podniku.<\/p>\n<p>Zkou\u0161eli jste pracovat s PostgreSQL v korpor\u00e1tn\u00edm prost\u0159ed\u00ed?<\/p>\n<p><i>Auto\u0159i: <\/i><\/p>\n<p><i>Oleg Lavrenov, in\u017een\u00fdr projektov\u00e1n\u00ed syst\u00e9m\u016f pro ukl\u00e1d\u00e1n\u00ed dat 'Infosystemy Jet'<\/i><\/p>\n<p><i>Dmitrij Jerykin, in\u017een\u00fdr projektov\u00e1n\u00ed v\u00fdpo\u010detn\u00edch komplex\u016f 'Infosystemy Jet'<\/i><br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/jetinfosystems\/blog\/518384\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041c\u043d\u043e\u0433\u0438\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u0441 \u0421\u0423\u0411\u0414 PostgreSQL, \u0438 \u043e\u043d\u0430 \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0437\u0430\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043b\u0430 \u0441\u0435\u0431\u044f \u043d\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u044f\u0445. \u041e\u0434\u043d\u0430\u043a\u043e \u0442\u0435\u043d\u0434\u0435\u043d\u0446\u0438\u044f \u043a \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0443 \u043d\u0430 Open Source \u0441\u0442\u0430\u043b\u0430 \u0432\u0441\u0435 \u0431\u043e\u043b\u0435\u0435 \u044f\u0432\u043d\u043e\u0439, \u0434\u0430\u0436\u0435 \u043a\u043e\u0433\u0434\u0430 \u0440\u0435\u0447\u044c \u0438\u0434\u0435\u0442 \u043e \u043a\u0440\u0443\u043f\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\u0445 \u0438 enterprise \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u0445. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c, \u043a\u0430\u043a \u0432\u0441\u0442\u0440\u043e\u0438\u0442\u044c Postgres \u0432 \u043a\u043e\u0440\u043f\u043e\u0440\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0440\u0435\u0434\u0443, \u0438 \u043f\u043e\u0434\u0435\u043b\u0438\u043c\u0441\u044f \u043e\u043f\u044b\u0442\u043e\u043c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0433\u043e \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (\u0421\u0420\u041a) \u0434\u043b\u044f \u044d\u0442\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":93879,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-93878","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041c\u043d\u043e\u0433\u0438\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u0441 \u0421\u0423\u0411\u0414 PostgreSQL, \u0438 \u043e\u043d\u0430 \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0437\u0430\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043b\u0430 \u0441\u0435\u0431\u044f \u043d\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u044f\u0445.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kak-vpisat-svobodnuyu-postgresql-v-surovoe-enterprise-okruzhenie\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a \u0432\u043f\u0438\u0441\u0430\u0442\u044c \u00ab\u0441\u0432\u043e\u0431\u043e\u0434\u043d\u0443\u044e\u00bb PostgreSQL \u0432 \u0441\u0443\u0440\u043e\u0432\u043e\u0435 enterprise \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041c\u043d\u043e\u0433\u0438\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u0441 \u0421\u0423\u0411\u0414 PostgreSQL, \u0438 \u043e\u043d\u0430 \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0437\u0430\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043b\u0430 \u0441\u0435\u0431\u044f \u043d\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u044f\u0445.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kak-vpisat-svobodnuyu-postgresql-v-surovoe-enterprise-okruzhenie\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-09-10T17:42:02+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-09-10T17:42:02+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Jak zakomponovat 'svobodnou' PostgreSQL do n\u00e1ro\u010dn\u00e9ho podnikov\u00e9ho prost\u0159ed\u00ed | ProHoster","description":"Mnoz\u00ed znaj\u00ed DBMS PostgreSQL a ta si skv\u011ble vedla na mal\u00fdch instalac\u00edch.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kak-vpisat-svobodnuyu-postgresql-v-surovoe-enterprise-okruzhenie","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a \u0432\u043f\u0438\u0441\u0430\u0442\u044c \u00ab\u0441\u0432\u043e\u0431\u043e\u0434\u043d\u0443\u044e\u00bb PostgreSQL \u0432 \u0441\u0443\u0440\u043e\u0432\u043e\u0435 enterprise \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 | ProHoster","og:description":"\u041c\u043d\u043e\u0433\u0438\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u0441 \u0421\u0423\u0411\u0414 PostgreSQL, \u0438 \u043e\u043d\u0430 \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0437\u0430\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u043b\u0430 \u0441\u0435\u0431\u044f \u043d\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u044f\u0445.","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kak-vpisat-svobodnuyu-postgresql-v-surovoe-enterprise-okruzhenie","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-09-10T17:42:02+00:00","article:modified_time":"2020-09-10T17:42:02+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"93878","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:38:42","updated":"2026-02-09 21:41:55","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/93878","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=93878"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/93878\/revisions"}],"predecessor-version":[{"id":160161,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/93878\/revisions\/160161"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/93879"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=93878"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=93878"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=93878"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}