Sdílet prostřednictvím


Kurz: Online migrace z Amazon Aurora PostgreSQL do Azure Database for PostgreSQL pomocí služby migrace

Tento článek popisuje, jak migrovat databázi PostgreSQL z Amazon Aurora do Azure Database for PostgreSQL online.

Služba migrace ve službě Azure Database for PostgreSQL je plně spravovaná služba integrovaná do webu Azure Portal a Azure CLI. Je navržená tak, aby zjednodušila cestu migrace do Služby Azure Database for PostgreSQL.

V tomto kurzu se naučíte:

  • Dokončení požadavků
  • Zahájení migrace
  • Monitorování migrace
  • Zahájení přímé migrace
  • Ověření migrace

Požadavky

Než začnete s migrací pomocí služby migrace ve službě Azure Database for PostgreSQL, je důležité splnit následující požadavky. Tyto požadavky jsou speciálně navržené pro scénáře online migrace.

Ověření zdrojové verze

Zdrojová verze serveru PostgreSQL musí být 9.5 nebo novější. Pokud je zdrojová verze PostgreSQL starší než 9.5, před zahájením migrace upgradujte verzi na verzi 9.5 nebo novější.

Instalace test_decoding pro instalaci zdroje

  • Modul plug-in test_decoding přijímá prostřednictvím logického dekódovacího mechanismu protokolování s předstihem (Write-Ahead Logging). Modul plug-in dekóduje WAL do textové reprezentace operací, které se provádějí.
  • V Amazon RDS for PostgreSQL je modul plug-in test_decoding předinstalovaný a připravený k logické replikaci. Můžete snadno nastavit sloty logické replikace a streamovat změny WAL, například pro zachytávání dat změn (CDC) nebo pro replikaci do externích systémů.

Další informace o modulu plug-in test_decoding najdete v dokumentaci k PostgreSQL.

Konfigurace nastavení cíle

Než začnete s migrací, musíte v Azure vytvořit instanci Služby Azure Database for PostgreSQL . Skladová položka zřízená pro flexibilní server Azure Database for PostgreSQL by se měla shodovat se zdrojem.

Další informace najdete v tématu Vytvoření instance Služby Azure Database for PostgreSQL.

Povolení CDC jako zdroje

  • Modul plug-in test_decoding logického dekódování zachycuje změněné záznamy ze zdroje.

  • Pokud chcete uživateli migrace povolit přístup k oprávněním replikace, spusťte následující příkaz:

    GRANT rds_replication TO <username>;
    
  • Ve zdrojové instanci PostgreSQL upravte následující parametry ve skupině parametrů databázových clusterů vytvořením nové skupiny parametrů:

    • Nastavte rds.logical_replication na hodnotu 1.
    • Nastavte max_replication_slots hodnotu větší než 1. Hodnota by měla být větší než počet databází, které vyberete pro migraci.
    • Nastavte max_wal_senders hodnotu větší než 1. Měla by mít alespoň stejnou hodnotu jako hodnota pro max_replication_slots, plus počet odesílatelů, kteří už ve vaší instanci použili.
    • Parametr wal_sender_timeout končí neaktivními připojeními replikace, která jsou delší než zadaný počet milisekund. Výchozí hodnota instance Amazon Aurora PostgreSQL je 30000 milliseconds (30 seconds). Nastavení hodnoty pro 0 (zero) zakázání mechanismu časového limitu a je platným nastavením pro migraci.
  • Pokud chcete na cílovém flexibilním serveru zabránit online migraci do úložiště, aby se protokoly ukládaly, ujistěte se, že máte dostatek úložiště v tabulkovém prostoru pomocí zřízeného spravovaného disku. Po dobu trvání migrace zakažte parametr azure.enable_temp_tablespaces_on_local_ssd serveru. Po migraci obnovte parametr do původního stavu.

Konfigurace nastavení sítě

Nastavení sítě je zásadní pro správné fungování služby migrace. Ujistěte se, že zdrojový server PostgreSQL může komunikovat s cílovým serverem ve službě Azure Database for PostgreSQL.

Informace o nastavení sítě najdete v tématu Scénáře sítě pro službu migrace.

