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
- Instalace test_decoding – Instalace zdroje
- Konfigurace nastavení cíle
- Povolení CDC jako zdroje
- Konfigurace nastavení sítě
- Povolení rozšíření
- Kontrola parametrů serveru
- Kontrola uživatelů a rolí
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:
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.
Přejděte do cíle flexibilního serveru Azure Database for PostgreSQL.
Na kartě Přehled flexibilního serveru se v nabídce vlevo posuňte dolů k části Migrace a vyberte ji.
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.
Pokud jste už vytvořili migrace do cíle flexibilního serveru, obsahuje mřížka informace o pokusech o migraci.
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.
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ě.
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í.
- 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.
- 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.com
je ,198.1.0.2
nebo plně kvalifikovaný název domény PostgreSQL, napříkladflexibleserver.postgres.database.azure.com
, pokud vlastní server DNS obsahuje zónupostgres.database.azure.com
DNS nebo předává dotazy pro tuto zónu do168.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í.
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.
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.
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 .
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. InformaceLatency
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, kdyMigrating Data
se podstav nebo přímá migrace (v online migraci) úspěšně dokončí. Pokud dojde k problému v podstavuMigrating Data
, migrace se přesune doFailed
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.