Architecturen voor Oracle Database Enterprise Edition in Azure

Van toepassing op: ✔️ Linux-VM's

Azure is de thuisbasis voor alle Oracle-workloads, inclusief workloads die optimaal moeten blijven worden uitgevoerd in Azure met Oracle. Als u het Oracle Diagnostic Pack of de Automatische workloadopslagplaats (AWR) hebt, kunt u gegevens over uw workloads verzamelen. Gebruik deze gegevens om de Oracle-workload te beoordelen, de resourcebehoeften te vergroten en de workload naar Azure te migreren. De verschillende metrische gegevens die door Oracle in deze rapporten worden verstrekt, kunnen inzicht geven in de prestaties van toepassingen en het gebruik van het platform.

Dit artikel helpt u bij het voorbereiden van een Oracle-workload voor uitvoering in Azure en het verkennen van de beste architectuuroplossingen voor optimale cloudprestaties. De gegevens van Oracle in het Statspack en nog meer in zijn afstamming, de AWR, helpen u bij het ontwikkelen van duidelijke verwachtingen. Deze verwachtingen omvatten de limieten van fysieke afstemming via architectuur, de voordelen van logische afstemming van databasecode en het algehele databaseontwerp.

Verschillen tussen de twee omgevingen

Wanneer u on-premises toepassingen migreert naar Azure, moet u rekening houden met enkele belangrijke verschillen tussen de twee omgevingen.

Een belangrijk verschil is dat in een Azure-implementatie resources zoals VM's, schijven en virtuele netwerken worden gedeeld met andere clients. Bovendien kunnen resources worden beperkt op basis van de vereisten. In plaats van te focussen op het voorkomen van fouten, richt Azure zich meer op het overleven van de fout. De eerste benadering probeert de gemiddelde tijd tussen storingen (MBTF) te verhogen en de tweede probeert de gemiddelde tijd tot herstel (MTTR) te verminderen.

De volgende tabel bevat enkele verschillen tussen een on-premises implementatie en een Azure-implementatie van een Oracle-database.

Lokale implementatie Azure-implementatie
Netwerken LAN/WAN Software-Defined Networking (SDN)
Beveiligingsgroep Hulpprogramma's voor IP-/poortbeperking Netwerkbeveiligingsgroep (NSG)
Veerkracht MTBF MTTR
Gepland onderhoud Patching/upgrades Beschikbaarheidssets met patching/upgrades die worden beheerd door Azure
Resource Toegewezen Gedeeld met andere clients
Regio's Datacenters Regioparen
Storage SAN/fysieke schijven Door Azure beheerde opslag
Schalen Verticale schaal Horizontaal schalen

Vereisten

Houd rekening met de volgende vereisten voordat u de migratie start:

  • Bepaal het werkelijke CPU-gebruik. Oracle-licenties per kern, wat betekent dat het aanpassen van de grootte van uw vCPU-behoeften essentieel kan zijn om u te helpen de kosten te verlagen.
  • Bepaal de grootte van de database, de back-upopslag en het groeipercentage.
  • Bepaal de I/O-vereisten, die u kunt schatten op basis van Oracle Statspack en de AWR-rapporten. U kunt ook een schatting maken van de vereisten van hulpprogramma's voor opslagbewaking die beschikbaar zijn via het besturingssysteem.

Configuratie-opties

Het is een goed idee om een AWR-rapport te genereren en er enkele metrische gegevens van te verkrijgen om u te helpen beslissingen te nemen over de configuratie. Vervolgens zijn er vier mogelijke gebieden die u kunt afstemmen om de prestaties in een Azure-omgeving te verbeteren:

  • Grootte van de virtuele machine
  • Netwerkdoorvoer
  • Schijftypen en -configuraties
  • Instellingen voor schijfcache

Een AWR-rapport genereren

Als u een bestaande Oracle Enterprise Edition-database hebt en van plan bent om te migreren naar Azure, hebt u verschillende opties. Als u het diagnosepakket voor uw Oracle-exemplaren hebt, kunt u het Oracle AWR-rapport uitvoeren om de metrische gegevens op te halen, zoals IOPS, Mbps en GiBs. Voor databases zonder de licentie Diagnostics Pack of voor een Oracle Standard Edition-database kunt u dezelfde belangrijke metrische gegevens verzamelen met een Statspack-rapport nadat u handmatige momentopnamen hebt verzameld. De belangrijkste verschillen tussen deze twee rapportagemethoden zijn dat AWR automatisch wordt verzameld en dat het meer informatie over de database biedt dan Statspack.

