Natív PostgreSQL replikáció

A Unix/Linux szerverek üzemeltetése wikiből
A lap korábbi változatát látod, amilyen Btibi (vitalap | szerkesztései) 2012. november 11., 13:54-kor történt szerkesztése után volt.

Tartalomjegyzék

1 Bevezetés

A PostgreSQL 9.0-ás verziójától kezdve támogatja a natív replikációt, ami talán ez az egyik legjobban várt funkciója hosszú idők óta. Eddig is léteztek más replikációs megoldások (PgPool II, Slony, stb.), amelyek akár többlet funkcionalitással is rendelkezhettek (load balancing), mégsem jelentenek igazi megoldást a problémáinkra. A jelen szócikk ezen témakörbe nyújt egy kis betekintést.

A replikáció konfigurálásához két debian Linux operációs rendszert használok csomagból telepített PostgreSQL 9.1 verziókkal. A két szerver közvetlenül is össze lesz kötve egymással, ez a failover szempontjából fontos. Több szerver esetén a közvetlen összeköttetések nagyon megbonyolítanák a beállításokat, akkor célszerűbb switch-eken keresztül összekapcsolni a rendszereket.

Teszthalo.png

2 Követelmények

2.1 Replikáció követelményei

A replikációnak több követelménye van, ami nem csak az PostgreSQL verziószámára terjed ki:

  • a replikációban részt vevő operációs rendszereknek azonos architektúrájúnak kell lennie. Azonos architektúrának számít, ha mind amd64, x386 stb. Látszik hogy nem szabad keverni 32 és 64 bites rendszereket, csak tisztán az egyiket, ill. tisztán a másikat használhatjuk.
  • legalább PostgreSQL 9.0

2.2 Failover követelményei

A lent ismertetett felállásban

3 Replikáció fajtái

3.1 Master - slave

3.2 Master - master avagy multi master

3.3 Streaming

3.4 Nem streaming

3.5 Aszinkron

3.6 Szinkron

4 Streaming szinkron replikáció konfigurálása

5 Magas rendelkezésre állás virtuális IP-vel

5.1 Mi az a virtuális IP cím?

5.2 Hogyan tudom konfigurálni?

5.3 Automatikus failover

6 Teljesítménytesztek

6.1 Streaming szinkron replikáció

6.2 Streaming szinkron replikáció failoverrel

6.3 A failover tesztelése

Személyes eszközök