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í
×
    včera 23:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 14:11 | IT novinky

    Řada vestavěných počítačových desek a vývojových platforem NVIDIA Jetson se rozrostla o NVIDIA Jetson Thor. Ve srovnání se svým předchůdcem NVIDIA Jetson Orin nabízí 7,5krát vyšší výpočetní výkon umělé inteligence a 3,5krát vyšší energetickou účinnost. Softwarový stack NVIDIA JetPack 7 je založen na Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 2
    včera 00:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.

    Ladislav Hagara | Komentářů: 20
    27.8. 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 1
    27.8. 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 7
    27.8. 13:11 | Nová verze

    Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    27.8. 05:11 | Komunita

    Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.

    Ladislav Hagara | Komentářů: 17
    26.8. 12:55 | IT novinky

    EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.

    Ladislav Hagara | Komentářů: 65
    26.8. 12:11 | Nová verze

    Byly publikovány fotografie a všechny videozáznamy z Python konference PyCon US 2025 proběhlé v květnu.

    Ladislav Hagara | Komentářů: 0
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (79%)
     (9%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 104 hlasů
     Komentářů: 9, poslední včera 11:53
    Rozcestník

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

    24.2.2014 13:10 trekker.dk | skóre: 72
    PgSQL streaming replication, změna master serveru bez změn na slave
    Přečteno: 623×
    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: 72
    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: 72
    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: 72
    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: 72
    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: 72
    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.