O službě Azure Database for PostgreSQL backup (preview)

Azure Backup a Azure Database Services se sesouvají k vytvoření řešení zálohování podnikové třídy pro servery Azure Database for PostgreSQL, které si zálohy zachová až 10 let. Řešení nabízí kromě dlouhodobého uchovávání tyto možnosti:

  • Plánované zálohy a zálohy na vyžádání řízené zákazníkem na úrovni jednotlivých databází
  • Úroveň databáze se obnoví na libovolném serveru PostgreSQL nebo do libovolného úložiště objektů blob.
  • Centrální monitorování všech operací a úloh.
  • Zálohy se ukládají do samostatných domén zabezpečení a chyb. Pokud je zdrojový server nebo předplatné za žádných okolností ohrožený, zůstanou zálohy v trezoru zálohování v bezpečí (v účtech spravovaného úložiště Azure Backup).
  • Použití pg_dump umožňuje větší flexibilitu při obnovování. To vám pomůže obnovit v různých verzích databáze.

Toto řešení můžete použít nezávisle na sobě nebo kromě nativního záložního řešení, které nabízí Azure PostgreSQL, které nabízí uchovávání až 35 dní. Nativní řešení je vhodné pro provozní obnovení, například když chcete obnovit nejnovější zálohy. Řešení Azure Backup vám pomůže s vašimi požadavky na dodržování předpisů a s podrobnějším a flexibilnějším zálohováním a obnovením.

Matice podpory

Podpora Podrobnosti
Podporovaná nasazení Azure Database for PostgreSQL – Single Server
Podporované oblasti Azure Východ USA, Východ USA 2, Střední USA, Jižní USA, Západ USA, Západ USA 2, Západ– střed USA, Brazílie – jih, Kanada – střed, Severní Evropa, Západní Evropa, Spojené království – jih, Spojené království – západ, Německo – střed, Švýcarsko – sever, Švýcarsko – západ, Východní Asie, Jihovýchodní Asie, Japonsko – východ, Japonsko – západ, Korea – střed, Jižní Korea, Indie – střed, Austrálie – východ, Austrálie – střed, Austrálie – střed, Austrálie – střed 2, SAE North
Podporované verze Azure PostgreSQL 9.5, 9.6, 10, 11

Aspekty a omezení funkcí

  • Všechny operace jsou podporované jenom z portálu Azure Portal.
  • Doporučený limit maximální velikosti databáze je 400 GB.
  • Zálohování mezi oblastmi není podporované. Proto nemůžete zálohovat server Azure PostgreSQL do trezoru v jiné oblasti. Stejně tak můžete obnovit zálohu jenom na server ve stejné oblasti jako trezor. Podporujeme ale zálohování a obnovení mezi předplatným.
  • Během obnovení se obnoví jenom data. "role" nejsou obnoveny.
  • Ve verzi Preview doporučujeme spustit řešení jenom v testovacím prostředí.

Proces zálohování

  1. Jako správce zálohování můžete zadat databáze Azure PostgreSQL, které chcete zálohovat. Můžete taky zadat podrobnosti trezoru klíčů Azure, ve které jsou uloženy přihlašovací údaje potřebné pro připojení k zadané databázi. Tyto přihlašovací údaje bezpečně osedí správce databáze v trezoru klíčů Azure.
  2. Služba zálohování pak ověří, jestli má příslušná oprávnění k ověření na zadaném serveru PostgreSQL a k zálohování databází.
  3. Azure Backup roztáčí roli pracovního procesu (VM) s nainstalovaným záložním rozšířením pro komunikaci s chráněným serverem PostgreSQL. Toto rozšíření se skládá z koordinátoři a modulu plug-in PostgreSQL. Koordinuje spouštění pracovních postupů pro různé operace, jako je zálohování a obnovení, a modul plug-in spravuje skutečný tok dat.
  4. V naplánovaném čase komunikuje s modulem plug-in, aby s ním začal streamovat záložní data ze serveru PostgreSQL pg_dump (vlastní).
  5. Modul plug-in odesílá data přímo na účty spravovaného úložiště Azure Backup (maskované trezorem Backup), takže není potřeba fázovaného umístění. Data se šifrují pomocí klíčů spravovaných Microsoftem a ukládají se službou Azure Backup v účtech úložiště.

