abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 2
dnes 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 2
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 8
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
2.12. 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 22
2.12. 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 8
2.12. 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 4
2.12. 12:55 | Nová verze

Google Chrome 55 byl prohlášen za stabilní. Nejnovější stabilní verze 55.0.2883.75 tohoto webového prohlížeče přináší řadu oprav a vylepšení (YouTube). Opraveno bylo také 36 bezpečnostních chyb. Mariusz Mlynski si například vydělal 22 500 dolarů za 3 nahlášené chyby (Universal XSS in Blink).

Ladislav Hagara | Komentářů: 4
2.12. 11:55 | Pozvánky

Máte rádi svobodný software a hardware nebo se o nich chcete něco dozvědět? Přijďte na 135. sraz spolku OpenAlt, který se bude konat ve čtvrtek 8. prosince od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Sraz bude tentokrát tématický. Bude retro! K vidění budou přístroje jako Psion 5mx nebo Palm Z22. Ze svobodného hardwaru pak Openmoko nebo čtečka WikiReader. Přijďte se i vy pochlubit svými legendami, nebo alespoň na pivo. Moderní hardware má vstup samozřejmě také povolen.

xkucf03 | Komentářů: 1
2.12. 00:10 | Nová verze

Byla vydána verze 3.2 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata. Z novinek lze zmínit například podporu protokolů DNP3 a CIP/ENIP, vylepšenou podporu TLS a samozřejmě také aktualizovanou dokumentaci.

Ladislav Hagara | Komentářů: 0
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 771 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: PgSQL streaming replication, změna master serveru bez změn na slave

24.2.2014 13:10 trekker.dk | skóre: 71
PgSQL streaming replication, změna master serveru bez změn na slave
Přečteno: 457×
Zdravím.

Řekněme, že mám 3 (a více) serverů s PostgreSQL, jeden z nich je master, ostatní jsou repliky a stahují si data pomocí streaming replication. Master server má IP (například) 10.0.0.1, první slave server má 10.0.0.2, druhý má 10.0.0.3 atd. Master PostgreSQL má v nastavení listen_address = 10.0.0.1, slave servery tam mají každý svoji IP adresu.

Protože těch slave serverů bude hodně, mají v recovery.conf nastaveno primary_conninfo = 'host=10.10.10.10 ...'. Tato adresa je manuálně přiřazena master serveru jako sekundární IP. Není v listen_address, proto má master v NAT tabulce toto pravidlo:
iptables -t nat -A PREROUTING -i eth0 -p tcp -d 10.10.10.10 --dport 5432 -j DNAT --to-destination 10.0.0.1
Slave stroje mají odpovídající pravidlo s vlastní cílovou IP adresou.

Cílem je, když master spadne nebo je potřeba ho na delší dobu odstavit, aby bylo možné jednoduše některý slave přepnout do režimu master a stroji, na kterém to běží, přidat tu adresu 10.10.10.10. Ostatní slave stroje by se pak připojily na nový master a braly si data z něj.

Tohle mám vyzkoušené a funguje to. Zajímalo by mě ale, jestli ten postup nemá nějaký zádrhel, kvůli kterému by mohlo dojít ke ztrátě dat nebo tichému poškození DB. Jenom pro úplnost - stav, kdy slave zjistí, že něco v nepořádku a odmítne v replikaci pokračovat, mi nevadí - to zjistím z logu. Chci se vyhnout situaci, kdy se bude slave po změně master serveru tvářit, že je všechno v pořádku, a na chyby v datech se přijde, až když se je pokusím použít.
Quando omni flunkus moritati

Odpovědi

24.2.2014 19:45 NN
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
Ma toto reseni nejake vyhody oproti reseni HA s multiple standby servery podle dokumentace?
25.2.2014 12:50 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
Že nemusím řešit přenášení logů, protože to Postgres řeší sám a (téměř) v reálném čase? Krom toho je to dělané podle dokumentace o bod níž
Quando omni flunkus moritati
25.2.2014 13:12 NN
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
Dobre, nicmene jsem to pochopil tak, ze mam reseni se serii standby serveru, na ktere to prepadava automaticky, bez carovani s jednou IP adresou a bez presmerovani. NEdalo by se to zkombinovat?
25.2.2014 14:30 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
V sérii, jak je popsáno v bodu 25.2.6 té dokumentace? Ne, tak to není, ve standardní situaci je jeden master a všechny slave stroje se připojují na něj. (A klienti, kteří nepotřebují přístup pro zápis, se zase připojují na ty slave stroje.)

V případě výpadku toho master serveru chci udělat to, že vyberu jeden slave stroj a změním ho na master. Ostatní slave stroje v tu chvíli už budou vědět, že ztratily spojení*, a budou se ho pokoušet navázat znova. Pak novému master stroji dám tu sdílenou IP adresu (+ DNAT pravidlo, které ji přeloží na adresu, na které ten Postgres naslouchá), slave stroje navážou spojení a pokračují v replikaci.

