Running Oracle on AWS - FAQs

Frequently asked questions

AWS Deployment Option SE2 License Included Oracle Cloud Policy Core-Based License ULA
RDS
EC2 Compute
VMware Cloud on AWS
Dedicated Hosts on EC2
EC2 Bare Metal Instance

As the consulting division of OpsCompass, House of Brick focuses on architecture, license strategy, performance, virtualization, and cloud computing for business-critical applications. Like any infrastructure choice for Oracle, answering key architectural questions lays the groundwork for success. Here are some questions customers need to ask when considering AWS for their Oracle workloads.

What do you want to know? Choose below.

Migration

Useful content
Questions

Customers spend much more on Oracle license and maintenance than the underlying infrastructure, so the impact on Oracle licensing should always be the first consideration when evaluating a platform change for your Oracle products. Compared to running Oracle on-premises, there are additional options available for licensing Oracle on AWS.

 

  • Virtual CPU Licensing – Oracle’s Cloud Licensing Policy allows licensing in EC2 and RDS by vCPU (processor core factor does not apply). It counts two vCPUs as equivalent to one Oracle processor license if hyper-threading is enabled, and one vCPU as equivalent to one Oracle processor license if hyper-threading is not enabled. This option is available for Oracle running both in EC2 or RDS.  Keep in mind that AWS offers an “Optimize CPU” feature to disable virtual CPUs on RDS or EC2 instances in order to control licensable virtual CPUs.
  • RDS License Included Option – Customers have the option of bundling Oracle Standard Edition as part of the fee for RDS. This is almost always cost advantageous for customers, as the licensing is on-demand for a low price and involves signing no agreements with Oracle.
  • Traditional Core Licensing – Using AWS Dedicated Hosts and Bare Metal Instances in EC2 creates the possibility of using traditional per-core based Oracle software licensing. This can also be very cost advantageous.
  • Unlimited License Amendment (ULA) – Using a ULA in AWS EC2 or RDS is permitted, but most recent Oracle contracts do not allow cloud usage to count for ULA certification at the end of the agreement

Leveraging the strengths of the cloud requires a different approach to performance tuning. Given how inexpensively additional RAM or disk may be tactically applied to performance issues, Oracle database tuning in the cloud is an exercise in determining when it is appropriate to increase resource allocations versus analyze and tune application SQL statements.

 

All the traditional Oracle tuning tools are usable in the same manner in the cloud, but additional AWS services such as CloudWatch are invaluable for tracking system load metrics. Combining a cloud savvy approach with traditional Oracle performance tuning strategies allows for excellent Oracle performance in a public cloud environment

Navigating the options available for migrating an Oracle database to AWS RDS or EC2 can be tricky, but House of Brick’s experience shows that there are really two high level approaches:

 

  • For business critical production workloads, the best practice is to utilize a replication tool to synchronize the database data to the cloud without impacting service levels. Oracle’s Data Guard or GoldenGate are sometimes used for this, but Amazon’s Database Migration Service (DMS) is often an easier, and less expensive, alternative.
  • Non-production workloads, or production workloads that are not 24/7, can be migrated with more straightforward backup/restore, or export/import, strategies for moving the database to the cloud.

AWS offers very fast servers and storage supporting their hypervisor. From a technology standpoint, migrating off of Exadata or ODA is no different than migrating off of any other hardware platform. The Exadata database platform does employ some non-standard software that is specific to Exadata, like Hybrid Columnar Compression and the Query Offload Engine. This just means that some extra care will need to be taken when sizing database workloads coming from an Exadata.

 

From a licensing perspective, you need to be aware of all of the terms and conditions in your particular agreement with Oracle. Consult a licensing professional, like House of Brick, to understand if there are any barriers to migrating off of an Oracle hardware platform.

House of Brick offers products and services to help with your cloud management and migrations. Specific to Oracle databases, our License Manager product will keep track of your Oracle deployments on-prem and in the cloud, so you always know your compliance status.

 

