Oracle Multitenant optie voor Azure of AWS AC2 niet bruikbaar

Oracle Multitenant optie voor Azure of AWS AC2 niet bruikbaar

Hoe nuttig is Oracle Bring Your Own License in de (Azure/AWS) Cloud?  Met de migratie van een eigen data centrum naar een cloud oplossing staan veel organisaties voor de keuze kiezen we License included of gaan we voor een Bring Your Own License oplossing. Als je al licenties hebt kan Bring Your Own License een goede manier zijn om de historische investering veilig te stellen. 

Dit werkt alleen als je in de cloud dezelfde functionaliteit ter beschikking hebt.  En daar blijkt nu net de uitdaging te zitten in combinatie voor Oracle 19 Multitenant. Daar is het waar de schoen wringt.  Tussen Oracle 19.3 , de base release voor On Premise, en Oracle 19.11  (de  meeste recente release op het moment van het schrijven van dit artikel (mei 2021) is er het een en ander veranderd. Onder andere  de default waarde van max_pdbs. Dit blijkt duidelijk uit onderstaande documentatie.

Oracle documentatie augustus 2020:

Oracle Multitenant optie voor Azure of AWS AC2 niet bruikbaar

Bij een upgrade van 19.3  naar 19.11 is de default waarde van de parameter max_pdbs ineens nog maar 5.  Hierdoor loop je na het creëren van een aantal PDBs loop je aan tegen de error:

ORA-65010: maximum number of pluggable databases created

Het wijzigen van de waarde van max_pdbs veranderd hier niets aan.

Het wordt nog vreemder  als je wat gaat spitten in de kelder van de software.  Dan blijkt dat de database weet dat je op Azure draait.

SQL>  oradebug setmypid
Statement processed.
SQL> oradebug call kscs_cloudprov_ut
kscs_cloudprov_ut: Detecting cloud provider...
This is a non oracle cloud database instance
This is a Azure instance
CloudDB(10), CloudDetect(10), CloudQuery(ff)
Function returned A319111D

Dit op een echte on premise omgeving:

SQL> oradebug setmypid
Statement processed.
SQL> oradebug call kscs_cloudprov_ut
kscs_cloudprov_ut: Detecting cloud provider...
This is an on-premise database instance
CloudDB(0), CloudDetect(0), CloudQuery(ff)
Function returned C06810FF

De database is er zich dus van bewust dat  de Azure VM  op Azure draait en niet zo maar een VM is. Een soortgelijk gedrag is ook op AWS te zien. In Support note: ORA-65010 When Oracle Database Hosted on AWS Cloud (Doc ID 2328600.1) wordt de indruk gewekt dat dit een bug is snel opgelost zal zijn.  Echter in de meeste recente release speelt dit nog steeds.

Op internet zijn een aantal blogs/discussies over dit verschijnsel, maar een echte oplossing is er nog net.

Wat betekent dit nu concreet? Onduidelijk is of dit een bug is of bewuste gedrag. Het effect is echter wel dat op dit moment de Oracle Multitenant optie voor Azure of AWS AC2 niet bruikbaar is. Hiermee is het voordeel van BYOL weg, echter voor de genoemde platformen is er geen andere keuze.

Oracle maakt met de licentie regels het draaien van de Oracle database op een Cloud oplossing anders dan de eigen platform al onaantrekkelijk. Door het gebruik van de Oracle Multi Tenant optie onmogelijk te maken ontmoedigd Oracle deze oplossing nog meer.

Het migreren naar de Cloud van de Oracle database workload heeft haken en ogen en moet een goed overwogen keuze zijn.

Heb je wat gehad aan dit artikel, Oracle Multitenant optie voor Azure of AWS AC2 niet bruikbaar. Mocht je hulp nodig hebben of je hebt vragen n.a.v. dit artikel, laat het ons dan weten.

Oracle licenties in de Cloud (Azure en AWS)

Scroll to Top