Sdílet prostřednictvím


Online migrace ze serveru Google Cloud SQL for PostgreSQL do služby Azure Database for PostgreSQL pomocí služby migrace

Tento článek vás provede migrací instance PostgreSQL z místních virtuálních počítačů nebo virtuálních počítačů Azure do Služby Azure Database for PostgreSQL v online režimu.

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 na flexibilní server Azure Database for PostgreSQL.

  • Požadavky
  • Provedení migrace
  • Monitorování migrace
  • Zahajte přechod
  • Kontrola migrace po dokončení

Požadavky

K zahájení migrace potřebujete následující požadavky:

Před zahájením migrace se službou Azure Database for PostgreSQL migration service je důležité splnit následující požadavky, které 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 menší než 9.5, před zahájením migrace ji upgradujte na verzi 9.5 nebo vyšší.

Poznámka:

Služba Azure Database for PostgreSQL pro migraci podporuje připojení pomocí IP adresy pro zdrojovou službu Google Cloud SQL for PostgreSQL. Formát myproject:myregion:myinstance není podporovaný.

Instalace test_decoding – nastavení zdroje

  • test_decoding obdrží WAL prostřednictvím logického dekódovacího mechanismu a dekóduje ho do textové reprezentace provedených operací.
  • V Google Cloud SQL for PostgreSQL je modul plug-in test_decoding předinstalovaný a připravený k logické replikaci. To vám umožní snadno nastavit sloty logické replikace a streamovat změny WAL, což usnadňuje případy použití, jako je zachytávání dat změn (CDC) nebo replikace do externích systémů.
  • Další informace o modulu plug-in pro dekódování testů najdete v dokumentaci k PostgreSQL.

Konfigurujte nastavení cíle

  • Před migrací je potřeba vytvořit flexibilní server Azure Database for PostgreSQL.
  • Skladová položka zřízená pro flexibilní server Azure Database for PostgreSQL by se měla shodovat se zdrojem.
  • Pokud chcete vytvořit novou službu Azure Database for PostgreSQL, navštivte web Vytvoření flexibilního serveru Azure Database for PostgreSQL.

Povolte CDC jako zdroj

  • test_decoding Modul plug-in logického dekódování zachycuje změněné záznamy ze zdroje.
  • Pokud chcete zajistit, aby uživatel migrace získal potřebná oprávnění k replikaci, spusťte následující příkaz SQL:
ALTER USER <user> WITH REPLICATION;
  • Přejděte na instanci Google Cloud SQL PostgreSQL v konzole Google Cloud Console, výběrem názvu instance otevřete stránku s podrobnostmi, vyberte tlačítko Upravit a v části Příznaky upravte následující příznaky:

    • Nastavit příznak cloudsql.logical_decoding = on
    • Nastavte příznak max_replication_slots na hodnotu větší než jedna. Hodnota by měla být větší než počet databází vybraných pro migraci.
    • Nastavte příznak max_wal_senders na hodnotu větší než jednu. Ve vaší instanci by to mělo být alespoň stejné jako max_replication_slots, plus počet odesílatelů, kteří již byli použiti.
    • Příznak wal_sender_timeout ukončí neaktivní replikace po době delší než zadaný počet milisekund. Nastavení hodnoty 0 (nula) zakáže mechanismus časového limitu a je platným nastavením pro migraci.
  • Aby nedošlo k nedostatku úložiště pro ukládání protokolů při online migraci na cílovém flexibilním serveru, ujistěte se, že máte dostatek místa v tabulkovém prostoru pomocí přiděleného spravovaného disku. Pokud toho chcete dosáhnout, zakažte parametr azure.enable_temp_tablespaces_on_local_ssd serveru po dobu trvání migrace a po migraci ho obnovte 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 Azure Database for PostgreSQL. Následující konfigurace sítě jsou nezbytné pro úspěšnou migraci.

Informace o nastavení sítě najdete v průvodci 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í a moduly.

Kontrola parametrů serveru

Tyto parametry 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 se službou Azure Database for PostgreSQL tak, že na webu Azure Portal přistupujete k části Parametry serveru a odpovídajícím způsobem hodnoty aktualizujete ručně.

  • Uložte změny parametrů a restartujte 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 důležité ř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 služby Azure Database for PostgreSQL. K usnadnění tohoto procesu můžete použít pg_dumpall nástroj s příznakem --globals-only k exportu globálních objektů, jako jsou role a uživatelské účty. Spusťte následující příkaz a nahraďte <<username>> skutečné uživatelské jméno a <<filename>> požadovaný název výstupního souboru:

    pg_dumpall --globals-only -U <<username>> -f <<filename>>.sql
    
  • Omezení rolí superuživatele: Azure Database for PostgreSQL nepodporuje role superuživatele. Uživatelé s oprávněními superuživatele proto musí mít tato oprávnění před migrací odebraná. Ujistěte se, že odpovídajícím způsobem upravíte oprávnění a role.