During cloud migration new environments are being deployed at a rapid pace. This rapid deployment  can trigger a costly license deficiency very quickly. OpsCompass License Manager will keep you on track by providing a continuous compliance assessment dashboard.

Moving workloads from Oracle to an open source database engine can be a source of great cost savings. However, planning such a migration takes careful preparation as not only must the data be moved, but often application refactoring and schema refactoring are required as well. Using Amazon’s Schema Conversion Tool (SCT), an assessment report can be run against an Oracle database to determine the degree of schema modification that may be required.

Comparing AWS vs OCI

Useful content
Questions

Oracle provides public facing policy documents related to licensing. These documents are non-contractual, but since Oracle is unilaterally offering additional licensing terms, they are available for use in counting licenses. There are several of these policy documents. The policy document titled, “Licensing Oracle Software in the Cloud Computing Environment”, describes how to license Oracle software by the vCPU in authorized public clouds.  The following link will get you there, https://www.oracle.com/us/corporate/pricing/cloud-licensing-070579.pdf.

 

The Cloud Policy is quite short and lays out all of the conditions for counting vCPUs for licensing in AWS.  Basically, every two vCPUs in AWS counts for one processor license. In contrast, every one X86 based physical core of an on-premises server counts for .5 of a processor license. So, the Cloud Policy provides exactly half the number of physical cores as traditional core-based licensing.

If you are tired of dealing with the antics of the Oracle sales team or can’t sleep at night because of the constant threat of an Oracle audit, then strengthening your relationship with Oracle by running in OCI is probably not your best option. Instead, consider adopting a truly open platform like AWS where you can run all of your workloads including Microsoft SQL Server, open database platforms like PostgreSQL and MySQL, as well as industry leading serverless technology.

Oracle RAC

Useful content
Questions

There are two issues with running Oracle RAC in AWS.  The first is a licensing issue. If you are licensing your Oracle workloads using Oracle’s Cloud Licensing Policy, then RAC is not listed in the approved products for AWS. That means that licensing RAC using the Cloud Policy is not allowed.

 

The second issue with RAC in AWS relates to support. Oracle expressly denies support for RAC in MOS note 2688277.1. This means that support for RAC, including the opening of trouble tickets can be denied by Oracle’s support organization. See the following House of Brick blog post which describes the problems with RAC in AWS.  https://houseofbrick.com/blog/oracle-licensing-question/

 

It is recommended to pursue alternatives to Oracle RAC for your HA strategy in AWS. See our blog that describes RAC alternatives in AWS.  https://houseofbrick.com/blog/oracle-rac-alternatives-in-aws/

While House of Brick has successfully implemented Oracle RAC in the VMware Cloud on AWS, we find that for most customers, all of the functionality and features offered by RAC either are not needed or can be duplicated using alternative strategies in the cloud. They include:

 

  • The high availability of RAC, allowing service to persist with only a brief interruption during server failure, is an automatic feature of all EC2 or RDS instances in AWS. Any workloads that fail due to hardware will be automatically restarted on another host. In addition, for workloads that can tolerate almost zero downtime, RDS offers a Multi-AZ option to maintain a standby copy of a database that can be failed over automatically (and nearly instantly) in the case of an outage.
  • The scalability of RAC is far less important in a cloud environment where additional CPU/RAM/disk resources are only a few clicks away. The ability to scale Oracle instances up or down in size on-demand is a more powerful scalability tool than the ability to expand a RAC cluster.
  • Zero downtime rolling patching, an important RAC feature for 24/7 business critical databases, can be accomplished with Oracle GoldenGate and standby instances.

Amazon RDS

Useful content

AWS RDS SQL Index Maintenance

As DBAs we are constantly adapting to recent technologies. We are seeing an increase in organizations migrating to the cloud. However, there are some fundamentals

Read More
Questions

