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í
×
dnes 16:00 | Nová verze

Byl vydán Mozilla Firefox 51.0. Z novinek lze upozornit například na upozorňování na přihlašování přes nešifrované spojení (HTTP), podporu pro přehrávání bezeztrátového formátu FLAC nebo podporu WebGL 2. Podrobné informace v poznámkách k vydání a na stránce věnované vývojářům. Řešeny jsou také bezpečnostní chyby.

Ladislav Hagara | Komentářů: 0
včera 17:25 | IT novinky

Do prodeje (Farnell) se dostal jednodeskový počítač Tinker Board (unboxing). Jedná se o konkurenci Raspberry Pi 3 od společnosti Asus. Porovnání (jpg) těchto počítačů například na CNXSoft. Cena Tinker Boardu je 55 £.

Ladislav Hagara | Komentářů: 13
včera 14:44 | Zajímavý projekt

Byla zveřejněna pravidla hackerské soutěže Pwn2Own 2017, jež proběhne od 15. do 17. března v rámci bezpečnostní konference CanSecWes ve Vancouveru. Soutěžit se bude o více než milion dolarů v pěti kategoriích. Letos se bude útočit i na Ubuntu. Jedná se již o 10. ročník této soutěže.

Ladislav Hagara | Komentářů: 2
včera 13:33 | Nová verze

Po sedmi měsících vývoje od vydání verze 5.7 byla vydána verze 5.8 (YouTube) toolkitu Qt. Z novinek lze zmínit například Qt Lite pro vestavěná zařízení. Nově jsou plně podporovány moduly Qt Wayland Compositor (YouTube) a Qt SCXML (YouTube). Současně byla vydána verze 4.2.1 integrovaného vývojového prostředí (IDE) Qt Creator.

Ladislav Hagara | Komentářů: 1
včera 11:52 | Pozvánky

Lednový Prague Containers Meetup se koná ve čtvrtek 26. ledna 2017 od 18:00 v Apiary, Pernerova 49, Praha 8. Přijďte se podívat na přednášky o Enterprise Kubernetes a Jenkins as a code.

little-drunk-jesus | Komentářů: 0
včera 11:40 | Pozvánky

Program letošního ročníku konference Prague PostgreSQL Developer Days, která se koná již 15. a 16. února 2017 na ČVUT FIT, Thákurova 9, Praha 6, byl dnes zveřejněn. Najdete ho na stránkách konference včetně anotací přednášek a školení. Registrace na konferenci bude otevřena zítra (24. ledna) v brzkých odpoledních hodinách.

TomasVondra | Komentářů: 0
22.1. 02:20 | Zajímavý článek

David Revoy, autor open source webového komiksu Pepper&Carrot nebo portrétu GNU/Linuxu, upozorňuje na svém blogu, že nový Inkscape 0.92 rozbíjí dokumenty vytvořené v předchozích verzích Inkscape. Problém by měl být vyřešen v Inkscape 0.92.2 [reddit].

Ladislav Hagara | Komentářů: 0
22.1. 02:02 | Komunita

Øyvind Kolås, hlavní vývojář grafických knihoven GEGL a babl, které využívá grafický program GIMP, žádá o podporu na Patreonu. Díky ní bude moci pracovat na vývoji na plný úvazek. Milník 1000 $, který by stačil na holé přežití, se již téměř podařilo vybrat, dalším cílem je dosažení 2500 $, které mu umožní běžně fungovat ve společnosti.

xkomczax | Komentářů: 12
21.1. 23:54 | Pozvánky

DevConf.cz 2017, již devátý ročník jedné z největších akcí zaměřených na Linux a open source ve střední Evropě, proběhne od pátku 27. ledna do neděle 29. ledna v prostorách Fakulty informačních technologií Vysokého učení technického v Brně. Na programu je celá řada zajímavých přednášek a workshopů. Letos je povinná registrace.

Ladislav Hagara | Komentářů: 0
21.1. 22:11 | Nová verze

Byla vydána verze 1.0.0 emulátoru terminálu Terminology postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (12%)
 (2%)
 (72%)
 (3%)
 (11%)
Celkem 393 hlasů
 Komentářů: 37, poslední dnes 12:21
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: 462×
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.