Overweeg uw AWR-rapport uit te voeren tijdens zowel normale als piekworkloads, zodat u kunt vergelijken. Als u de nauwkeurigere werkbelasting wilt verzamelen, kunt u een uitgebreid vensterrapport van één week overwegen in plaats van één dag. AWR verstrekt gemiddelden als onderdeel van de berekeningen in het rapport. De AWR-opslagplaats bewaart standaard acht dagen aan gegevens en maakt momentopnamen met tussenpozen van het uur.

Voor een datacentrummigratie moet u rapporten verzamelen voor het aanpassen van de grootte van de productiesystemen. Maak een schatting van de resterende databasekopieën die worden gebruikt voor het testen, testen en ontwikkelen van gebruikers met percentages. Schat bijvoorbeeld 50 procent van de grootte van de productie.

Als u een AWR-rapport wilt uitvoeren vanaf de opdrachtregel, gebruikt u de volgende opdracht:

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

Belangrijke metrische gegevens

In het rapport wordt u om de volgende informatie gevraagd:

  • Rapporttype: HTML of TEKST. Het HTML-type biedt meer informatie.
  • Het aantal dagen dat momentopnamen moeten worden weergegeven. Voor intervallen van één uur produceert een rapport van één week bijvoorbeeld 168 momentopname-id's.
  • Het begin SnapshotID van het rapportvenster.
  • Het einde SnapshotID van het rapportvenster.
  • De naam van het rapport dat door het AWR-script wordt gemaakt.

Als u het AWR-rapport uitvoert op een Real Application Cluster (RAC), is het opdrachtregelrapport het bestand awrgrpt.sql in plaats van awrrpt.sql. Het g rapport maakt een rapport voor alle knooppunten in de RAC-database in één rapport. Dit rapport elimineert de noodzaak om één rapport uit te voeren op elk RAC-knooppunt.

U kunt de volgende metrische gegevens verkrijgen uit het AWR-rapport:

  • Databasenaam, exemplaarnaam en hostnaam
  • Databaseversie voor ondersteuning door Oracle
  • CPU/kernen
  • SGA/PGA en adviseurs om u te laten weten als deze ondermaats zijn
  • Totaal geheugen in GB
  • CPU-percentage bezet
  • DB-CPU's
  • IOPS (lezen/schrijven)
  • MBP's (lezen/schrijven)
  • Netwerkdoorvoer
  • Netwerklatentiesnelheid (laag/hoog)
  • Belangrijkste wachttijden
  • Parameterinstellingen voor database
  • Of de database nu RAC, Exadata of geavanceerde functies of configuraties gebruikt

Grootte van de virtuele machine

Hier volgen enkele stappen die u kunt uitvoeren om de grootte van de virtuele machine te configureren voor optimale prestaties.

Een schatting maken van de VM-grootte op basis van CPU-, geheugen- en I/O-gebruik in het AWR-rapport

Bekijk de top vijf getimede voorgrondgebeurtenissen die aangeven waar de systeemknelpunten zich bevinden. In het volgende diagram staat de synchronisatie van het logboekbestand bijvoorbeeld bovenaan. Hiermee wordt het aantal wachttijden aangegeven dat nodig is voordat de logboekschrijver de logboekbuffer naar het opnieuw logboekbestand schrijft. Deze resultaten geven aan dat beter presterende opslag of schijven vereist zijn. Daarnaast toont het diagram ook het aantal CPU-kernen en de hoeveelheid geheugen.

Schermopname van de logboekbestandssynchronisatie boven aan de tabel.

In het volgende diagram ziet u de totale I/O van lezen en schrijven. Er was 59 GB gelezen en 247,3 GB geschreven tijdens het rapport.

Schermopname van de totale I/O van lezen en schrijven.

Een VM kiezen

Op basis van de informatie die u uit het AWR-rapport hebt verzameld, is de volgende stap het kiezen van een VM van een vergelijkbare grootte die aan uw vereisten voldoet. Zie Voor geheugen geoptimaliseerde vm-grootten voor meer informatie over beschikbare VM's.

De grootte van de VM afstemmen met een vergelijkbare VM-serie op basis van de ACU

Nadat u de VM hebt gekozen, let dan op de Azure Compute Unit (ACU) voor de VM. U kunt een andere VM kiezen op basis van de ACU-waarde die beter aansluit bij uw vereisten. Zie Azure-rekeneenheid voor meer informatie.

Schermopname van de pagina ACU-eenheden.

Netwerkdoorvoer

In het volgende diagram ziet u de relatie tussen doorvoer en IOPS:

Diagram met de relatie tussen doorvoer en IOPS. Dit is IOPS maal IO-grootte is gelijk aan doorvoer.

De totale netwerkdoorvoer wordt geschat op basis van de volgende informatie:

  • SQL*Net-verkeer
  • MBps keer het aantal servers (uitgaande stroom, zoals Oracle Data Guard)
  • Andere factoren, zoals toepassingsreplicatie

Schermopname van de SQL*Net-doorvoer.

Op basis van de vereisten voor de netwerkbandbreedte kunt u kiezen uit verschillende typen gateways. Deze typen omvatten Basic, VpnGw en Azure ExpressRoute. Zie prijzen voor VPN Gateway voor meer informatie.

Aanbevelingen

  • De netwerklatentie is hoger in vergelijking met een on-premises implementatie. Het verminderen van netwerkrondritten kan de prestaties aanzienlijk verbeteren.
  • Om retouren te verminderen, consolideert u toepassingen met hoge transacties of spraakmakende apps op dezelfde virtuele machine.
  • Gebruik virtuele machines met versneld netwerken voor betere netwerkprestaties.
  • Voor bepaalde Linux-distributies kunt u overwegen om TRIM/UNMAP-ondersteuning in te schakelen.
  • Installeer Oracle Enterprise Manager op een afzonderlijke virtuele machine.
  • Grote pagina's zijn niet standaard ingeschakeld in Linux. Overweeg om enorme pagina's in te schakelen en in te stellen use_large_pages = ONLY op de Oracle-database. Deze aanpak kan helpen om de prestaties te verbeteren. Zie USE_LARGE_PAGES voor meer informatie.

Schijftypen en -configuraties

Hier volgen enkele tips voor het overwegen van schijven.

  • Standaard besturingssysteemschijven: Deze schijftypen bieden permanente gegevens en caching. Ze zijn geoptimaliseerd voor toegang tot het besturingssysteem bij het opstarten en zijn niet ontworpen voor transactionele of (analytische) werkbelastingen van datawarehouses.

  • Beheerde schijven: Azure beheert de opslagaccounts die u voor uw VM-schijven gebruikt. U geeft het schijftype en de grootte van de schijf op die u nodig hebt. Het type is meestal Premium (SSD) voor Oracle-workloads. Azure maakt en beheert de schijf voor u. Een premium door SSD beheerde schijf is alleen beschikbaar voor voor geheugen geoptimaliseerde en ontworpen VM-serie. Nadat u een bepaalde VM-grootte hebt gekozen, worden in het menu alleen de beschikbare Premium Storage-SKU's weergegeven die zijn gebaseerd op die VM-grootte.

    Schermopname van de pagina Beheerde schijf.

Nadat u de opslag op een virtuele machine hebt geconfigureerd, wilt u de schijven mogelijk eerst laden voordat u een database maakt. Als u de I/O-snelheid kent in termen van latentie en doorvoer, kunt u bepalen of de VM's de verwachte doorvoer met latentiedoelen ondersteunen. Er zijn verschillende hulpprogramma's voor het testen van de belasting van toepassingen, zoals Oracle Orion, Sysbench, SLOB en Fio.

Voer de belastingstest opnieuw uit nadat u een Oracle-database hebt geïmplementeerd. Start uw normale en piekworkloads en de resultaten tonen u de basislijn van uw omgeving. Wees realistisch in de workloadtest. Het heeft geen zin om een workload uit te voeren die niet lijkt op wat u in werkelijkheid op de virtuele machine uitvoert.

Omdat Oracle een I/O-intensieve database kan zijn, is het belangrijk om de grootte van de opslag te bepalen op basis van de IOPS-snelheid in plaats van de opslaggrootte. Als de vereiste IOPS-waarde bijvoorbeeld 5000 is, maar u slechts 200 GB nodig hebt, krijgt u mogelijk nog steeds de P30 Premium-schijf, zelfs als deze wordt geleverd met meer dan 200 GB opslagruimte.

U kunt het IOPS-tarief ophalen uit het AWR-rapport. De frequentie van het opnieuw uitvoeren van logboeken, fysieke leesbewerkingen en schrijfbewerkingen bepalen de IOPS-snelheid. Controleer altijd of de VM-serie die u kiest, de mogelijkheid heeft om de I/O-vraag van de workload af te handelen. Als de VM een lagere I/O-limiet heeft dan de opslag, stelt de VM de limiet in.

Schermopname van de AWR-rapportpagina.

De redo-grootte is bijvoorbeeld 12.200.000 bytes per seconde, wat gelijk is aan 11,63 MBPs. De IOPS-waarde is 12.200.000 / 2.358 = 5.174.

Nadat u een duidelijk beeld hebt van de I/O-vereisten, kunt u een combinatie van stations kiezen die het meest geschikt zijn om aan deze vereisten te voldoen.

Aanbevelingen voor schijftype

  • Voor gegevenstabelruimte verspreidt u de I/O-workload over meerdere schijven met behulp van beheerde opslag of Oracle Automatic Storage Management (ASM).
  • Gebruik geavanceerde Oracle-compressie om I/O voor zowel gegevens als indexen te verminderen.
  • Scheid opnieuw logboeken, tijdelijke en ongedaan maken van tabelruimten op afzonderlijke gegevensschijven.
  • Plaats geen toepassingsbestanden op standaard besturingssysteemschijven. Deze schijven zijn niet geoptimaliseerd voor snelle opstarttijden van vm's en bieden mogelijk geen goede prestaties voor uw toepassing.
  • Wanneer u vm's uit de M-serie in Premium-opslag gebruikt, schakelt u schrijfversneller in op de schijf voor opnieuw logboeken.
  • Overweeg opnieuw logboeken met hoge latentie te verplaatsen naar de ultraschijf.

Instellingen voor schijfcache

Hoewel u drie opties hebt voor hostcaching, wordt alleen alleen-lezencaching aanbevolen voor een databaseworkload in een Oracle-database. Lezen/schrijven kan leiden tot aanzienlijke beveiligingsproblemen in een gegevensbestand, omdat het doel van een databaseschrijven is om het op te slaan in het gegevensbestand, niet om de informatie in de cache op te slaan. Met alleen-lezen worden alle aanvragen in de cache opgeslagen voor toekomstige leesbewerkingen. Alle schrijfbewerkingen worden nog steeds naar de schijf geschreven.

Aanbevelingen voor schijfcache

Als u de doorvoer wilt maximaliseren, begint u indien mogelijk met het kenmerk Alleen-lezen voor hostcaching. Houd er voor Premium-opslag rekening mee dat u de barrières moet uitschakelen wanneer u het bestandssysteem koppelt met de opties voor alleen-lezen. Werk het bestand /etc/fstab bij met de universeel unieke id voor de schijven.

Schermopname van de pagina Beheerde schijf met de optie Alleen-lezen.

  • Gebruik voor besturingssysteemschijven Premium SSD met de cache van de lees-schrijfhost.
  • Voor gegevensschijven die het volgende bevatten, gebruikt u premium SSD met alleen-lezen hostcaching: Oracle-gegevensbestanden, tijdelijke bestanden, controlebestanden, bestanden voor het bijhouden van wijzigingen blokkeren, BFILEs, bestanden voor externe tabellen en flashbacklogboeken.
  • Voor gegevensschijven die oracle online redo-logboekbestanden bevatten, gebruikt u premium SSD of UltraDisk zonder hostcaching, de optie Geen . Oracle redo-logboekbestanden die worden gearchiveerd en Oracle Recovery Manager back-upsets, kunnen zich ook in de online redo-logboekbestanden bevinden. Hostcaching is beperkt tot 4095 GiB, dus wijs geen premium SSD toe die groter is dan P50 met hostcaching. Als u meer dan 4 TiB aan opslagruimte nodig hebt, stript u verschillende premium SSD's met RAID-0. Gebruik Linux LVM2 of Automatisch opslagbeheer van Oracle.

Als workloads sterk variëren tussen de dag en de avond, en de I/O-workload dit kan ondersteunen, biedt P1-P20 Premium SSD met bursting mogelijk de prestaties die vereist zijn tijdens batchbelastingen 's nachts of beperkte I/O-vereisten.

Beveiliging

Nadat u uw Azure-omgeving hebt ingesteld en geconfigureerd, moet u uw netwerk beveiligen. Hier volgen enkele aanbevelingen:

  • NSG-beleid: U kunt uw NSG definiëren met een subnet of een netwerkinterfacekaart. Het is eenvoudiger om de toegang op subnetniveau te beheren, zowel voor beveiliging als voor toepassingsfirewalls met geforceerde routering.

  • Jumpbox: Voor veiligere toegang moeten beheerders niet rechtstreeks verbinding maken met de toepassingsservice of -database. Gebruik een jumpbox tussen de beheerderscomputer en Azure-resources.

    Diagram met de jumpbox-topologie.

    De beheerderscomputer mag alleen ip-beperkte toegang tot de jumpbox bieden. De jumpbox moet toegang hebben tot de toepassing en database.

  • Particulier netwerk (subnetten): Het is een goed idee om de toepassingsservice en -database op afzonderlijke subnetten te hebben, zodat NSG-beleid betere controle kan instellen.

Resources

Volgende stappen