At House of Brick, we are big fans of RDS. The real question you have to ask yourself is, do I want to reduce the operational cost of managing my databases?  RDS is a fully managed database platform and provides many operational advantages like automated backups, automated patching, and automated disaster recovery, to name a few. RDS makes it very easy to deploy database workloads through the AWS control plane or with automated tools like CloudFormation.  Then couple that with the ability to deploy Oracle databases with the License Included option for SE2 and you can stand up and run Oracle workloads quickly and easily without having to purchase licenses from Oracle.

 

If you want to use AWS Dedicated Hosts, then EC2 is your only option. Dedicated Hosts have the advantage of providing the option for traditional core-based licensing, as if the hardware were on-premises. If Dedicated Hosts provide a significant licensing advantage, then EC2 should be given serious consideration.

Traditional RDS is a fully managed database platform with very limited access for the users.  Some applications require more access and customization than traditional RDS provides. RDS Custom strives to create a balance between a fully managed database service and a fully custom environment that is wholly managed by the customer.

The AWS service terms, https://aws.amazon.com/service-terms/, dictate that for the license included options, the use of the Oracle software is for your internal business processes only. It is strictly forbidden to offer SaaS solutions or hosting services to third parties using the license included option.

 

If you are providing these types of services to third parties, you must bring your own Oracle licenses.  Additionally, it is likely that you would need a proprietary hosting amendment in your contract with Oracle to provide these services with your licenses.

AWS offers RDS for Oracle with a license included option. This means that you pay AWS for the RDS instance and the license for that instance is included with the instance cost. There are some restrictions with the license included option.

First, the only database edition available is Standard Edition 2 (SE2).  If you are tied to Enterprise Edition features, then the license included is not for you.

Licensing

Questions

There are typically no hardware deployment restrictions in an ULA. You are granted the right to deploy the Oracle programs outlined in the Unlimited Deployment List in an unlimited fashion. The problem is not with deployment restrictions, the problem is with the certification clause in the contract. The certification clause dictates how to count Oracle licenses when exiting from a ULA. A ULA is a term-based contract and at the end of the term you have the choice to negotiate a new ULA or to exit the ULA and revert back to processor-based licenses.

 

The certification clauses we have seen either prohibit the counting of workloads in a public cloud or have restrictions on how cloud-based workloads are counted. If cloud is in your future and you are contemplating entering into or exiting a ULA, be aware of these restrictions.

Many of our clients are tired of Oracle’s predatory licensing tactics. From oppressive audits with non-contractual compliance assertions to heavy handed sales techniques, people are moving away from Oracle.  For custom applications this might mean moving to an open database platform like PostgreSQL or MySQL.  For custom DSS systems like data warehouses this might mean Redshift or big data.  Whatever the case, moving away from a product with expensive licensing and support costs is desirable.

Licensing Oracle core technology products like database and middleware are based on the underlying hardware. Correctly sizing your workloads is the fastest way to reduce your licensing obligation.  Overprovisioning hardware is a sure way to pay too much for licensing. By correctly sizing your workloads, not only do you keep your cloud spend in check, but your licensing costs are also kept within reasonable levels.

The Oracle database kernel is the same for Standard Edition (SE) and Enterprise Edition (EE).  The difference is that some features, like parallelism, are disabled in SE.  Also, there are several separately licensable options and packs like, Partitioning, Advanced Compression, Diagnostics and Tuning Packs, etc.

 

Processor licenses for EE are licensed by the physical core while SE is licensed by the physical socket.

 

Our blog helps you pick the right edition for you. https://houseofbrick.com/blog/choosing-the-right-oracle-database-edition-standard-vs-enterprise/

It is common for application licensing to be based on business metrics like revenue or number of employees. These types of metrics do not have hardware implications associated with them.

 

By contrast, Oracle core technology products like Database along with options and packs, or WebLogic use hardware-based metrics to count license use.  Even Named User Plus (NUP) metrics have per-processor minimums that must be met to be in compliance. This is why it is important to right-size your Oracle workloads and why it is so expensive if you don’t.