Kurz: migrace programu RDS PostgreSQL do služby Azure DB pro PostgreSQL online pomocí DMS

Pomocí Azure Database Migration Service můžete migrovat databáze z instance služby RDS PostgreSQL do Azure Database for PostgreSQL , zatímco zdrojová databáze zůstane během migrace online. Jinými slovy, migraci je možné dosáhnout s minimálními výpadky aplikace. V tomto kurzu migrujete ukázkovou databázi pronájmu DVD z instance služby RDS PostgreSQL 9,6 na Azure Database for PostgreSQL pomocí online aktivity migrace v Azure Database Migration Service.

V tomto kurzu se naučíte:

  • Pomocí nástroje pg_dump migrujte vzorové schéma.
  • Vytvořte instanci služby Azure Database Migration Service.
  • Vytvořte projekt migrace pomocí Azure Database Migration Service.
  • Spuštění migrace
  • Monitorujte migraci.
  • Proveďte přímou migraci migrace.

Poznámka

použití Azure Database Migration Service k provedení online migrace vyžaduje vytvoření instance založené na cenové úrovni Premium. Další informace najdete na stránce s cenami Azure Database Migration Service. Šifrováním disku zabráníte krádeži dat během migrace.

Důležité

Aby migrace proběhla optimálním způsobem, doporučuje Microsoft vytvořit instanci služby Azure Database Migration Service ve stejné oblasti Azure, ve které je cílová databáze. Přenášení dat mezi oblastmi geografickými lokalitami může zpomalit proces migrace a způsobit chyby.

Tip

Pokud do Azure migrujete databáze pomocí služby Azure Database Migration Service, můžete provést offline nebo online migraci. V případě offline migrace dojde při spuštění migrace k výpadku aplikace. V případě online migrace je doba výpadku omezená na dobu přímé migrace na konci migrace. Doporučujeme otestovat offline migraci a určit, jestli je výpadek přijatelný. Pokud není, proveďte online migraci.

Tento článek popisuje, jak provést online migraci z místní instance PostgreSQL do Azure Database for PostgreSQL.

Požadavky

Pro absolvování tohoto kurzu je potřeba provést následující:

  • Stáhněte a nainstalujte si PostgreSQL community edition 9,5, 9,6 nebo 10. Verze zdrojového PostgreSQL serveru musí být 9.5.11, 9.6.7, 10 nebo novější. Další informace najdete v článku podporované verze databáze PostgreSQL.

    Všimněte si také, že cílová verze Azure Database for PostgreSQL musí být stejná nebo vyšší než verze PostgreSQL služby RDS. Například služba RDS PostgreSQL 9,6 se dá migrovat jenom na Azure Database for PostgreSQL 9,6, 10 nebo 11, ale ne na Azure Database for PostgreSQL 9,5.

  • Vytvořte instanci Azure Database for PostgreSQL nebo Azure Database for PostgreSQL-Citus (škálovánína více instancí). Podrobnosti o tom, jak se připojit k serveru PostgreSQL pomocí pgAdmin, najdete v této části dokumentu.

  • vytvořte Microsoft Azure Virtual Network pro Azure Database Migration Service pomocí modelu nasazení Azure Resource Manager, který umožňuje připojení typu site-to-site k vašim místním zdrojovým serverům pomocí ExpressRoute nebo VPN. Další informace o vytváření virtuálních sítí najdete v dokumentaci k Virtual Networka zejména v článcích rychlý Start s podrobnými údaji.

  • zajistěte, aby pravidla skupiny zabezpečení sítě virtuálních sítí neblokovala odchozí port 443 ServiceTag pro ServiceBus, Storage a AzureMonitor. Další podrobnosti o filtrování provozu NSG virtuální sítě najdete v článku filtrování provozu sítě pomocí skupin zabezpečení sítě.

  • Nakonfigurujte bránu Windows Firewall pro přístup k databázovému stroji.

  • otevřete bránu Windows firewall a umožněte Azure Database Migration Service přístup ke zdrojovému serveru PostgreSQL, který je ve výchozím nastavení port TCP 5432.

  • Pokud před zdrojovými databázemi používáte zařízení brány firewall, možná bude potřeba přidat pravidla brány firewall, která službě Azure Database Migration Service povolí přístup ke zdrojovým databázím za účelem migrace.

  • Vytvořte pravidlo brány firewall na úrovni serveru pro Azure Database for PostgreSQL Server, aby bylo možné Azure Database Migration Service přístup k cílovým databázím. Zadejte rozsah podsítě virtuální sítě, která se používá pro Azure Database Migration Service.

Nastavení AWS VP PostgreSQL pro replikaci

  1. Pokud chcete vytvořit novou skupinu parametrů, postupujte podle pokynů uvedených v AWS v článku práce se skupinami parametrů DB.

  2. Pomocí hlavního uživatelského jména se připojte ke zdroji z Azure Database Migration Service. Pokud používáte jiný účet než hlavní uživatelský účet, musí mít účet roli rds_superuser a roli rds_replication. Role rds_replication uděluje oprávnění ke správě logických slotů a ke streamování dat pomocí logických slotů.

  3. Vytvořte novou skupinu parametrů s následující konfigurací:

    a. Nastavte parametr rds.logical_replication ve skupině parametrů databáze na hodnotu 1.

    b. max_wal_senders = [počet souběžných úloh] – parametr max_wal_senders nastaví počet souběžných úloh, které mohou být spuštěny, doporučí 10 úkolů.

    c. max_replication_slots – = [počet slotů], doporučuje se nastavit na pět slotů.

  4. Přidružte skupinu parametrů, kterou jste vytvořili, do instance RDS PostgreSQL.

Migrace schématu

  1. Extrahujte schéma ze zdrojové databáze a použijte ho pro cílovou databázi k dokončení migrace všech databázových objektů, jako jsou schémata tabulky, indexy a uložené procedury.

    Nejjednodušší způsob, jak migrovat pouze schéma, je použít pg_dump s možností-s. Další informace najdete v příkladech v kurzu Postgres pg_dump.

    pg_dump -o -h hostname -U db_username -d db_name -s > your_schema.sql
    

    Chcete-li například vypsat soubor schématu pro databázi dvdrental , použijte následující příkaz:

    pg_dump -o -h localhost -U postgres -d dvdrental -s  > dvdrentalSchema.sql
    
  2. V cílové službě vytvořte prázdnou databázi, která je Azure Database for PostgreSQL. Informace o připojení a vytvoření databáze najdete v jednom z následujících článků:

  3. Importujte schéma do cílové služby, což je Azure Database for PostgreSQL. Chcete-li obnovit soubor s výpisem stavu schématu, spusťte následující příkaz:

    psql -h hostname -U db_username -d db_name < your_schema.sql
    

    Příklad:

    psql -h mypgserver-20170401.postgres.database.azure.com  -U postgres -d dvdrental < dvdrentalSchema.sql
    

Poznámka

Služba migrace interně zpracovává povolení a zakázání cizích klíčů a triggerů, aby se zajistila spolehlivá a robustní migrace dat. V důsledku toho se nemusíte starat o provádění jakýchkoli úprav schématu cílové databáze.

Registrace poskytovatele prostředků Microsoft.DataMigration

  1. Přihlaste se k webu Azure Portal. Vyhledejte a vyberte odběry.

    Zobrazení předplatných na portálu

  2. Vyberte předplatné, ve kterém chcete vytvořit instanci Azure Database Migration Service a pak vyberte poskytovatelé prostředků.

    Zobrazení poskytovatelů prostředků

  3. Vyhledejte migraci a pak vyberte zaregistrovat pro migraci Microsoft. data.

    Registrace poskytovatele prostředků

Vytvoření instance služby Azure Database Migration Service

  1. Na webu Azure Portal vyberte + Vytvořit prostředek, vyhledejte „Azure Database Migration Service“ a pak v rozevíracím seznamu vyberte Azure Database Migration Service.

    Azure Marketplace

  2. Na obrazovce Azure Database Migration Service vyberte Vytvořit.

    Vytvoření instance služby Azure Database Migration Service

  3. Na obrazovce Vytvořit službu Migration Service zadejte název služby, předplatné a novou nebo existující skupinu prostředků.

  4. Vyberte umístění, ve kterém chcete vytvořit instanci Azure Database Migration Service.

  5. Vyberte existující virtuální síť nebo vytvořte novou.

    Virtuální síť poskytuje Azure Database Migration Service s přístupem ke zdrojové instanci PostgreSQL a cílové Azure Database for PostgreSQL instance.

    Další informace o tom, jak vytvořit virtuální síť v Azure Portal, najdete v článku vytvoření virtuální sítě pomocí Azure Portal.

  6. Vyberte cenovou úroveň; v případě této online migrace nezapomeňte vybrat cenové úrovně Premium: 4vCores.

    Konfigurace nastavení instance služby Azure Database Migration Service

  7. Vyberte Vytvořit a vytvořte službu.

