Oracle Database on Hyper-scale Public Cloud – License Questions!

We all know, on January 23, 2017, Oracle updated the Licensing Oracle Software in the Cloud Computing Environment document. The gist of the announcement was “When counting Oracle Processor license requirements in Authorized Cloud Environments, the Oracle Processor Core Factor Table is not applicable“. So, if you are running Oracle database on x86 Intel platform on-premise, when moving to AWS or Azure cloud, your available licensed CPUs are cut in half. Read my blog on this topic.

Can I run Oracle RAC on Public Cloud?

The answer is “yes!”. On AWS and Azure (for that matter any public cloud), you could use third party product Flashgrid to make local storage shared on all nodes, and have ASM on top. FlashGrid Storage Fabric turns local drives into shared drives accessible from all nodes in the cluster. The local drives shared via FlashGrid Storage Fabric can be block devices of any type including Elastic Block Storage (EBS) volumes, local SSDs, or LVM volumes. The sharing is done at the block level with concurrent access from all nodes. With ASM, you can choose normal redundancy (two copies) or high redundancy (three copies). I believe, this is the limitation of Flashgrid as of today, you can have up to 3 node RAC using Flashgrid. Read more.

Oracle RAC in AWSOn Oracle cloud, you can have a two node RAC natively using Oracle DBaaS service. If you need bigger capacity servers, Oracle Bare Metal Cloud service is the answer. With Bare Metal Cloud, you can have up to 72 OCPU and 1TB of memory per node. With bare metal also, only two node RAC is possible – no more than two nodes.

What about licensing RAC on Public Cloud?

The Licensing Oracle Software in the Cloud Computing Environment document has a link to “eligible” technologies and products on the cloud (this document also updated on Jan 23, 2017). I see Database SE, SE2, EE, even Partitioning, Advanced Security, Advanced Compression listed, but I do not see Oracle RAC. Does this mean, from a licensing standpoint, Oracle RAC on AWS & Azure using Flashgrid is not allowed?

Note, Oracle’s official document is under review. Hopefully, some clarity comes out in the next few days.

How about In-Memory, Multitenant and Active Dataguard?

I also do not see these technologies listed in the document. So, are these products/technologies not allowed on Azure/AWS? I know technically it is possible to create a Container Database with the In-memory option and Active Dataguard (together or separate) on AWS EC2 or Azure Compute (both IaaS). Question is, am I allowed to do so? Amazon’s own white paper, Oracle Advanced Architectures include Active Dataguard in multiple scenarios. This white paper was published in April 2016 though, much before Oracle updating the Cloud Licensing Document!


2 Responses to Oracle Database on Hyper-scale Public Cloud – License Questions!

  1. Interesting to see someone who has read and understood the documentation properly–a lot of people miss that bit! As you know, the Cloud Policy document is non-contractual so needs a pinch of salt; however it is not advantageous to disregard it (unless you want to count all cores on a processor rather than just those allocated to your instance size).

    I would not be surprised if, in case of an audit, Oracle wouldn’t notice / remember this restriction (by product) for these ‘flagship’ options — which they are clearly trying to use as a lever to nudge people towards their own Cloud. Equally, bear in mind that your contract (depending on its date) may have an explicit clause about counting and matching options to DBEE — e.g.

    “If licensing by Processor, the number of licenses for the Programs listed below in column A [inc Multitenant, Active Data Guard, In-Memory] must match the number of licenses of the associated Program listed in column B [Oracle Database Enterprise Edition]”.

    If so, you perhaps have your answer — in the absence of any other guidance you are following your contract (which is more binding than the policy).

Leave a Reply

%d bloggers like this: