Kurz: Online migrace z virtuálního počítače Azure nebo místního serveru PostgreSQL do služby Azure Database for PostgreSQL s využitím služby migration Service Preview

PLATÍ PRO: Flexibilní server Azure Database for PostgreSQL

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 na flexibilní server Azure Database for PostgreSQL pomocí webu Azure Portal a Azure CLI.

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.

  • Konfigurace flexibilního serveru Azure Database for PostgreSQL
  • Konfigurace úlohy migrace
  • Monitorování migrace
  • 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šší.

Instalace test_decoding – Instalace zdroje

  • test_decoding obdrží WAL prostřednictvím logického dekódovacího mechanismu a dekóduje ho do textové reprezentace provedených operací.

  • Další informace o modulu plug-in pro dekódování testů najdete v dokumentaci k PostgreSQL.

Konfigurace 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, přejděte na stránku Vytvoření služby Azure Database for PostgreSQL.

Povolení CDC jako zdroje

  • test_decoding Modul plug-in logického dekódování zachycuje změněné záznamy ze zdroje.
  • Ve zdrojové instanci PostgreSQL nastavte následující parametry a hodnoty v konfiguračním souboru postgresql.conf:
    • Set wal_level = logical
    • Set max_replication_slots na hodnotu větší než 1, hodnota by měla být větší než počet databází vybraných pro migraci.
    • Set max_wal_senders na hodnotu větší než 1 by měla být nastavena alespoň na stejnou hodnotu jako max_replication_slots a počet odesílatelů, které už vaše instance používá.
    • Parametr wal_sender_timeout ukončí připojení replikace, která jsou neaktivní déle než zadaný počet milisekund. Výchozí hodnota pro místní databázi PostgreSQL je 6 0000 milisekund (60 sekund). Nastavení hodnoty 0 (nula) zakáže mechanismus časového limitu a je platným nastavením pro migraci.

Pokud chcete zabránit výpadku místa v online migraci, ujistěte se, že máte dostatek místa v tabulkovém prostoru pomocí zřízeného spravovaného disku. Pokud toho chcete dosáhnout, po dobu trvání migrace zakažte parametr azure.enable_temp_tablespaces_on_local_ssd serveru na flexibilním serveru 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.

  • Další důležité informace o sítích:

konfigurace pg_hba.conf: Pro usnadnění připojení mezi zdrojovými a cílovými instancemi PostgreSQL je nezbytné ověřit a potenciálně upravit soubor pg_hba.conf. Tento soubor zahrnuje ověřování klientů a musí být nakonfigurovaný tak, aby se cílový PostgreSQL mohl připojit ke zdroji. Změny souboru pg_hba.conf obvykle vyžadují restartování zdrojové instance PostgreSQL, aby se projevila.

Soubor pg_hba.conf se nachází v datovém adresáři instalace PostgreSQL. Tento soubor by se měl zkontrolovat a nakonfigurovat, pokud je zdrojová databáze místním serverem PostgreSQL nebo serverem PostgreSQL hostovaným na virtuálním počítači Azure.

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

  • Je potřeba ručně nakonfigurovat hodnoty parametrů serveru na flexibilním serveru Azure Database for PostgreSQL na základě hodnot parametrů serveru nakonfigurovaných ve zdroji.

Kontrola uživatelů a rolí

  • Uživatelé a různé role se musí migrovat ručně na flexibilní server Azure Database for PostgreSQL. Pro migraci uživatelů a rolí můžete použít pg_dumpall --globals-only -U <<username> -f <<filename>>.sql.
  • Azure Database for PostgreSQL – Flexibilní server nepodporuje žádné superuživatele; uživatelé, kteří mají role superuživatele, musí být před migrací odebráni.

Provedení migrace

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