Pomocí 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živatele.

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

  • Zakázání vysoké dostupnosti (spolehlivosti) a replik pro čtení v cílovém prostředí je nezbytné. Tyto funkce by se měly povolit až po dokončení migrace.

  • Pokud budete postupovat podle těchto pokynů, můžete pomoci zajistit hladký proces migrace bez dalších proměnných zaváděných funkcemi vysoké dostupnosti a replikací pro čtení. Po dokončení migrace a stabilní databázi můžete tyto funkce povolit, abyste zlepšili dostupnost a škálovatelnost vašeho databázového prostředí v Azure.

Provedení migrace

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

Tento článek vás provede migrací databáze PostgreSQL ze serveru Google Cloud SQL for PostgreSQL na azure Database for PostgreSQL pomocí webu Azure Portal. Azure Portal umožňuje provádět různé úlohy, včetně migrace databází. Podle kroků popsaných v tomto kurzu můžete bezproblémově přenášet databázi do Azure a využívat její výkonné funkce a škálovatelnost.

Konfigurace úlohy migrace

Služba migrace se dodává s jednoduchým prostředím založeným na průvodci na webu Azure Portal.

Použití portálu Azure:

  1. Vyberte flexibilní server Azure Database for PostgreSQL.

  2. V nabídce prostředků vyberte Možnost Migrace.

    Snímek obrazovky se stránkou Migrace

  3. Výběrem možnosti Vytvořit můžete procházet řadu karet založených na průvodci a provést migraci na flexibilní server z místního nebo virtuálního počítače Azure.

    Poznámka:

    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ž byly zahájeny migrace na flexibilní server, mřížka nyní obsahuje informace o proběhlých pokusech o migraci.

    Snímek obrazovky s kartou Nastavení, která se zobrazí po výběru možnosti Vytvořit na stránce Migrace

Nastavení

Potřebujete zadat více podrobností souvisejících s migrací, jako je název migrace, typ zdrojového serveru, možnost a režim.

  • Název migrace je jedinečný identifikátor pro každou migraci do tohoto cíle flexibilního serveru. Toto pole přijímá pouze alfanumerické znaky a nepřijímá žádné speciální znaky s výjimkou spojovníku (-). Název nemůže začínat pomlčkou a měl by 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 – V závislosti na zdroji PostgreSQL můžete vybrat virtuální počítač Azure nebo místní server.

  • Možnost migrace – Umožňuje provést ověření před aktivací migrace. Můžete vybrat některou z následujících možností:

    • Ověření – Zkontroluje připravenost serveru a databáze na migraci do cíle.
    • Ověření a migrace – Provádí ověření před aktivací migrace. Pokud nedojde k žádným selháním ověření, zahájí se migrace.

Volba možnosti Ověřit nebo Ověřit a migrovat je před spuštěním migrace vždy dobrým postupem pro provádění ověření před migrací.

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

  • Režim migrace umožňuje vybrat režim migrace. Offline je výchozí možností. V tomto případě ho změníme na Online.

Vyberte Další: běhový server.

Snímek obrazovky s kartou Nastavení po zadání nezbytných podrobností

Server runtime

Server pro runtime migrace je specializovaná funkce v rámci služby migrace ve službě Azure Database pro PostgreSQL, navržená tak, aby během migrace fungovala jako prostřední server. Jedná se o samostatnou instanci flexibilního serveru Azure Database for PostgreSQL, která není cílovým serverem, ale slouží k usnadnění migrace databází ze zdrojového prostředí, které je přístupné pouze prostřednictvím privátní sítě.

Snímek obrazovky se záložkou serveru Runtime

Další informace o běhovém serveru naleznete na odkazu Migration runtime server.

Zdrojový server