Povolení rozšíření

Pokud chcete zajistit úspěšnou migraci pomocí služby migrace ve službě Azure Database for PostgreSQL, možná budete muset ověřit rozšíření vaší zdrojové instance PostgreSQL. Rozšíření poskytují funkce a funkce, které můžou být potřeba pro vaši aplikaci. Před zahájením procesu migrace ověřte rozšíření ve zdrojové instanci PostgreSQL.

V cílové instanci flexibilního serveru Azure Database for PostgreSQL povolte podporovaná rozšíření, která jsou identifikována ve zdrojové instanci PostgreSQL.

Další informace najdete v tématu Rozšíření ve službě Azure Database for PostgreSQL.

Poznámka:

Restartování se vyžaduje, když provedete jakékoli změny parametru shared_preload_libraries .

Kontrola parametrů serveru

Parametry serveru se do cílového prostředí nemigrují automaticky a musí být nakonfigurované ručně.

  • Porovná hodnoty parametrů serveru ze zdrojové databáze PostgreSQL s instancí Azure Database for PostgreSQL. Na webu Azure Portal přejděte na parametry serveru a hodnoty aktualizujte ručně.

  • Uložte změny parametrů a restartujte instanci Azure Database for PostgreSQL, aby se v případě potřeby použila nová konfigurace.

Kontrola uživatelů a rolí

Při migraci na Azure Database for PostgreSQL je nezbytné řešit migraci uživatelů a rolí samostatně, protože vyžadují ruční zásah.

  • Ruční migrace uživatelů a rolí: Uživatelé a jejich přidružené role se musí ručně migrovat do instance Služby Azure Database for PostgreSQL. K usnadnění tohoto procesu můžete použít nástroj pg_dumpall s příznakem --globals-only k exportu globálních objektů, jako jsou role a uživatelské účty.

    Proveďte následující příkaz: Nahraďte <username> skutečné uživatelské jméno a nahraďte <filename> názvem, který chcete použít pro výstupní soubor.

    pg_dumpall --globals-only -U <username> -f <filename>.sql
    
  • Omezení rolí superuživatele: Azure Database for PostgreSQL nepodporuje role superuživatele. Před migrací je nutné odebrat oprávnění superuživatele. Ujistěte se, že odpovídajícím způsobem upravíte oprávnění a role.

Provedením těchto kroků můžete zajistit, aby se uživatelské účty a role správně migrovaly do služby Azure Database for PostgreSQL bez problémů souvisejících s omezeními superuživatelů.

Zakázání vysoké dostupnosti (spolehlivosti) a replik pro čtení v cíli

Před zahájením migrace je důležité zakázat vysokou dostupnost (spolehlivost) a repliky pro čtení v cílovém prostředí. Tyto funkce by se měly povolit až po dokončení migrace.

Zahájení migrace

Migraci můžete provést pomocí webu Azure Portal nebo Azure CLI.

Azure Portal nabízí jednoduché a intuitivní prostředí založené na průvodci migrací. Dokončením kroků popsaných v tomto kurzu můžete bezproblémově přenést databázi do flexibilního serveru Azure Database for PostgreSQL a využít výhod jeho výkonných funkcí a škálovatelnosti.

Pokud chcete migrovat pomocí webu Azure Portal, nejprve nakonfigurujte úlohu migrace. Pak se připojte ke zdroji a cíli a spusťte migraci.

Konfigurace úlohy migrace

Konfigurace úlohy migrace na webu Azure Portal:

  1. Otevřete webový prohlížeč a přejděte na web Azure Portal. Zadejte svoje přihlašovací údaje pro přihlášení.

  2. Přejděte na instanci flexibilního serveru Azure Database for PostgreSQL.

  3. V nabídce služby vyberte Možnost Migrace.

    Snímek obrazovky s výběrem možnosti Migrace

  4. Vyberte Vytvořit , abyste migrovali z Amazon Aurora na flexibilní server.

    Při prvním použití služby migrace se zobrazí prázdná mřížka s výzvou k zahájení první migrace. Pokud už jsou vytvořené migrace na cíl flexibilního serveru, obsahuje mřížka informace o pokusech o migraci.

  5. Výběrem možnosti Vytvořit provedete řadu karet a nastavíte migraci.

    výběr migrace na webu Azure Portal.

