Návrh a implementace databáze Oracle v Azure

Platí pro: ✔️ Virtuální počítače s Linuxem

Předpoklady

  • Plánujete migrovat databázi Oracle z místního prostředí do Azure.
  • Máte diagnostický balíček nebo úložiště automatických úloh pro Oracle Database, který chcete migrovat.
  • Máte přehled o různých metrikách v Oraclu.
  • Máte základní znalosti o výkonu aplikací a využití platformy.

Cíle

  • Informace o tom, jak optimalizovat nasazení Oracle v Azure
  • Prozkoumejte možnosti ladění výkonu pro databázi Oracle v prostředí Azure.
  • Máte jasná očekávání mezi limity fyzického ladění prostřednictvím architektury a výhodami nebo logickým laděním databázového kódu (SQL) a celkovým návrhem databáze.

Rozdíly mezi místní implementací a implementací Azure

Při migraci místních aplikací do Azure je třeba mít na paměti následující důležité věci.

Jedním z důležitých rozdílů je, že v implementaci Azure se prostředky, jako jsou virtuální počítače, disky a virtuální sítě, sdílí mezi ostatními klienty. Kromě toho je možné prostředky ohrošovat na základě požadavků. Místo zaměření na zabránění selhání (MTBF) se Azure zaměřuje spíše na zbývající selhání (MTTR).

Následující tabulka uvádí některé rozdíly mezi místní implementací a implementací databáze Oracle v Azure.

Místní implementace Implementace Azure
Sítě SÍŤ LAN/WAN SDN (softwarově definované sítě)
Skupina zabezpečení Nástroje pro omezení IP adres nebo portů Skupina zabezpečení sítě (NSG)
Odolnost MTBF (střední doba mezi selháními) MTTR (střední doba obnovení)
Plánovaná údržba Opravy a upgrady Skupiny dostupnosti (opravy nebo upgrady spravované Azure)
Prostředek Vyhrazená Sdíleno s ostatními klienty
Oblasti Datová centra Párování oblastí
Storage San / fyzické disky Úložiště spravované Azure
Škálování Vertikální škálování Horizontální škálování

Požadavky

  • Určení skutečného využití procesoru, protože Oracle je licencované podle jádra, může být určení velikosti potřeb virtuálních procesorů základním cvičením pro úsporu nákladů.
  • Určete velikost databáze, úložiště zálohování a míru růstu.
  • Určete požadavky na V/V, které můžete odhadnout na základě sestav Oracle Statspack a AWR nebo z nástrojů pro monitorování úložiště na úrovni operačního systému.

Možnosti konfigurace

Existují čtyři potenciální oblasti, které můžete ladit za účelem zlepšení výkonu v prostředí Azure:

  • Velikost virtuálního počítače
  • Propustnost sítě
  • Typy a konfigurace disků
  • Nastavení mezipaměti disku

Generování sestavy AWR

Pokud máte existující databázi Oracle edice Enterprise a plánujete migraci do Azure, máte několik možností. Pokud máte diagnostickou sadu pro instance Oracle, můžete spuštěním sestavy Oracle AWR získat metriky (IOPS, Mb/s, GiB atd.). Pro databáze bez licence diagnostického balíčku nebo pro databázi edice Standard je možné po pořízení ručních snímků shromažďovat stejné důležité metriky se sestavou Statspacku. Hlavní rozdíl mezi těmito dvěma metodami vytváření sestav spočívá v tom, že se AWR automaticky shromažďuje a poskytuje více informací o databázi, než je předchozí možnost vytváření sestav statspacku.

Můžete zvážit spuštění sestavy AWR během běžných úloh i úloh ve špičce, abyste je mohli porovnat. Pokud chcete shromáždit přesnější úlohu, zvažte sestavu delšího okna o jednom týdnu vs. 24hodový běh a uvědomte si, že AWR poskytuje průměry jako součást výpočtů v sestavě. Pro migraci do datacentra doporučujeme shromáždit sestavy pro nastavení velikosti v produkčních systémech a odhadnout zbývající kopie databáze použité pro uživatelské testování, testování, vývoj atd. podle procent (UAT se rovná produkci, testování a vývoji 50 % velikosti produkce atd.).

