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.
Tento článek obsahuje podrobné pokyny k provádění horizontálních operací škálování pro elastický cluster flexibilního serveru Azure Database for PostgreSQL.
Elastické clustery Azure Database for PostgreSQL poskytují horizontální škálování přidáním dalších pracovních uzlů do clusteru. Při škálování elastického clusteru PostgreSQL můžete zvládnout růst tím, že databázi poskytnete více prostředků nebo více uzlů pro paralelní zpracování dotazů. Tyto výhody získáte s minimálními výpadky a integrovanou správou shardů.
Metody horizontálního škálování
Pomocí jedné z několika metod můžete do elastického clusteru přidat pracovní uzly , včetně webu Azure Portal, Azure CLI nebo automatizace prostřednictvím šablon ARM a rozhraní API – v závislosti na potřebách pracovního postupu a automatizace. Následující části obsahují podrobné pokyny pro portál a rozhraní příkazového řádku a vysvětlují vyrovnávání po škálování.
Použití portálu Azure:
Otevřete prostředek: V portálu Azure přejděte do elastického clusteru flexibilního serveru Azure Database for PostgreSQL.
Přejděte na Compute + Storage: V části Nastavení vyberte Compute + Storage. Tato stránka zobrazuje aktuální konfiguraci uzlů clusteru.
Upravit počet uzlů: Vyhledejte pole Počet uzlů. Zvyšte počet na požadovaný celkový počet uzlů (mezi 2 a 20 pro většinu klastrů v GA). Pokud chcete například zdvojnásobit cluster se čtyřmi uzly na osm uzlů, zvyšte posuvník na 8. Azure zřídí další pracovní uzly pro dosažení tohoto počtu.
Použít změny: Vyberte Uložit. Po zobrazení výzvy potvrďte operaci škálování kapacity. Azure začne do clusteru přidávat uzly. Tato operace se provádí online a obvykle nepřeruší existující připojení nebo dotazy. Nasazení může trvat několik minut. Průběh můžete sledovat v oznámeních portálu. Po dokončení se počet uzlů clusteru projeví v nové hodnotě.
Poznámka:
Musíte explicitně spustit proces vyrovnávání fragmentů na pozadí, aby se existující data mohla přerozdělit napříč všemi uzly. Tato operace nezahrnuje žádné výpadky čtení a zápisů.
Přerozdělení
Po přidání uzlů do clusteru budou všechny nové úpravy dat nebo nově přidané distribuované tabulky používat všechny dostupné uzly. Existující horizontální oddíly dat zůstanou tam, kde jsou, dokud nebudou redistribuovány. Online vyrovnávání zajišťuje, že čtení a zápisy z aplikace budou pokračovat s minimálním přerušením při přesouvání dat.
Při horizontálním navýšení kapacity elastického clusteru zajistíte opětovným vyvážením clusteru, aby vaše stávající data byla plně distribuovaná a vaše databáze používá všechny dostupné uzly. Ke spuštění procesu vyrovnávání použijte funkci citus_rebalance_start . Tato operace distribuuje existující data rovnoměrně napříč všemi uzly.
SELECT citus_rebalance_start();
Paralelní vyrovnávání
Výchozí operace přerozdělování provádí několik přesunů fragmentů v sekvenčním pořadí. V některých případech můžete raději rychleji vyvážit rovnováhu s využitím více prostředků, jako jsou výpočetní prostředky, paměť a šířka pásma sítě. V těchto situacích můžete nakonfigurovat operaci vyrovnávání tak, aby paralelně prováděla mnoho přesunů horizontálních oddílů.
Parametr citus.max_background_task_executors_per_node umožňuje úlohám, jako je vyvažování shardů, fungovat paralelně. Podle potřeby můžete zvýšit výchozí hodnotu (1), abyste zvýšili paralelismus.
ALTER SYSTEM SET citus.max_background_task_executors_per_node = 2;
SELECT pg_reload_conf();
Kromě toho můžete nakonfigurovat funkci citus_rebalance_start tak, aby znovu vyrovnala horizontální oddíly podle různých strategií, aby co nejlépe odpovídala vaší databázové úloze. Teď, když jste přidali další vykonavatele úloh na pozadí, tady je příklad vyvažování shardů pomocí paralelních pracovníků:
SELECT citus_rebalance_start(parallel_transfer_colocated_shards := true, parallel_transfer_reference_tables := true);
Úvahy
Monitorování clusteru po škálování: Zkontrolujte využití procesoru, využití paměti a využití vstupně-výstupních operací na webu Azure Portal v grafech monitorování vašeho elastického clusteru. Po operaci horizontálního navýšení kapacity ověřte, že přidání uzlů odráží vylepšení metrik pro propustnost a dobu odezvy v závislosti na vaší úloze. Dále upravujte, je-li to potřeba.
Škálování elastického clusteru ovlivňuje náklady úměrně nasazeným prostředkům. Přidání uzlů vynásobí náklady na výpočetní prostředky a úložiště počtem uzlů. Například cluster se čtyřmi uzly, z nichž každý má dvě vCores, stojí přibližně čtyřikrát tolik co jeden server se dvěma vCores, jelikož provozujete čtyři servery. Vždy zkontrolujte dopad na ceny na portálu. Odhadované náklady se aktualizují na webu Azure Portal při změně konfigurace před uložením, aby se zajistilo, že splňuje váš rozpočet.
Vysoká dostupnost: Pokud má váš cluster povolenou zónově redundantní vysokou dostupnost, operace škálování také zřizují pohotovostní prostředky pro všechny nové uzly. Služba Azure to zpracovává automaticky. Počítejte s tím, že škálování bude trvat trochu déle, protože pro každý přidaný uzel probíhá nastavení systému replik vysoké dostupnosti. Charakteristiky procesů a výpadků zůstávají téměř stejné a vynásobené pro primární a pohotovostní páry.
Repliky pro čtení: Pokud je cluster nakonfigurovaný tak, aby používal repliky pro čtení, musíte při přidávání uzlů do clusteru postupovat podle konkrétního pořadí operací. Nejprve přidejte počet uzlů do primárního clusteru a uložte změny. Po úspěšném dokončení proveďte odpovídající změnu prostředí repliky pro čtení a uložte změny. Vaše nové uzly v primárním clusteru nejsou oprávněny k provádění operací v clusteru, dokud nebudou aktualizována a synchronizována prostředí jak primárního, tak repliky pro čtení.
Poznámka:
Možnost odebrat uzly z elastického clusteru (zmenšení kapacity) ještě není dostupná.
Díky předchozím technikám škálování poskytuje elastické clustery Azure Database for PostgreSQL flexibilitu pro zahájení malého a bezproblémového růstu databáze při nárůstu poptávky. Získáte jednoduchost jednoho koncového bodu s výkonem distribuované infrastruktury Postgres. Pokračujte v monitorování dokumentace Azure o nejnovějších aktualizacích funkcí elastických clusterů a osvědčených postupech pro škálování.