Nastavení

Zadejte nebo vyberte následující informace:

  • Název migrace: Zadejte jedinečný identifikátor pro každou migraci do tohoto cíle flexibilního serveru. V názvu migrace můžete použít pouze alfanumerické znaky a spojovníky (-). Název nemůže začínat spojovníkem a musí být jedinečný pro cílový server. Žádné dvě migrace do stejného cíle flexibilního serveru můžou mít stejný název.

  • Typ zdrojového serveru: Vyberte typ zdroje, který odpovídá vašemu zdroji PostgreSQL, jako je cloudová služba PostgreSQL, místní nastavení nebo virtuální počítač.

  • Možnost migrace: Zvolte jednu z následujících možností pro ověření předběžné migrace:

    • Ověřte. Zkontroluje připravenost serveru a databáze na migraci do cílového zdroje.
    • Migrace. Přeskočí ověření a spustí migraci.
    • Ověření a migrace Provede ověření před aktivací migrace. Pokud nedojde k žádným selháním ověření, migrace se aktivuje.

    Dobrým postupem je vybrat možnost Ověřit nebo ověřit a migrovat pro předběžné ověření.

    Další informace najdete v tématu Ověření předběžné migrace.

  • Režim migrace: Vyberte režim migrace. Výchozí možnost je Offline.

Vyberte Další: Připojit ke zdroji.

Snímek obrazovky s kartou Nastavení migrace na webu Azure Portal

Výběr serveru modulu runtime

Server modulu runtime migrace je specializovaná funkce služby migrace. Server runtime během migrace funguje jako zprostředkující server. Jedná se o samostatnou instanci flexibilního serveru Azure Database for PostgreSQL, který není cílovým serverem. Server runtime usnadňuje migraci databází ze zdrojového prostředí, které je přístupné pouze prostřednictvím privátní sítě.

Další informace naleznete v tématu Server modulu runtime migrace.

Snímek obrazovky s kartou Server modulu runtime migrace

Připojení ke zdroji

Na kartě Připojit ke zdroji zadejte nebo vyberte následující informace pro zdroj databáze:

  • Název serveru: Zadejte název hostitele nebo IP adresu zdrojové instance PostgreSQL.
  • Port: Zadejte číslo portu zdrojového serveru.
  • Přihlašovací jméno správce serveru: Zadejte uživatelské jméno zdrojového serveru PostgreSQL.
  • Heslo: Zadejte heslo zdrojového serveru PostgreSQL.
  • Režim SSL: Podporované hodnoty jsou Preferovat a Vyžadovat. Pokud je protokol SSL (Secure Sockets Layer) na zdrojovém serveru PostgreSQL vypnutý, vyberte Preferovat. Pokud je protokol SSL na zdrojovém serveru zapnutý, vyberte Vyžadovat. Hodnoty SSL se nastavují v souboru postgresql.conf .
  • Test připojení: Zahájí test připojení mezi cílem a zdrojem. Po úspěšném připojení přejděte k dalšímu kroku a identifikujte síťové problémy mezi cílem a zdrojem a ověřte uživatelské jméno a heslo pro zdroj. Vytvoření testovacího připojení trvá několik minut.

Po úspěšném testovacím připojení vyberte Další: Vyberte cíl migrace.

Snímek obrazovky s kartou Připojit ke zdroji

Vyberte cíl migrace.