Ve výchozím nastavení uchovává úložiště AWR 8 dnů dat a pořuje snímky v hodinových intervalech. Pokud chcete spustit sestavu AWR z příkazového řádku, můžete z terminálu provést následující akce:

$ sqlplus / as sysdba
SQL> @$ORACLE_HOME/rdbms/admin/awrrpt.sql;

Klíčové metriky

Sestava zobrazí výzvu k zadání následujících informací:

  • Typ sestavy: HTML nebo TEXT (HTML ve formátu 12.1 a poskytuje další informace než formát TEXT).)
  • Počet dní, po které se mají snímky zobrazit (v hodinových intervalech by sestava o jednom týdnu měla v ID snímků 168 odlišných).
  • Počáteční SnapshotID pro okno sestavy.
  • Koncové ID snímku pro okno sestavy.
  • Název sestavy, která se má vytvořit pomocí skriptu AWR.

Pokud používáte AWR na skutečném clusteru aplikací (RAC), sestava příkazového řádku je místo awrrpt.sql awrgrpt.sql. Sestava "g" vytvoří sestavu pro všechny uzly v databázi RAC v jedné sestavě vs. musí ji spustit na každém uzlu RAC.

Toto jsou metriky, které můžete získat ze sestavy AWR:

  • Název databáze, název instance a název hostitele
  • Verze databáze (podpora od Oracle)
  • Procesory a jádra
  • SGA/PGA (a poradci, které vás uznají, pokud jsou méně velké)
  • Celková paměť v GB
  • CPU % Busy
  • Procesory databáze
  • IOPs (čtení a zápis)
  • MBP (čtení/zápis)
  • Propustnost sítě
  • Rychlost latence sítě (nízká nebo vysoká)
  • Události s nejvyšším čekáním
  • Nastavení parametrů pro databázi
  • Je databáze RAC, Exadata, s využitím pokročilých funkcí nebo konfigurací?

Velikost virtuálního počítače

1. Odhad velikosti virtuálního počítače na základě využití procesoru, paměti a V/V ze sestavy AWR

Jedním z věcí, na které byste se mohli podívat, je pět událostí na popředí s nejvyšším časovým limitem, které označují kritické body systému.

Například v následujícím diagramu je synchronizace souborů protokolu v horní části. Určuje počet čekání, které jsou potřeba, než LGWR zapíše vyrovnávací paměť protokolu do souboru protokolu znovu. Z těchto výsledků vyplývá, že se vyžaduje lepší výkon úložiště nebo disků. Diagram navíc ukazuje také počet procesorů (jader) a velikost paměti.

Snímek obrazovky znázorňuje synchronizaci souborů protokolu v horní části tabulky

Následující diagram znázorňuje celkový počet V/V čtení a zápisu. V době sestavy bylo zapsáno 59 GB čtení a 247,3 GB.

Snímek obrazovky znázorňuje celkový počet V/V čtení a zápisu

2. Volba virtuálního počítače

Na základě informací, které jste shromáždili ze sestavy AWR, je dalším krokem výběr virtuálního počítače podobné velikosti, která splňuje vaše požadavky. Seznam dostupných virtuálních počítačů najdete v paměti v článku optimalizované pro paměť.

3. vyladění velikosti virtuálního počítače pomocí podobné série virtuálních počítačů na základě ACU

Po výběru virtuálního počítače věnujte pozornost ACU pro virtuální počítač. Můžete zvolit jiný virtuální počítač na základě hodnoty ACU, která lépe vyhovuje vašim požadavkům. Další informace najdete v tématu výpočetní jednotka Azure.

Snímek obrazovky se stránkou jednotek ACU

Propustnost sítě

Následující diagram znázorňuje vztah mezi propustností a IOPS:

Snímek obrazovky s propustností

Celková propustnost sítě se odhadne na základě těchto informací:

  • SQL * síťový provoz
  • MB/s × počet serverů (odchozí datový proud, jako je Oracle data Guard)
  • Další faktory, jako je například replikace aplikací

snímek obrazovky SQL * propustnost netto

Na základě požadavků na šířku pásma sítě si můžete vybrat z různých typů bran. Mezi ně patří Basic, VpnGw a Azure ExpressRoute. Další informace najdete na stránce s cenami služby VPN Gateway.