Tohle uspořádání má za cíl zajistit, aby se výpadek master serveru dotknul co nejmenšího počtu klientů. Když vypadne master server, s DB nemohou pracovat jenom ti klienti, kteří jej používali přímo. Povýšení slave na master lze udělat bez výpadku. DNAT pravidlo v netfilteru Postgresu umožní naslouchat na nové IP adrese, i když není v listen_address, tzn. odpadá restart databáze. A odpadá nutnost měnit v konfiguraci všech slave strojů IP adresu master serveru.

Moje otázka je, jestli slave stroje nějak poznají, že jim (například) chybí nějaká data. Obecně jestli rozpoznají, že nemůžou replikovat z nového master stroje, protože by tím došlo ke ztrátě dat

* a i kdyby ne, od nového masteru dostanou TCP-RST
Quando omni flunkus moritati
25.2.2014 17:40 NN
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
25.2.2014 22:13 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
Zajímavá možná, ale...
PostgreSQL itself supplies no tools to do this, but numerous third-party utilities such as "Linux heartbeat" are compatible with PostgreSQL replication.

Zajímalo by mě, jak je ten článek starý, protože Heartbeat už nějakou dobu slouží pouze pro správu klientů clusteru, ne služeb v něm. Ale OK, to je možná jenom zjednodušení. Každopádně na webu o Heartbeatu zmiňují Corosync a když jsem hledal naposledy, ten žádnou podporu pro PostgreSQL neměl. Našel jsem vlákno v nějaké mailové konferenci, kde se někdo pokoušel takového agenta vytvořit, ale narazil na to, že replikace PgSQL se nedá naroubovat na stavy služby tak, jak je zná Corosync (zastavená -> spustit -> běží -> povýšit -> master). Je to logické, DB je možné změnit ze slave na master za běhu, ale zpátky už ne (pokud to vůbec jde)

Tahle diskuze každopádně odbočuje od tématu.
Quando omni flunkus moritati
25.2.2014 22:47 NN
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
Nemuzu si pomoct, ale zadne mutliple stanby reseni jsem proste nenasel a veta na konci nazacuje, ze nic konkretniho k dispozici neni a kazdy si to resi po svem. Jedina zminka je reseni streming replication failover pomoci trigger file. Jelikoz postres neprovozuji, nemuz jit do podrobnosti, howgh.
28.2.2014 00:15 smoco
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave

Ahoj

ked ho prepnes do modu master nemusi mat najaktualnejsie data, to moze byt jediny problem. Pokial by si pouzil synchronu replikaciu tak aj data budu aktualne. Ked sa replike nebude nieco pacit urcite to uvidis v logoch ale odporucam nejaky monitoring si zriadit ja napriklad pouzivam toto http://bucardo.org/check_postgres/check_postgres.pl.html pre nagios (inak uplna spokojnost jeden master asi 10 replik po celom svete a krasne monitoruje len zo zaciatku musis vhodnu deltu najst).

Ale ine som chcel - da sa spravit HA cluster Master/Slave zalozeny na corosyncu/peacemakerovy a agentovy tak aby ti v pripade vypadku prepol slave na master. K tomu si v zadefinujes aj prepinanie ip medzi nodmi a je to. Mame to nasadene u zakaznika a funguje to asi skvele (uz sa neozval 5 mesiacov). Je to na debiane 7, verzia postgresu 9.2, viem ze kolega musel nejake veci v tom agentovy upravit lebo to nebolo kompatibilne s debianom(myslim ale ze s rhel a pod nebude problem - rpoblem bol v starej verzii corosyncu). Tu je nejaky link inak odporucam do googlu dat "corosync postgres replication" a prejst tie linky

http://clusterlabs.org/wiki/PgSQL_Replicated_Cluster
28.2.2014 10:25 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
Jo, tohle jsem předtím nenašel, vypadá to pěkně. Dík za tipy.
Quando omni flunkus moritati
26.2.2014 07:50 stanik89 | skóre: 4 | Ostrava
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
a co třeba pro toto použít pgpool? nezkoušel jsi ? pgpool.net
26.2.2014 11:29 trekker.dk | skóre: 71
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
Co jsem prošel tu wiki, tak ta věc řeší problémy, které nemám.
Quando omni flunkus moritati
28.2.2014 09:37 stanik89 | skóre: 4 | Ostrava
Rozbalit Rozbalit vše Re: PgSQL streaming replication, změna master serveru bez změn na slave
jasně, ale dalo by se to na tom postavit - byl to nápad na zamyšlení.

na pgpoolu by byla ip 10.10.10.10 a "pod ní" by byly ostatní srv. Kde se dají nastavit i priority srv tak aby byl dodržen tvuj model master / slave

Lepší řešení by mohlo být multi-master kde se na všechny srv v jeden čas zapiše požadavek který byl zaslán na 10.10.10.10. V tu chvíli pokud ti spadne kterýkoliv srv automaticky ho nahradí další = kdykoliv mužes kterýkoliv srv odstavit provést upgrade apod.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.