Na kartě Vybrat cíl migrace zadejte nebo vyberte následující informace pro cíl flexibilního serveru kromě předplatného, skupiny prostředků a názvu serveru:

  • Uživatelské jméno správce: Uživatelské jméno správce cílového serveru PostgreSQL.
  • Heslo: Heslo cílového serveru PostgreSQL.
  • Vlastní plně kvalifikovaný název domény nebo IP adresa (volitelné): Vlastní plně kvalifikovaný název domény nebo pole IP je volitelné a lze ho použít, když je cíl za vlastním serverem DNS nebo má vlastní obory názvů DNS, takže je přístupný jenom přes konkrétní plně kvalifikované názvy domén nebo IP adresy. Může to například zahrnovat položky, jako flexibleserver.example.comje , 198.1.0.2nebo plně kvalifikovaný název domény PostgreSQL, například flexibleserver.postgres.database.azure.com, pokud vlastní server DNS obsahuje zónu postgres.database.azure.com DNS nebo předává dotazy pro tuto zónu do 168.63.129.16, kde se plně kvalifikovaný název domény překládá ve veřejné nebo privátní zóně DNS Azure.
  • Test připojení: Zahájí test připojení mezi cílem a zdrojem. Po úspěšném připojení přejděte k dalšímu kroku a identifikujte síťové problémy mezi cílem a zdrojem a ověřte uživatelské jméno a heslo cílového serveru. Vytvoření testovacího připojení trvá několik minut.

Po úspěšném testovacím připojení vyberte Další: Vyberte databáze pro migraci.

Snímek obrazovky s kartou Připojit cílovou migraci

Výběr databází pro migraci

Na kartě Vybrat databázi pro migraci vyberte ze seznamu uživatelských databází, které chcete migrovat ze zdrojového serveru PostgreSQL.

Po výběru databází vyberte Další: Souhrn.

Snímek obrazovky s kartou Vybrat databáze pro migraci

Shrnutí

Karta Souhrn shrnuje všechny podrobnosti o zdroji a cíli pro vytvoření ověření nebo migrace. Zkontrolujte podrobnosti a pak vyberte Spustit ověření a migraci.

Snímek obrazovky s kartou Souhrn migrace

Monitorování migrace

Během několika sekund po výběru možnosti Zahájit ověření a migraci se zobrazí oznámení, že ověření nebo vytvoření migrace proběhlo úspěšně. Budete přesměrováni do podokna Migrace instance flexibilního serveru. Položka stavu je InProgress a podstate je PerformingPreRequisiteSteps. Nastavení infrastruktury migrace a kontrola síťových připojení trvá pracovní postup 2 až 3 minuty.

Snímek obrazovky s podoknem Monitorování migrace

Mřížka, která zobrazuje migrace, má tyto sloupce:

  • Název
  • Stav
  • Režim migrace
  • Typ migrace
  • Zdrojový server
  • Typ zdrojového serveru
  • Databáze
  • Doba trvání
  • Čas spuštění

Položky se zobrazují v sestupném pořadí počátečního času s nejnovější položkou v horní části. Stav ověření nebo spuštění migrace můžete aktualizovat výběrem možnosti Aktualizovat na řádku nabídek.

Podrobnosti o migraci

V seznamu migrací vyberte název migrace a zobrazte související podrobnosti.

Na kartě Nastavení vyberte možnost Ověřit a migrovat migraci. V tomto scénáři se ověření dokončí před zahájením migrace. Po dokončení dílčího stavu PerformingPreRequisiteSteps se pracovní postup přesune do dílčího stavu Ověření v průběhu .

  • Pokud dojde k chybám, migrace se přesune do stavu selhání .

  • Pokud je ověření dokončeno bez jakékoli chyby, migrace se spustí a pracovní postup se přesune do podstavu Migrace dat.

Podrobnosti ověření můžete zkontrolovat na úrovni instance a na úrovni databáze:

  • Ověření na úrovni instance:

    • Zkontrolujte ověření související s kontrolou připojení zdrojové verze (kontrola parametru PostgreSQL version >= 9.5 serveru), pokud jsou rozšíření povolená v parametrech serveru instance flexibilního serveru Azure Database for PostgreSQL.
  • Ověřování na úrovni databáze:

    • Zkontrolujte ověření jednotlivých databází souvisejících s rozšířeními a podporou kolací na flexibilním serveru Azure Database for PostgreSQL.

Aktuální stav migrace a ověření můžete zobrazit v podokně podrobností o migraci.

Snímek obrazovky s migrací Podrobností

Následující tabulky popisují některé možné stavy migrace a podstate.

Stavy migrace