Doporučení

  • V porovnání s místním nasazením je latence sítě vyšší. Snížení zatížení sítě může výrazně zlepšit výkon.
  • Pro omezení zpátečních cest Konsolidujte aplikace, které mají vysoké transakce nebo "konverzace" na stejném virtuálním počítači.
  • Pro lepší výkon sítě používejte Virtual Machines s akcelerovanými síťovými službami.
  • U některých distribucí systému Linux zvažte možnost povolit podporu pro funkci trim aoddálení.
  • nainstalujte nástroj Oracle Enterprise Manager do samostatného virtuálního počítače.
  • Ve výchozím nastavení nejsou v systému Linux povoleny velké stránky. Zvažte možnost Povolit velké stránky a nastavit use_large_pages = ONLY Oracle DB. To může přispět ke zvýšení výkonu. Další informace najdete v tématu USE_LARGE_PAGES.

Typy disků a konfigurace

  • Výchozí disky s operačním systémem: tyto typy disků nabízejí trvalá data a ukládání do mezipaměti. Jsou optimalizované pro přístup k operačnímu systému při spuštění a nejsou navržené pro transakční data ani pro úlohy datového skladu (analytická data).

  • Spravované disky: Azure spravuje účty úložiště, které používáte pro disky virtuálních počítačů. Určíte typ disku (nejčastěji pro úlohy úrovně Premium SSD pro Oracle) a velikost disku, který potřebujete. Azure vytvoří a spravuje disk za vás. Premium Spravovaný disk SSD je k dispozici jenom pro řady virtuálních počítačů optimalizované pro paměť a specificky. Po zvolení konkrétní velikosti virtuálního počítače se v nabídce zobrazí jenom dostupné SKU Premium Storage, které jsou založené na velikosti tohoto virtuálního počítače.

Snímek stránky spravovaného disku

Po konfiguraci úložiště na VIRTUÁLNÍm počítači můžete před vytvořením databáze zátěž testů načíst. Znalost vstupně-výstupních přenosů z hlediska latence a propustnosti vám může pomoci určit, jestli virtuální počítače podporují očekávanou propustnost s cíli latence.

K dispozici je řada nástrojů pro zátěžové testování aplikací, jako je například Oracle Orion, Sysbench, SLOB a FIO.

Spusťte test zatížení znovu po nasazení databáze Oracle. Zahajte pravidelné a špičkové úlohy a výsledky vám ukáže základní údaje o vašem prostředí. Udělejte v testu úloh realistickou úlohu – nedává smysl spustit úlohu, která není stejná jako u virtuálních počítačů, které ve skutečnosti spustíte.

Protože Oracle je databáze náročná na vstupně-výstupní operace pro mnoho, je poměrně důležité velikost úložiště na základě sazby za IOPS místo velikosti úložiště. Pokud je například požadovaný IOPS 5 000, ale potřebujete pouze 200 GB, můžete i nadále získat disk třídy P30 na úrovni Premium, i když obsahuje více než 200 GB úložiště.

Frekvence IOPS se dá získat ze sestavy AWR. Určuje se v protokolu opětovného načtení, fyzických čtení a rychlosti zápisu. Vždy ověřte, že zvolená řada virtuálních počítačů má možnost zpracovat také požadavky na vstupně-výstupní operace úlohy. Pokud má virtuální počítač snížený počet vstupně-výstupních operací, než je úložiště, nastaví se maximální limit pro virtuální počítač.

Snímek obrazovky se stránkou sestavy AWR

Například velikost opakování je 12 200 000 bajtů za sekundu, což se rovná 11,63 MB/s. IOPS je 12 200 000/2 358 = 5 174.

Po jasném přehledu požadavků na vstupně-výstupní operace můžete zvolit kombinaci jednotek, které jsou nejvhodnější pro splnění těchto požadavků.