Tento článek vás provede migrací databáze PostgreSQL z virtuálního počítače Azure nebo místního serveru 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. Tady je postup, jak začít:

  1. Otevřete webový prohlížeč a přejděte na portál. Zadejte svoje přihlašovací údaje pro přihlášení. Výchozím zobrazením je váš řídicí panel služby.

  2. Přejděte do cíle flexibilního serveru Azure Database for PostgreSQL.

  3. Na kartě Přehled flexibilního serveru se v nabídce vlevo posuňte dolů k části Migrace a vyberte ji.

    Snímek obrazovky se stránkou pro výběr migrace na webu Azure Portal

  4. Vyberte tlačítko Vytvořit, které chcete migrovat z virtuálního počítače Azure nebo místního serveru PostgreSQL na flexibilní server. Pokud používáte službu migration service poprvé, zobrazí se prázdná mřížka s výzvou k zahájení první migrace.

    Snímek obrazovky s možností Vytvořit migraci

    Pokud jste už vytvořili migrace do cíle flexibilního serveru, obsahuje mřížka informace o pokusech o migraci.

  5. Vyberte tlačítko Vytvořit. Pak si projdete řadu karet založených na průvodci a vytvoříte migraci do tohoto cíle flexibilního serveru ze zdrojového serveru PostgreSQL.

Nastavení

První kartou je karta nastavení, kde uživatel zahájí migrace zadáním podrobností o migraci, jako je název migrace a typ zdroje.

Snímek obrazovky s migrací instalačního programu

  • 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í počítač.

  • Možnost migrace umožňuje provádět 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.
    • Migrace – Přeskočí ověření a spustí migraci.
    • Ověření a migrace – Provádí ověření před aktivací migrace. Migrace se aktivuje jenom v případě, že nedojde k žádným selháním ověření.

Volba možnosti Ověřit nebo Ověřit a migrovat je vždy dobrým postupem při provádění ověření před migrací. Další informace o ověřování předběžné migrace najdete v této dokumentaci.

Režim migrace umožňuje zvolit režim migrace. Výchozí možností je offline.

Vyberte tlačítko Další: Připojit ke zdroji .

Runtime Server

Server runtime migrace je specializovaná funkce služby migrace ve službě Azure Database for PostgreSQL, která je navržená tak, aby během migrace fungovala jako zprostředkovatel. 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 stránkou serveru runtime migrace

Další informace o serveru runtime naleznete v modulu Runtime Server migrace.

Připojení ke zdroji

Na kartě Připojit ke zdroji se zobrazí výzva k zadání podrobností souvisejících se zdrojem vybraným na kartě Nastavení, která je zdrojem databází.

Snímek obrazovky s connectsourcemigration

  • Název serveru – Zadejte název hostitele nebo IP adresu zdrojové instance PostgreSQL.
  • Port – číslo portu zdrojového serveru
  • Přihlašovací jméno správce serveru – uživatelské jméno zdrojového serveru PostgreSQL
  • Heslo – heslo zdrojového serveru PostgreSQL
  • Režim SSL – Podporované hodnoty jsou upřednostňované a povinné. Pokud je SSL na zdrojovém serveru PostgreSQL vypnuté, použijte sslMODE=prefer. Pokud je SSL na zdrojovém serveru zapnuté, použijte SSLMODE=require. Hodnoty SSL je možné určit v souboru postgresql.conf.
  • Test připojení – provede test připojení mezi cílem a zdrojem. Po úspěšném připojení můžou uživatelé pokračovat dalším krokem. V opačném případě je potřeba identifikovat síťové problémy mezi cílem a zdrojem a ověřit uživatelské jméno a heslo zdroje. Vytvoření připojení mezi cílem a zdrojem trvá několik minut.

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

Výběr cíle migrace

Na kartě Cíl vybrané migrace se zobrazí 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.

Snímek obrazovky s connecttargetmigration

  • 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í – provede test připojení mezi cílem a zdrojem. Po úspěšném připojení můžou uživatelé pokračovat dalším krokem. V opačném případě musíme identifikovat síťové problémy mezi cílem a zdrojem a ověřit uživatelské jméno a heslo cíle. Vytvoření připojení mezi cílem a zdrojem trvá několik minut.

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

