Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Následující části popisují limity kapacity a funkčnosti pro instance flexibilních serverů Azure Database for PostgreSQL. Pokud se chcete dozvědět o úrovních prostředků (výpočetních prostředků, paměti, úložiště), přečtěte si články o výpočetních prostředcích a úložištích .
Maximální počet připojení
Následující tabulka uvádí výchozí maximální počet připojení pro každou cenovou úroveň a konfiguraci virtuálních jader. Flexibilní instance serveru Azure Database for PostgreSQL si vyhrazuje 15 připojení pro fyzickou replikaci a monitorování instance flexibilního serveru Azure Database for PostgreSQL. V důsledku toho tabulka zmenšuje hodnotu maximálního počtu uživatelských připojení o 15 z celkového maximálního počtu připojení.
| Název produktu | virtuálních jader | Velikost paměti | Maximální počet připojení | Maximální počet uživatelských připojení |
|---|---|---|---|---|
| Nárazové rozšíření | ||||
| B1ms | 0 | 2 GiB | 50 | 35 |
| B2s | 2 | 4 GiB | 429 | 414 |
| B2ms | 2 | 8 GiB | 859 | 844 |
| B4ms | 4 | 16 GiB | 1,718 | 1,703 |
| B8ms | 8 | 32 GB | 3,437 | 3,422 |
| B12ms | 12 | 48 GiB | 5 000 | 4,985 |
| B16ms | 16 | 64 GiB | 5 000 | 4,985 |
| B20ms | 20 | 80 GiB | 5 000 | 4,985 |
| Obecné použití | ||||
| D2s_v3 / D2ds_v4 / D2ds_v5 / D2ads_v5 | 2 | 8 GiB | 859 | 844 |
| D4s_v3 / D4ds_v4 / D4ds_v5 / D4ads_v5 | 4 | 16 GiB | 1,718 | 1,703 |
| D8s_v3 / D8ds_V4 / D8ds_v5 / D8ads_v5 | 8 | 32 GB | 3,437 | 3,422 |
| D16s_v3 / D16ds_v4 / D16ds_v5 / D16ads_v5 | 16 | 64 GiB | 5 000 | 4,985 |
| D32s_v3 / D32ds_v4 / D32ds_v5 / D32ads_v5 | 32 | 128 GiB | 5 000 | 4,985 |
| D48s_v3 / D48ds_v4 / D48ds_v5 / D48ads_v5 | 48 | 192 GiB | 5 000 | 4,985 |
| D64s_v3 / D64ds_v4 / D64ds_v5 / D64ads_v5 | 64 | 256 GB | 5 000 | 4,985 |
| D96ds_v5 / D96ads_v5 | 96 | 384 GiB | 5 000 | 4,985 |
| Optimalizováno pro paměť | ||||
| E2s_v3 / E2ds_v4 / E2ds_v5 / E2ads_v5 | 2 | 16 GiB | 1,718 | 1,703 |
| E4s_v3 / E4ds_v4 / E4ds_v5 / E4ads_v5 | 4 | 32 GB | 3,437 | 3,422 |
| E8s_v3 / E8ds_v4 / E8ds_v5 / E8ads_v5 | 8 | 64 GiB | 5 000 | 4,985 |
| E16s_v3 / E16ds_v4 / E16ds_v5 / E16ads_v5 | 16 | 128 GiB | 5 000 | 4,985 |
| E20ds_v4 / E20ds_v5 / E20ads_v5 | 20 | 160 GiB | 5 000 | 4,985 |
| E32s_v3 / E32ds_v4 / E32ds_v5 / E32ads_v5 | 32 | 256 GB | 5 000 | 4,985 |
| E48s_v3 / E48ds_v4 / E48ds_v5 / E48ads_v5 | 48 | 384 GiB | 5 000 | 4,985 |
| E64s_v3 / E64ds_v4 / E64ds_v5 / E64ads_v5 | 64 | 432 GiB | 5 000 | 4,985 |
| E96ds_v5 / E96ads_v5 | 96 | 672 GiB | 5 000 | 4,985 |
Aktuálně je rezervováno 15 slotů připojení, které se mohou změnit. Doporučujeme pravidelně ověřovat celková rezervovaná připojení na serveru. Toto číslo vypočítáte součtem hodnot reserved_connections parametrů serveru a superuser_reserved_connections serveru. Maximální počet dostupných uživatelských připojení je max_connections – (reserved_connections + superuser_reserved_connections).
Systém vypočítá výchozí hodnotu parametru max_connections serveru při zřizování instance flexibilního serveru Azure Database for PostgreSQL na základě názvu produktu, který vyberete pro jeho výpočetní prostředky. Jakékoli následné změny výběru produktu na výpočetní prostředky, které podporují instanci, nebudou mít žádný vliv na výchozí hodnotu parametru max_connections serveru dané instance. Doporučujeme, abyste pokaždé, když změníte produkt přiřazený k instanci, upravte hodnotu max_connections parametru také podle hodnot v předchozí tabulce.
Změna hodnoty max_connections
Při prvním nastavení instance flexibilního serveru Azure Database for Postgres se automaticky rozhodne nejvyšší počet připojení, která dokáže zpracovat současně. Konfigurace vašeho serveru určuje toto číslo a nemůžete ho změnit.
Nastavení ale můžete použít max_connections k úpravě počtu povolených připojení v určitém okamžiku. Po změně tohoto nastavení je potřeba restartovat server, aby nový limit začal fungovat.
Upozornění
I když je možné zvýšit hodnotu nad rámec výchozího max_connections nastavení, doporučujeme, abyste ji nepoužíli.
Instance můžou narazit na potíže, když se úloha rozšíří a vyžaduje více paměti. S rostoucím počtem připojení se také zvyšuje využití paměti. Instance s omezenou pamětí můžou čelit problémům, jako jsou chyby nebo vysoká latence. I když může být vyšší hodnota přijatelné, max_connections když je většina připojení nečinná, může vést k významným problémům s výkonem po jejich aktivní činnosti.
Pokud potřebujete více připojení, doporučujeme místo toho použít PgBouncer, integrované řešení Azure pro správu fondu připojení. Použijte ho v režimu transakce. Pro začátek doporučujeme použít konzervativní hodnoty vynásobením virtuálních jader v rozsahu 2 až 5. Následně pečlivě monitorujte využití prostředků a výkon aplikace, abyste zajistili hladký provoz. Podrobné informace o nástroji PgBouncer najdete v tématu PgBouncer ve službě Azure Database for PostgreSQL.
Pokud připojení překročí limit, může se zobrazit následující chyba:
FATAL: sorry, too many clients already.
Pokud používáte instanci flexibilního serveru Azure Database for PostgreSQL pro zaneprázdněnou databázi s velkým počtem souběžných připojení, může dojít k značnému zatížení prostředků. Tato zátěž může vést k vysokému využití procesoru, zejména v případě, že je navázáno mnoho připojení současně a když připojení mají krátkou dobu (méně než 60 sekund). Tyto faktory můžou negativně ovlivnit celkový výkon databáze zvýšením doby strávené zpracováním připojení a odpojení.
Každé připojení v instanci flexibilního serveru Azure Database for PostgreSQL bez ohledu na to, jestli je nečinné nebo aktivní, spotřebovává z vaší databáze značné množství prostředků. Tato spotřeba může vést k problémům s výkonem nad rámec vysokého využití procesoru, jako jsou kolize disků a zámků. Článek Počet připojení k databázi na wikiwebu PostgreSQL podrobněji popisuje tento článek. Další informace najdete v tématu Identifikace a řešení výkonu připojení v Azure Postgres.
Funkční omezení
V následujících částech najdete důležité informace o tom, co je a není podporované pro instance flexibilních serverů Azure Database for PostgreSQL.
Operace škálování
- V tuto chvíli vyžaduje vertikální navýšení kapacity úložiště serveru restartování serveru.
- Úložiště serveru je možné škálovat pouze v 2x přírůstcích. Podrobnosti naleznete v Úložišti.
- V současné době nepodporujeme zmenšení velikosti úložiště serveru. Jediným způsobem, jak tuto operaci provést, je výpis a obnovení do nové instance flexibilního serveru Azure Database for PostgreSQL.
Storage
- Jakmile nakonfigurujete velikost úložiště, nemůžete ji zmenšit. Musíte vytvořit nový server s požadovanou velikostí úložiště, provést ruční operaci výpisu a obnovení a migrovat databáze na nový server.
- Když využití úložiště dosáhne 95% nebo pokud je dostupná kapacita menší než 5 GiB (podle toho, co je vyšší), systém automaticky přepne server do režimu jen pro čtení , aby se zabránilo chybám spojeným s plnými disky. Ve výjimečných případech může dojít k výpadku rychlosti růstu dat v době, která trvá přepnutí do režimu jen pro čtení, může dojít k výpadku úložiště vašeho serveru. Automatickému zvětšování úložiště můžete povolit, abyste se těmto problémům vyhnuli, a automaticky škálovat úložiště na základě vašich požadavků na úlohy.
- Doporučujeme nastavit pravidla upozornění pro
storage usedpřekročení určitých prahových hodnot nebostorage percentkdyž překročí určité prahové hodnoty, abyste mohli aktivně provádět akce, jako je zvýšení velikosti úložiště. Pokud například procento úložiště překročí 80 % využití, můžete nastavit upozornění. - Pokud používáte logickou replikaci, musíte v primárním serveru vynechat slot logické replikace, pokud už odpovídající odběratel neexistuje. Jinak se soubory protokolování pro zápis (WAL) hromadí v primárním objektu a zaplní úložiště. Pokud úložiště překročí určitou prahovou hodnotu a pokud se slot logické replikace nepoužívá (kvůli nedostupnosti odběratele), instance flexibilního serveru Azure Database for PostgreSQL automaticky klesne tento nepoužívaný slot logické replikace. Tato akce uvolní kumulované soubory WAL a zabrání tomu, aby váš server nebyl dostupný, protože je vyplněné úložiště.
- Nepodporujeme vytváření tabulkových prostorů. Pokud vytváříte databázi, nezadávejte název tabulkového prostoru. Instance flexibilního serveru Azure Database for PostgreSQL používá výchozí tabulkový prostor, který databáze šablony dědí. Je nebezpečné poskytnout tabulkový prostor, jako je dočasný prostor, protože nemůžeme zajistit, aby tyto objekty zůstaly trvalé po událostech, jako jsou restartování serveru a převzetí služeb při selhání vysoké dostupnosti (HA).
- Nesrovnalosti v osamocených datových souborech a využití disků: Ve výjimečných případech může PostgreSQL zanechat osamocené datové soubory na disku – soubory, které už nemají odpovídající položky v systémovém katalogu databáze (které sledují všechny tabulky a data). K tomu může dojít v případě, že se v rámci transakce vytvoří a naplní tabulka, která se úspěšně nedokončí (např. kvůli chybovému ukončení nebo přerušení serveru), což vede k neshodě mezi velikostí hlášenou databází a skutečným využitím disku. Toto chování pochází z komunitního základu PostgreSQL a není specifické pro Azure. Komunita PostgreSQL o problému ví a zkoumá vylepšení automatického čištění v budoucích verzích. Další podrobnosti najdete v tématu: PostgreSQL: Osamocené soubory v PostgreSQL. To může vést k neočekávanému vysokému využití disku nebo úložiště.
-
Zjištění: Porovnání velikosti hlášené databáze (pomocí dotazů, jako je
SELECT pg_database_size('your_database')) s metrikami webu Azure Portal pro skutečné využití disku Pokud dojde k významné nesrovnalosti, sirotčí soubory můžou být příčinou. Pokud ano:- Spusťte v ovlivněných tabulkách vakuum full a uvolněte místo (poznámka: to je náročné na prostředky, vyžaduje zámek tabulky a může vyžadovat výpadek).
- Alternativně můžete použít nástroje, jako je pg_repack nebo pg_squeeze rozšíření k reorganizaci bez výpadků, ale nejprve otestujte v neprodukčním prostředí.
- Monitorování prostřednictvím metrik webu Azure Portal pro prahové hodnoty využití disků Pokud problém přetrvává nebo si nejste jistí, požádejte o pomoc podporu Azure.
- Jak zabránit: Zajistěte, aby se transakce ve vašich aplikacích správně spravily, aby se minimalizovaly neúplné operace. Pravidelně monitorujte využití disků prostřednictvím metrik webu Azure Portal. Upgrade na nejnovější podporovanou verzi PostgreSQL může zahrnovat komunitní opravy souvisejících problémů.
-
Zjištění: Porovnání velikosti hlášené databáze (pomocí dotazů, jako je
Sítě
- V současné době nepodporujeme přesun do a z virtuální sítě.
- V současné době nepodporujeme kombinování veřejného přístupu s nasazením ve virtuální síti.
- Virtuální sítě nepodporují pravidla brány firewall. Místo toho můžete použít skupiny zabezpečení sítě.
- Databázové servery s veřejným přístupem se mohou připojit k veřejnému internetu; například prostřednictvím
postgres_fdw. Tento přístup nemůžete omezit. Servery ve virtuálních sítích můžou mít omezený odchozí přístup prostřednictvím skupin zabezpečení sítě.
Vysoká dostupnost
Zóny dostupnosti
- Momentálně nepodporujeme ruční přesun serverů do jiné zóny dostupnosti. Pokud ale jako pohotovostní zónu použijete upřednostňovanou zónu dostupnosti, můžete zapnout vysokou dostupnost. Jakmile vytvoříte pohotovostní zónu, můžete převzít služby při selhání a pak vypnout vysokou dostupnost.
Modul Postgres, rozšíření a PgBouncer
- Flexibilní serverová instance Azure Database for PostgreSQL podporuje všechny funkce modulu PostgreSQL, včetně dělení, logické replikace a obálky cizích dat.
- Flexibilní instance serveru Azure Database for PostgreSQL podporuje všechna
contribrozšíření a další možnosti. Další informace najdete v tématu Rozšíření PostgreSQL. - Servery s možností rozšíření v současné době nemají přístup k integrovanému nástroji pro sdružování připojení PgBouncer.
Operace zastavení/spuštění
- Po zastavení instance flexibilního serveru Azure Database for PostgreSQL se automaticky spustí po sedmi dnech.
Plánovaná údržba
- Vlastní časové období údržby můžete změnit na libovolný den/čas v týdnu. Jakékoli změny, které provedete po přijetí oznámení o údržbě, ale nebudou mít žádný vliv na další údržbu. Změny se projeví jenom s následující měsíční plánovanou údržbou.
Zálohy serveru
Systém spravuje zálohy. V současné době nemůžete zálohování spouštět ručně. Doporučujeme místo toho použít
pg_dump.První snímek je úplná záloha a po sobě jdoucí snímky jsou rozdílové zálohy. Rozdílové zálohy zálohují pouze změněná data od posledního zálohování snímků.
Pokud je například velikost databáze 40 GB a zřízené úložiště je 64 GB, první zálohování snímků je 40 GB. Pokud teď změníte 4 GB dat, velikost dalšího rozdílového zálohování snímků bude jenom 4 GB. Transakční protokoly (protokoly před zápisem) jsou oddělené od úplných a rozdílových záloh a archivují se nepřetržitě.
Obnovení serveru
- Když používáte funkci obnovení k určitému bodu v čase (PITR), systém vytvoří nový server se stejnými konfiguracemi výpočetních prostředků a úložiště jako server, na kterém je založen.
- Systém při obnovení ze zálohy obnoví databázové servery ve virtuálních sítích do stejných virtuálních sítí.
- Nový server vytvořený během obnovení nemá pravidla brány firewall, která existovala na původním serveru. Pro nový server potřebujete vytvořit pravidla brány firewall samostatně.
- Obnovení do jiného předplatného nepodporujeme. Jako alternativní řešení můžete obnovit server ve stejném předplatném a potom migrovat obnovený server do jiného předplatného.
Zabezpečení
- Postgres 14 a novější verze zakazují hashování MD5 a systém hashuje nativní hesla Postgresu pouze pomocí metody SCRAM-SHA-256.