Vytvoření projektu migrace

Po vytvoření služby ji vyhledejte na webu Azure Portal, otevřete ji a pak vytvořte nový projekt migrace.

  1. Na webu Azure Portal vyberte Všechny služby, vyhledejte „Azure Database Migration Service“ a pak vyberte Služby Azure Database Migration Service.

    Vyhledání všech instancí služby Azure Database Migration Service

  2. Na obrazovce služby Azure Database Migration Services vyhledejte název Azure Database Migration Service instance, kterou jste vytvořili, vyberte instanci a pak vyberte + Nový Project migrace.

  3. Na obrazovce Nový projekt migrace zadejte název projektu, v textovém poli typ zdrojového serveru vyberte AWS VP pro PostgreSQL a potom v textovém poli typ cílového serveru vyberte Azure Database for PostgreSQL.

  4. V části Zvolte typ aktivity vyberte možnost migrace online dat.

    Důležité

    Ujistěte se, že jste vybrali online migraci dat; offline migrace nejsou v tomto scénáři podporovány.

    Vytvoření projektu Database Migration Service

    Poznámka

    Alternativně můžete zvolit vytvořit projekt pouze k vytvoření projektu migrace a provést migraci později.

  5. Vyberte Uložit.

  6. Vyberte Vytvořit a spustit aktivitu a vytvořte projekt a spusťte aktivitu migrace.

    Poznámka

    Poznamenejte si požadavky potřebné k nastavení online migrace v okně pro vytvoření projektu.

Zadání podrobností o zdroji

  • Na obrazovce Přidat podrobnosti zdroje zadejte podrobnosti o připojení ke zdrojové instanci PostgreSQL.

    Podrobnosti zdroje

Zadání podrobností o cíli

  1. Vyberte Uložit a pak na obrazovce cílové podrobnosti zadejte podrobnosti o připojení pro cílový Azure Database for PostgreSQL Server, který je předem zřízený a má schéma zaplacení DVD nasazené pomocí pg_dump.

    Údaje o cíli

  2. Vyberte Uložit a pak na obrazovce Mapovat na cílové databáze namapujte zdrojovou a cílovou databázi pro migraci.

    Pokud cílová databáze obsahuje stejný název databáze jako zdrojová databáze, Azure Database Migration Service ve výchozím nastavení vybere cílovou databázi.

    Mapování na cílové databáze

  3. Vyberte Uložit, na obrazovce Shrnutí migrace do textového pole Název aktivity zadejte název aktivity migrace a pak zkontrolujte souhrnné informace a ujistěte se, že podrobnosti zdroje a cíle odpovídají dříve zadaným informacím.

    Shrnutí migrace

Spuštění migrace

  • Vyberte Spustit migraci.

    Zobrazí se okno aktivity migrace a Stav aktivity bude Inicializace.

Monitorování migrace

  1. Na obrazovce aktivity migrace vyberte Aktualizovat a aktualizujte zobrazení, dokud se Stav migrace nezmění na Spuštěno.

    Stav aktivity – spuštěno

  2. V části NÁZEV DATABÁZE vyberte konkrétní databázi, abyste se k stavu migrace dostali u operací úplného načtení dat a přírůstkové synchronizace dat.

    Úplné načtení dat ukazuje stav migrace počátečního načtení, zatímco přírůstková synchronizace dat zobrazuje stav zachytávání změn dat (CDC).

    Obrazovka Inventář – úplné načtení dat

    Obrazovka inventáře – přírůstková synchronizace dat

Provedení přímé migrace

Po dokončení počátečního úplného načtení se databáze označí jako Ready to Cutover (Připraveno k přímce).

  1. Jakmile budete připraveni dokončit migraci databází, vyberte Spustit přímou migraci.

  2. Počkejte, se na čítač Čekající změny zobrazí 0, abyste zajistili zastavení všech příchozích transakcí do zdrojové databáze, zaškrtněte políčko Potvrdit a pak vyberte Použít.

    Obrazovka pro dokončení přechodu

  3. Když se jako stav migrace databáze zobrazí Dokončeno, připojte své aplikace k nové cílové Azure Database for PostgreSQL databázi.

Vaše online migrace místní instance RDS PostgreSQL do Azure Database for PostgreSQL je dokončená.

Další kroky