Výběr databází pro migraci

Na této kartě je seznam uživatelských databází uvnitř zdrojového serveru vybraného na kartě Nastavení. Při jednom pokusu o migraci můžete vybrat a migrovat až osm databází. Pokud existuje více než osm uživatelských databází, proces migrace se opakuje mezi zdrojovými a cílovými servery pro další sadu databází.

Snímek obrazovky s FetchDBmigration

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

Shrnutí

Karta Souhrn shrnuje všechny podrobnosti o zdroji a cíli pro vytvoření ověření nebo migrace. Zkontrolujte podrobnosti a vyberte tlačítko Start.

Snímek obrazovky se souhrnnou migrací

Monitorování migrace

Po výběru tlačítka Start se během několika sekund zobrazí oznámení s oznámením, že ověření nebo vytvoření migrace proběhlo úspěšně. Budete přesměrováni automaticky do okna Migrace flexibilního serveru, ve kterém je nová položka pro nedávno vytvořené ověření nebo migraci.

Snímek obrazovky s monitorováním migrace na webu Azure Portal

Mřížka, která zobrazuje migrace, obsahuje tyto 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 zobrazí v sestupném pořadí počátečního času s nejnovější položkou v horní části. Pomocí tlačítka Aktualizovat můžete aktualizovat stav ověření nebo migrace. Výběrem názvu migrace v mřížce zobrazíte přidružené podrobnosti.

Po vytvoření ověření nebo migrace se přesune do stavu InProgress a podstate PerformingPreRequisiteSteps . Nastavení infrastruktury migrace a síťových připojení trvá 2 až 3 minuty.

Podrobnosti o migraci

Na kartě Nastavení jsme jako možnost Migrace a ověření vybrali možnost migrace. V tomto scénáři se ověření provádí nejprve před zahájením migrace. Po dokončení dílčího stavu PerformingPreRequisiteSteps 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.

Výsledky ověření se zobrazí na kartě Ověření a migrace se monitoruje na kartě Migrace .

Snímek obrazovky s migrací Podrobností

Některé možné stavy migrace:

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 byla úspěšná a je dokončená.
WaitingForUserAction Platí jenom pro online migraci. Čeká se na provedení přímé akce uživatele.

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 byla dokončena.
Neúspěch Migrace se nezdařila.

Podstate ověření

Podstate Popis
Neúspěch Ověření se nezdařilo.
Uspěl Ověření je úspěšné.
Upozorňující Ověření je v upozornění.

Přímá migrace

Pokud existují migrace i ověřování a migrace, dokončení online migrace vyžaduje další krok – uživatel musí provést akci přímé migrace. Po dokončení kopírování/klonování základních dat se migrace přesune do WaitingForUserAction stavu a podkladu 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 – 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římou migraci. V případě velkého provozu ve zdroji se doporučuje nejprve zastavit zápisy, Latency aby se mohlo blížit 0, a pak se zahájí přímá migrace.

Operace přímé migrace použije všechny čekající změny ze zdroje na cíl a dokončí migraci. Pokud aktivujete přímou akci i s nenulovým stavem Latency, , replikace se zastaví až do tohoto bodu v čase. Všechna data ve zdroji, dokud se bod přímé migrace nepoužije na cíl. Pokud u přímé migrace dojde k latenci 15 minut, použijí se na cíl všechna změněná data za posledních 15 minut. 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 aktivací přímé migrace přešla na nulu nebo téměř nulu.

  • Migrace se přesune do Succeeded stavu, kdy Migrating Data se podstav nebo přímá migrace (v online migraci) úspěšně dokončí. Pokud dojde k problému v podstavu Migrating Data , migrace se přesune do Failed stavu.

Zrušení migrace

Můžete zrušit všechna probíhající ověření nebo migrace. Pracovní postup musí být ve stavu InProgress , který se má zrušit. 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 . Nepřehazuje ani nevrácí žá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.

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 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.