Stát Popis
InProgress Nastavení infrastruktury migrace probíhá nebo probíhá skutečná migrace dat.
Zrušeno Migrace se zruší nebo odstraní.
Neúspěch Migrace se nezdařila.
Ověření se nezdařilo. Ověření se nezdařilo.
Uspěl Migrace proběhla úspěšně a byla dokončena.
WaitingForUserAction Platí jenom v online migracích. Čeká se na provedení přímé migrace uživatelem.

Podstavy migrace

Podstate Popis
ProvedeníPreRequisiteSteps Nastavení infrastruktury probíhá pro migraci dat.
Probíhá ověření Probíhá ověřování.
Migrace dat Probíhá migrace dat.
Dokončení migrace Migrace je v posledních fázích dokončení.
Dokončeno Migrace je dokončena.
Neúspěch Migrace se nezdařila.

Podstate ověření

Podstate Popis
Neúspěch Ověření nebylo úspěšné.
Uspěl Ověření je úspěšné.
Upozorňující Při ověřování se zobrazí upozornění.

Zahájení přímé migrace

Pokud se zobrazí migrace a ověření a migrace , dokončení online migrace vyžaduje další krok zahájení přímé migrace. Po dokončení kopírování a klonování základních dat se migrace přesune do stavu WaitingForUserAction a podstate WaitingForCutoverTrigger . V tomto stavu může uživatel spustit přímou migraci z portálu výběrem migrace.

Před zahájením přímé migrace je důležité zajistit, aby:

  • Zápisy do zdroje jsou zastaveny.
  • Hodnota latency se sníží na 0 nebo se blíží 0.

Hodnotu můžete získat latency v podokně podrobností o migraci:

Snímek obrazovky s podoknem přímé migrace

Hodnota latency označuje, kdy se cíl naposledy synchronizoval se zdrojem. V tomto okamžiku je možné zastavit zápis do zdroje a zahájit přímou migraci. Pokud je na zdrojovém serveru velký provoz, doporučujeme nejprve zastavit zápisy, latency aby se mohl blížit 0. Pak spusťte přímou akci.

Operace přímé migrace použije všechny čekající změny ze zdroje na cíl a dokončí migraci. Pokud spustíte přímou akci, a to i s nenulovou hodnotou latency, replikace se v daném okamžiku zastaví. Všechna data jsou ve zdroji, dokud se bod přímé migrace nepoužije na cíl. Pokud je například latence v přímé bodě 15 minut, použijí se pro cíl všechna změněná data za posledních 15 minut. Doba trvání přímé migrace závisí na backlogu změn, ke kterým došlo během těchto 15 minut. Proto doporučujeme, aby latence před aktivací přímé migrace přešla na nulu nebo téměř nulu.

Snímek obrazovky s dialogovým oknem, ve kterém během migrace potvrdíte přímou migraci

Migrace se přesune do stavu Úspěch , když se úspěšně dokončí dílčí stav Migrace dat nebo přímá migrace (v online migraci). Pokud v podstavu Migrace dat dojde k potížím, migrace se přesune do stavu selhání .

Snímek obrazovky znázorňující výsledky úspěšné migrace na webu Azure Portal

Ověření migrace

Po dokončení migrace databáze ručně ověřte data mezi zdrojem a cílem. Ověřte, že všechny objekty v cílové databázi byly úspěšně vytvořeny.

Po migraci můžete dokončit tyto úlohy:

  • Ověřte data na flexibilním serveru a ujistěte se, že se jedná o přesnou kopii zdrojové instance.
  • Po ověření povolte možnost vysoké dostupnosti na flexibilním serveru podle potřeby.
  • Změňte skladovou položku (verzi) flexibilního serveru tak, aby odpovídala potřebám vaší aplikace. Tato změna vyžaduje restartování databázového serveru.
  • Pokud změníte parametry serveru z jejich výchozích hodnot ve zdrojové instanci, zkopírujte tyto hodnoty parametrů serveru na flexibilní server.
  • Zkopírujte další nastavení serveru, jako jsou značky, výstrahy a pravidla brány firewall (pokud je to možné), ze zdrojové instance na flexibilní server.
  • Proveďte změny aplikace tak, aby odkazy připojovací řetězec na flexibilní server.
  • Pečlivě monitorujte výkon databáze a zjistěte, jestli vyžaduje ladění výkonu.