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 05:11 | Komunita

    Dlouholetý balíčkář KDE Jonathan Riddell končí. Jeho práci na KDE neon financovala firma Blue Systems, která ale končí (Clemens Tönnies, Jr., dědic jatek Tönnies Holding, ji už nebude sponzorovat), někteří vývojáři KDE se přesunuli k nově založené firmě Techpaladin. Pro Riddella se již nenašlo místo. Následovala debata o organizaci těchto firem, které zahraniční vývojáře nezaměstnávají, nýbrž najímají jako kontraktory (s příslušnými důsledky z pohledu pracovního práva).

    |🇵🇸 | Komentářů: 0
    dnes 02:33 | Komunita

    V Amsterdamu probíhá Blender Conference 2025. Videozáznamy přednášek lze zhlédnout na YouTube. V úvodní keynote Ton Roosendaal oznámil, že k 1. lednu 2026 skončí jako chairman a CEO Blender Foundation. Tyto role převezme současný COO Blender Foundation Francesco Siddi.

    Ladislav Hagara | Komentářů: 0
    dnes 02:22 | Zajímavý článek

    The Document Foundation, organizace zastřešující projekt LibreOffice a další aktivity, zveřejnila výroční zprávu za rok 2024.

    ZCR | Komentářů: 0
    včera 17:33 | Nová verze

    Byla vydána nová stabilní verze 7.6 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 140. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Byla vydána verze 1.90.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    včera 12:11 | Nová verze

    Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | IT novinky

    Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.

    Ladislav Hagara | Komentářů: 0
    včera 01:11 | Nová verze

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 11
    17.9. 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (55%)
     (6%)
     (9%)
     (12%)
     (9%)
     (12%)
     (9%)
     (15%)
    Celkem 33 hlasů
     Komentářů: 5, poslední včera 22:30
    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: 624×
    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.