Doporučení

  • V případě datového tabulkového úložiště Rozšiřte vstupně-výstupní úlohy napříč několika disky pomocí spravovaného úložiště nebo Oracle ASM.
  • Použití rozšířené komprese Oracle k omezení vstupně-výstupních operací (pro data i indexy).
  • Oddělte protokoly znovu, dočasná a odvolat je na samostatných datových discích.
  • Neumísťujte žádné soubory aplikace na výchozí disky s operačním systémem (/dev/sda). Tyto disky nejsou optimalizované pro rychlé spouštění virtuálních počítačů a nemusí pro vaši aplikaci poskytovat dobrý výkon.
  • při použití virtuálních počítačů řady M-Series na Premium úložiště povolte Akcelerátor zápisu na disku znovu protokoly.
  • Zvažte možnost přesunout protokoly znovu s vysokou latencí na Ultra disk.

Nastavení diskové mezipaměti

Existují tři možnosti ukládání do mezipaměti hostitele, ale pro databázi Oracle, je pro úlohu databáze doporučeno pouze ukládání do mezipaměti jen pro čtení. Čtení pro čtení a zápis dat do datového typu může znamenat významné ohrožení zabezpečení, kde cílem zápisu do databáze je záznam v mezipaměti.

Na rozdíl od systému souborů nebo aplikace pro databázi je doporučení pro ukládání do mezipaměti hostitele jen pro čtení: všechny požadavky jsou ukládány do mezipaměti pro budoucí čtení. Všechna zápisy budou nadále zapisovány na disk.

Doporučení

Pro maximalizaci propustnosti doporučujeme začít s možností ReadOnly pro ukládání do mezipaměti hostitele, kdykoli je to možné. v případě Premium Storage pamatujte na to, že při připojování systému souborů s možnostmi jen pro čtení musíte zakázat "překážky". Aktualizujte /etc/fstab soubor s identifikátorem UUID na disky.

Snímek stránky spravovaného disku, který zobrazuje možnosti ReadOnly a None

  • Pro disky s operačním systémem použijte disk SSD úrovně Premium s ukládáním do mezipaměti hostitele pro čtení a zápis.
  • Pro datové disky , které obsahují datafiles Oracle, TempFiles, controlfiles, blokují soubory sledování změn, BFILE, soubory pro externí tabulky a protokoly Flashback, použijte disk SSD úrovně Premium s ukládáním hostitele do mezipaměti jen pro čtení.
  • Pro datové disky obsahující soubory protokolu Oracle online opětovného zápisu použijte Premium SSD nebo UltraDisk bez mezipaměti hostitele (žádné). Soubory protokolu Oracle archivovaného opětovného provedení a RMAN můžou být také uloženy v souborech protokolu online opětovného provedení. Všimněte si, že ukládání do mezipaměti hosta je omezené na 4095 GiB, takže nepřiřazujte Premium SSD větší než P50 s ukládáním hostitele do mezipaměti. Pokud potřebujete více než 4 TiB úložiště, RAID-0 prokládá několik jednotek SSD služby Premium SSD pomocí systému Linux LVM2 nebo pomocí Oracle ASM.

pokud se úlohy značně liší od dne a večeru a vstupně-výstupní operace je může podporovat, SSD úrovně Premium P20 P1 může poskytovat výkon potřebný během dávkového načítání nebo omezeného počtu vstupně-výstupních operací v noci.

Zabezpečení

Po nastavení a konfiguraci prostředí Azure je dalším krokem zabezpečení vaší sítě. Tady je několik doporučení:

  • Zásady NSG: NSG se dají definovat v podsíti nebo síťové kartě. Je jednodušší řídit přístup na úrovni podsítě, a to jak pro zabezpečení, tak pro vynucení směrování pro věci, jako jsou brány firewall pro aplikace.

  • JumpBox: pro bezpečnější přístup by se správci neměli přímo připojovat ke službě Application Service nebo databázi. JumpBox se používá jako médium mezi počítačem správce a prostředky Azure. Snímek obrazovky se stránkou topologie JumpBox

    Počítač správce by měl nabízet jenom přístup s omezením IP adres jenom pro JumpBox. JumpBox by měl mít přístup k aplikaci a databázi.

  • Privátní síť (podsítě): Doporučujeme, abyste měli aplikační službu a databázi v samostatných podsítích, takže lepší kontrolu můžete nastavit pomocí zásad NSG.

Další materiály ke čtení

Další kroky