Na kartě Zdrojový server se zobrazí výzva k zadání podrobností souvisejících se zdrojem vybraným na kartě Nastavení , což je zdroj databází.

  • Název serveru – Zadejte název hostitele nebo IP adresu zdrojového serveru PostgreSQL.
  • Port – Číslo portu zdrojového serveru.
  • Přihlášení správce – jméno uživatele správce zdrojového serveru PostgreSQL.
  • Heslo – Heslo přihlašovacího jména správce poskytnutého pro připojení ke zdrojovému serveru PostgreSQL.
  • Režim SSL – podporované hodnoty jsou preferred a required. Pokud je OFFssl na zdrojovém serveru PostgreSQL , použijte prefer. Pokud je ONssl na zdrojovém serveru, použijte require. Hodnoty SSL je možné určit v souboru postgresql.conf zdrojového serveru.
  • Test připojení – provede test připojení mezi cílem a zdrojem. Po úspěšném připojení můžete přejít na další kartu. Cílem těchto testů je identifikovat jakékoli problémy s připojením, které by mohly existovat mezi cílovým a zdrojovým serverem, včetně ověření totožnosti pomocí poskytnutých přihlašovacích údajů. Vytvoření testovacího připojení trvá několik sekund.

Po úspěšném testovacím připojení vyberte Další: Cílový server.

Snímek obrazovky se záložkou Migrace zdrojového serveru

Cílový server

Na kartě Cílový server se zobrazují metadata pro cíl flexibilního serveru, jako je název předplatného, skupina prostředků, název serveru, umístění a verze PostgreSQL.

  • Přihlášení správce – jméno uživatele správce cílového serveru PostgreSQL.
  • Heslo – Heslo přihlašovacího jména správce poskytnutého pro připojení k cílovému serveru PostgreSQL.
  • Vlastní plně kvalifikovaný název domény nebo IP adresa: Vlastní plně kvalifikovaný název domény nebo pole IP adresy je volitelné a dá se 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 je production-flexible-server.example.com, 198.1.0.2 nebo plně kvalifikovaný název domény PostgreSQL, například production-flexible-server.postgres.database.azure.com, pokud vlastní server DNS obsahuje zónu DNS postgres.database.azure.com nebo směřuje dotazy pro tuto zónu do 168.63.129.16, kde se plně kvalifikovaný název domény přeloží ve veřejné nebo privátní zóně DNS Azure.
  • Test připojení – provede test připojení mezi zdrojem a cílem. Po úspěšném připojení můžete přejít na další kartu. Cílem těchto testů je identifikovat jakékoli problémy s připojením, které by mohly existovat mezi zdrojovým a cílovým serverem, včetně ověření autentizace pomocí zadaných přihlašovacích údajů. Vytvoření testovacího připojení trvá několik sekund.

Po úspěšném testovacím připojení vyberte Další: Databáze, které chcete ověřit nebo migrovat.

Snímek obrazovky s kartou Migrace cílového serveru

Databáze k validaci nebo migraci

Na kartě Databáze, které chcete ověřit nebo migrovat , můžete zvolit seznam 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 Databáze pro ověření nebo migraci

Shrnutí

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

Snímek obrazovky s kartou Souhrnná migrace

Zrušení ověření nebo migrace

Můžete zrušit všechna probíhající ověření nebo migrace. Pracovní postup musí být ve stavu Probíhá , aby byl zrušen. Ověření nebo migraci nemůžete zrušit ve stavu Úspěšné nebo Neúspěšné .

Zrušením ověření se zastaví jakákoli další ověřovací aktivita a ověření se přesune do stavu Zrušeno .

Zrušení migrace zastaví další aktivitu migrace na cílovém serveru a přesune se do stavu Zrušeno . Nevyvolá ani nevrátí zpět žádné změny na cílovém serveru. Nezapomeňte odstranit databáze na cílovém serveru, který je součástí zrušené migrace.

Monitorování migrace

Po výběru tlačítka Zahájit ověření a migraci se během několika sekund zobrazí oznámení, že ověření nebo vytvoření migrace proběhlo úspěšně. Automaticky se přesměrujete na stránku Migrace flexibilního serveru. Položka zobrazuje Stav jako Probíhá. Nastavení infrastruktury migrace a kontrola síťových připojení v rámci pracovního postupu trvá 2 až 3 minuty.

Snímek obrazovky stránky migrace monitorů.

Mřížka, která zobrazuje migrace, má následující sloupce: Název, Stav, Režim migrace, Typ migrace, Zdrojový server, Typ zdrojového serveru, Databáze, Doba trvání a Čas zahájení. Položky se zobrazují seřazené podle počátečního času v sestupném pořadí s nejnovější položkou nahoře. Pomocí tlačítka Aktualizovat na panelu nástrojů můžete aktualizovat stav ověření nebo spuštění migrace.

Podrobnosti o migraci

Výběrem názvu migrace v mřížce zobrazíte přidružené podrobnosti.