Diagram showing the backup process.

Azure Backup authentication with the PostgreSQL server

Azure Backup dodržuje přísné bezpečnostní pokyny stanovené Azure; oprávnění k prostředku, který chcete zálohovat, se předpokládá a uživatel ho musí výslovně udělit.

Model ověřování založený na trezoru klíčů

Služba Azure Backup se musí při každém zálohování připojit k Azure PostgreSQL. I když se k tomuto připojení používá "uživatelské jméno + heslo" (nebo připojovací řetězec), který odpovídá databázi, nejsou tyto přihlašovací údaje uložené ve službě Azure Backup. Místo toho musí správce databáze tyto přihlašovací údaje bezpečně zaeedovat v trezoru klíčů Azure jako tajný klíč. Správce pracovního vytížení zodpovídá za správu a otáčení přihlašovacích údajů. Azure Backup volá nejnovější tajné podrobnosti z trezoru klíčů, aby zálohu získal.

Diagram showing the workload or database flow.

Sada oprávnění potřebných pro zálohování databáze Azure PostgreSQL

  1. Udělte msi trezoru zálohování následující přístupová oprávnění:

    • Přístup čtečky na serveru Azure PostgreSQL.
    • Key Vault Secrets User (nebo get, list secrets) access on the Azure key vault.
  2. Přístup k síti na:

    • Server Azure PostgreSQL – povolení přístupu k příznaku služeb Azure se nastaví na Ano.
    • Trezor klíčů : Povolte, aby služby Microsoft příznak důvěryhodného klíče byl nastavený na Ano.
  3. Oprávnění k zálohování uživatele databáze v databázi

Poznámka:

Tato oprávnění můžete udělit v rámci konfigurace toku zálohování jediným kliknutím, pokud máte (správce zálohování) přístup k zamýšleným prostředkům pro zápis, nebo použijte šablonu ARM, pokud nemáte požadovaná oprávnění (pokud je zapojeno více osob).

Sada oprávnění potřebných pro obnovení databáze Azure PostgreSQL

Oprávnění k obnovení jsou podobná oprávněním potřebným pro zálohování a musíte udělit oprávnění na cílovém serveru PostgreSQL a odpovídajícím trezoru klíčů. Na rozdíl od konfigurace toku zálohování není momentálně dostupné prostředí pro udělení těchto oprávnění v textu. Proto musíte přístup na serveru Postgresa odpovídající trezoru klíčů udělit ručně.

Kromě toho ověřte, že uživatel databáze (odpovídající přihlašovacím údajům uloženým v trezoru klíčů) má v databázi následující oprávnění pro obnovení:

  • ALTER USER uživatelské jméno CREATEDB;
  • Přiřaďte azure_pg_admin roli uživateli databáze.

Azure Active Directory modelu ověřování

Dříve jsme spustili jiný model ověřování, který byl zcela založený na Azure Active Directory (Azure AD). Teď ale nabízíme nový model ověřování založený na trezoru klíčů (jak je vysvětleno výše), což usnadňuje proces konfigurace.

Stáhněte si tento dokument a získejte automatizovaný skript a související pokyny k použití tohoto modelu ověřování. Udělí odpovídající sadu oprávnění k zálohování a obnovení serveru Azure PostgreSQL.

Poznámka:

Veškerá nová ochrana konfigurace se bude odehrát jenom s novým modelem ověřování trezoru klíčů. Všechny stávající záložní instance nakonfigurované ochrany pomocí ověřování založeného na službě Azure AD ale budou dál existovat a budou mít pravidelné zálohování. Pokud chcete obnovit tyto zálohy, musíte postupovat podle ověřování založeného na službě Azure AD.

Ruční udělení přístupu na serveru Azure PostgreSQL a trezoru klíčů

