As much as I'd love to jump into advanced architecture and techniques with Oracle on Azure, we need to discuss what is supported for Oracle in Azure and what the difference is between certified and supported and how to get what you need from the Azure catalog.
Oracle Certified vs. Supported
Certified is not the same as supported- Successful and timely lift and shift projects to Azure IaaS VMs for Oracle keep to certified with a secondary path of supported products/versions and only use vendor supported when required.
What is Oracle Certified?
Oracle certification are products and third-party products, operating systems, or hardware that Oracle has tested and certified to work together. Each product has its own support policy and timeframe, separate FROM certification.
What is Oracle Supported?
These products may not be certified to work together or with certain OS or hardware but can receive support from Oracle on their own. Here is a reference Link to Oracle Products supported to run on Azure. Oracle still has the discretion to state an unsupported combination or configuration and it's important that customers are aware of this.
When deciding on a direction with Oracle on Azure, it's important to consider:
Azure’s recommendation will be to always use a certified or supported Oracle product on Azure. This is preferred as Oracle support is available to the customer if any issues arise.
Vendor supported products are welcome, but support is at the discretion of Oracle. Support must go through the vendor when run on Azure for these configurations and can't be guaranteed by Azure.
Unsupported products, versions and platforms can be deployed on Azure, but not recommended. No testing has been performed to guarantee the functionality and support isn’t available from the vendor or product configuration, installation or functionality.
Yes, licenses are bring your own, (BYOL) and Oracle supports porting licenses to Azure. This is done through the same Oracle licensing partner the customer has currently for their on-prem systems and they will be migrated to the cloud.
We want the best solution for long-term satisfaction for customers on the Azure cloud, so I can attest, my path is always going to be certified or supported paths for Oracle products and to be fully licensed.
What Does Oracle Certified Look Like?
There is a long list of products certified and supported on Azure for Oracle, but the most common scenarios are those that get the databases closer to other services/resources already in Azure or in the process of migrating to Azure.
By using Oracle Linux for the IaaS VM image, the business is guaranteed a version of Linux that is built and optimized to run Oracle workloads. Although there is a long list of products that can be deployed on Azure, we commonly see Oracle databases 12c, 18c and 19c, along with WebLogic. For Oracle products to be implemented for backups and disaster recovery, (DR) robust RMAN and Data Guard are used. A full infrastructure monitoring and management tool is offered in the way of Oracle Cloud Control or for a light weight solution, the database instance level monitoring tool of Cloud Control Express is offered. These solutions have been certified by Oracle to work in a third-party cloud, including Azure.
What Does Oracle Supported Look Like?
Supported can be a much longer list and more variations than the demands for certification, but the important fact to remember is that the product is offered support when running on Azure. If you need the list of all the products that are supported by Oracle when running on Azure, here's the list, but when considering the architecture, small differences can change the customer from a certified path to one of simply supported:
Always ensure that your customer targets for longevity of support through versions of the Oracle software as well as catalogs all Oracle products in their environment that they desire to migrate.
So What Does Oracle Unsupported Look Like?
There are fewer situations where I'm comfortable without support for an Oracle product. Having access to bug fixes and keeping Oracle environments patched remove vulnerabilities and workarounds that must be invented when issues arise. With the ever-present security concerns to an unpatched Oracle data source, I want to know that my databases have Oracle behind them when a vulnerability is discovered. Just as with certified to supported, the difference between supported and unsupported is a minor change and it's important to be aware of what they are:
If you just want to kick the tires on an Oracle database, Ubuntu is perfectly fine, but even in a development or testing situation, even the operating system should match the production environment to deter issues. There may be those cases where the customer has signed off on any need for Oracle support and they've chosen to take the risk to deploy to Azure even though they won't have Oracle to provide support, patches and bug fixes, but it's important to document this and ensure risk assessment has been performed before moving forward.
As for those who say, "I looked in the marketplace and I don't see Oracle Linux available!" I am an Oracle DBA, much more comfortable at the command line than any user interface and the same goes for searching for images to build. Using the Azure Cloud Shell or the Azure CLI, you can view the Oracle Linux images with the following command:
az vm image list \ --offer Oracle-Linux \ --all \ --publisher Oracle \ --output table
Wash, Rince, Repeat Less
Once you create your VM from the chosen Oracle Linux image, install the Oracle software, ASM and other configurations that you use regularly, you can create an ARM Template or a library of your own VM images.
Creating templates offers the opportunity to build once and reuse multiple times, as well as automate deployments in Azure with JSON template and parameter files. Think of it like a resource file for creating a database. The "bones" are there, but nothing specific and manual steps will need to be performed to restore the database, objects and data.
The next level is to create a repository of your own VM Images to deployed via AZ commands. You can create an Image from an existing VM already created, including Oracle database, ASM, Data Guard and grid software, the use the following instructions to create VM images. This removes the need to perform installations of the database even, so for those customers that simple perform the same installs over and over again, to have the image with everything built out may be a better solution than ARM templates and provides a more personalized experience for the customer.
This covered a few important aspects of building Oracle successfully on Azure. There's a lot more to it, but this is a good start for those wondering where to start.