Mějte na paměti, že v předchozích krocích jste při vytváření této migrace nakonfigurovali možnost migrace jako Ověřit a migrovat. V tomto scénáři se před zahájením migrace nejprve provede ověření. Po dokončení dílčího stavu provádění požadovaných kroků se pracovní postup přesune do dílčího stavu probíhajícího ověření.

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

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

Podrobnosti o ověření jsou k dispozici na úrovni instance a databáze.

  • Informace o ověření instance
    • Obsahuje ověření týkající se kontroly připojení, zdrojové verze, tj. verze >PostgreSQL = 9.5 a kontrola parametrů serveru, jestli jsou rozšíření povolená v parametrech serveru flexibilního serveru Azure Database for PostgreSQL.
  • Podrobnosti o ověření a migraci databází
    • Obsahuje ověřování jednotlivých databází souvisejících s rozšířeními a podporou kolace na flexibilním serveru Azure Database for PostgreSQL.

Stav ověření a stav migrace můžete zobrazit na stránce s podrobnostmi o migraci.

Snímek obrazovky s podrobnostmi znázorňujícími ověření a migraci

Některé možné stavy migrace:

Stav migrace

Stav Popis
Probíhající Nastavování migrační infrastruktury je v procesu, nebo právě 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 byla úspěšná a je dokončená.
Čekání na akci uživatele Čeká se na akci uživatele k provedení přechodu.

Podrobnosti o migraci

Dílčí stav Popis
Provedení požadovaných kroků Nastavení infrastruktury probíhá pro migraci dat.
Probíhá ověřování Probíhá ověřování.
Vyřazení databáze podle cíle Vyřazení již existující databáze na cílovém serveru
Migrace dat Probíhá migrace dat.
Dokončení migrace Migrace je v posledních fázích dokončení.
Dokončeno Migrace byla dokončena.
Neúspěch Migrace se nezdařila.

Dílčí stavy ověřování

Dílčí stav Popis
Neúspěch Ověření se nezdařilo.
Uspěl Ověření je úspěšné.
Varování Ověření je v upozornění.

Zahajte přechod

Můžete zahájit přímou migraci prostřednictvím Azure portal nebo Azure CLI.

U možnosti Ověření a migrace je k dokončení online migrace nutné, aby uživatel provedl další krok, kterým je spuštění akce přepnutí. Po dokončení kopírování nebo klonování základních dat se migrace přesune do Waiting for user action stavu a Waiting for cutover trigger podstavu. V tomto stavu může uživatel přímo z portálu spustit přepnutí výběrem migrace.

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

  • Zápisy do zdroje jsou zastaveny – latency hodnota je 0 nebo blízko 0. Informace latency lze získat z obrazovky s podrobnostmi o migraci, jak je znázorněno níže:
  • latency hodnota se zmenší na 0 nebo se blíží 0.
  • Hodnota latency označuje, kdy se cíl naposledy synchronizoval se zdrojem. Zápis do zdroje může být v tuto chvíli zastaven a lze zahájit přepnutí. V případě velkého provozu ve zdroji se doporučuje nejprve zastavit zápisy, aby se latency mohlo blížit 0, a pak se zahájí fáze přepnutí.

Operace přepnutí použije všechny čekající změny ze zdrojového serveru na cílový server a dokončí migraci. Pokud zahájíte přechod, i když je nenulová latency, replikace se zastaví k danému bodu v čase. Všechna data na zdroji až do bodu přímé migrace, kdy se data aplikují na cíl. Pokud u řezného bodu dojde k latenci 15 minut, všechny změny provedené v datech za posledních 15 minut se použijí na cíl.

Doba závisí na backlogu změn, ke kterým dochází za posledních 15 minut. Proto se doporučuje, aby latence před přepnutím klesla na nulu nebo téměř nulu.

  • Migrace se přesune na Succeeded status, když Migrating data substatus nebo přepnutí (v online migraci) úspěšně dokončí. Pokud dojde k problému v Migrating data dílčím stavu, migrace se přesune do Failed stavu.

Kontrola migrace po dokončení

Po dokončení databází je potřeba ručně ověřit data mezi zdrojem a cílem a ověřit, že se všechny objekty v cílové databázi úspěšně vytvořily.

Po migraci můžete provádět následující ú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 flexibilního serveru tak, aby odpovídala potřebám 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ím serveru.

  • 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 připojovací řetězce směřovaly na flexibilní server.

  • Pečlivě monitorujte výkon databáze a zjistěte, jestli vyžaduje ladění výkonu.