Pokud chcete udělit všechna přístupová oprávnění, která Azure Backup potřebuje, přečtěte si následující části:

Přístupová oprávnění na serveru Azure PostgreSQL

  1. Nastavte přístup čtečky MSI trezoru zálohování na serveru Azure PostgreSQL.Set Backup vault's MSI Reader access on the Azure PostgreSQL server.

    Screenshot showing the option to set Backup vault’s MSI Reader access on the Azure PostgreSQL server.

  2. Přístup k síti na serveru Azure PostgreSQL: Příznak Povolit přístup ke službám Azure nastavte na Ano.

    Screenshot showing the option to set network line of sight access on the Azure PostgreSQL server.

Přístupová oprávnění k trezoru Klíčů Azure (spojené se serverem PostgreSQL)

  1. V trezoru klíčů Azure nastavte přístup k tajným kódům seznamu msi trezoru klíčů MSI (nebo získat tajné kódy seznamu). Pokud chcete přiřadit oprávnění, můžete použít přiřazení rolí nebo zásady přístupu. Oprávnění není nutné přidávat pomocí obou možností, protože to nepomůže.

    • Použití autorizace řízení přístupu založeného na rolích Azure (Azure RBAC) (to znamená, že model oprávnění je nastavený na řízení přístupu na základě rolí Azure):

    Screenshot showing the option to provide secret user access.

    Screenshot showing the option to grant the backup vault’s MSI Key Vault Secrets User access on the key vault.

  2. Přístup k síti v trezoru klíčů: Nastavte příznak Povolit důvěryhodné služby Microsoft na Ano.

    Screenshot showing to set the Allow trusted Microsoft services flag to yes for Network line of sight access on the key vault.

Oprávnění k zálohování uživatele databáze v databázi

Spusťte následující dotaz v nástroji pro správu PG (nahraďte uživatelské jméno ID uživatele databáze):

DO $do$
DECLARE
sch text;
BEGIN
EXECUTE format('grant connect on database %I to %I', current_database(), 'username');
FOR sch IN select nspname from pg_catalog.pg_namespace
LOOP
EXECUTE format($$ GRANT USAGE ON SCHEMA %I TO username $$, sch);
EXECUTE format($$ GRANT SELECT ON ALL TABLES IN SCHEMA %I TO username $$, sch);
EXECUTE format($$ ALTER DEFAULT PRIVILEGES IN SCHEMA %I GRANT SELECT ON TABLES TO username $$, sch);
EXECUTE format($$ GRANT SELECT ON ALL SEQUENCES IN SCHEMA %I TO username $$, sch);
EXECUTE format($$ ALTER DEFAULT PRIVILEGES IN SCHEMA %I GRANT SELECT ON SEQUENCES TO username $$, sch);
END LOOP;
END;
$do$

Použití nástroje pro správu PG

Pokud ho ještě nemáte, stáhněte si nástroj pro správu PG. Pomocí tohoto nástroje se můžete připojit k serveru Azure PostgreSQL. Můžete také přidat databáze a nové uživatele na tento server.

Screenshot showing the process to connect to Azure PostgreSQL server using PG admin tool.

Vytvořte nový server s názvem podle vašeho výběru. Zadejte název nebo adresu hostitele, který je stejný jako název serveru zobrazený v zobrazení prostředků Azure PostgreSQL na portálu Azure Portal.

Screenshot showing the option to create new server using PG admin tool.

Screenshot showing the option to enter the Host name or address name same as the Server name.

Ujistěte se, že přidáte aktuální ID adresy klienta do pravidel brány Firewall pro připojení, které chcete projít.

Screenshot showing the process to add the current client ID address to the Firewall rules.

Na server můžete přidat nové databáze a uživatele databáze. Pro uživatele databáze přidejte nové role přihlášení nebo skupiny. Ujistěte se, že se může přihlásit? je nastaveno na Ano.

Screenshot showing the process to add new databases and database users to the server.

Screenshot showing the process to add a new login or group role for database users.

Screenshot showing the verification of the can login option is set to Yes.

Další kroky

Azure Database for PostgreSQL backup