Oracle on vSphere – Summary of Storage options

Storage – the final frontier. These are the voyages of any Business Critical Oracle database, its endless mission: to meet the business SLA, to sustain increasing workload demands and seek out new challenges, to boldly go where no database has gone before.


Storage is one of the most important aspect of any IO intensive workloads, Oracle workloads typically fit this bill and we all know how a mis-configured Storage or incorrect tuning often leads to database performance issues, irrespective of any architecture where the database is hosted on.

As part of my pre-sales Oracle Specialist role where I talk to Customers , Partners and VMware field, I always bring up the fact how we can go and procure ourselves the biggest and baddest piece of infrastructure on this face of earth and all it takes is one incorrect setting or mis-configuration and  everything goes to “Hell in a Handbasket”.

Continue reading

Posted in Uncategorized | Leave a comment

On Demand Scaling up resources for Oracle production workloads

The crux of this blog’s discussion is “How to stop hoarding much needed infrastructure resources and live wisely ever after by scaling up as needed effectively

Typically Oracle workloads running on bare metal environments , or for that matter any environment, are sized very conservatively, given the nature of the workload , with the premise that , in event of any workload spike, the abundant resources thrown at the workload will be able to sustain this spike, but in reality , we need to ask ourselves these questions

  • How much resource is actually allocated to the workload?
  • How much of that allocated resource is actually consumed by that workload ?
  • How often does the workload experience spikes?
  • If spikes are happening regularly then, has proper capacity planning and forecasting been done for this workload?

Proper plan and design along with capacity planning and forecasting is the key to manage any Business Critical Application (BCA) workload and there is no shortcut around this.

Unfortunately what this means in a physical environment is , for example, static allocation of resources to a BCA workload where the CPU utilization has been flat at 30-40% for 11 months of the year with utilization at 55-60% for the last month of the year.

Pre-allocating resources to a workload , in anticipation of peaks for say 1 month in a whole year, basically results in the resources underutilized for the rest of the year , starving other workloads of much needed resource, an ineffective way of resource allocation , thereby leading to increase in larger footprint of servers resulting in increase in CAPEX and OPEX.

Enter “Hot Plug” – “Hot Plug CPU and Hot Plug Memory” on vSphere Platform – Resource allocation on demand thereby resulting in effective and elastic resource management working on the principle of “Ask and thy shall receive”.

Continue reading

Posted in Uncategorized

Oracle RAC on VMware Cloud on Amazon AWS


With the recent launch of the VMware Cloud on AWS Software Defined Data Center (SDDC) from VMware, many Business Critical Application (BCA) workloads that were previously difficult to deploy in the cloud no longer require significant platform modifications.

This post describes a Better Together demonstration VMware and AWS presented at VMworld 2017 using an Oracle RAC Database for high-availability zero-downtime client connection failover, supporting a Django-Python application running in a Native AWS Elastic Beanstalk environment.

Oracle RAC presents two requirements that are difficult to meet on AWS infrastructure:

  • Shared Storage
  • Multicast Layer 2 Networking.

VMware vSAN and NSX deployed into the VMware SDDC cluster meet those requirements succinctly.

The Django-Python application layer’s end-to-end provisioning is fully automated with AWS Elastic Beanstalk, which creates one or more environments containing the necessary Elastic Load Balancer, Auto-Scaling Group, Security Group, and EC2 Instances each complete with all of the python prerequisites needed to dynamically scale based on demand.  From a zip file containing your application code, a running environment can be launched with a single command.

By leveraging the AWS Elastic Beanstalk Service for the application tier, and VMware Cloud on AWS for the database tier, this end-to-end architecture delivers a high-performance, consistently repeatable, and straightforward deployment.  Better Together!


In the layout above, on the right, VMware Cloud on AWS is provided by VMware directly.  For each Software Defined Data Center (SDDC) cluster, the ESXi hypervisor is installed on Bare Metal hardware provided by AWS EC2, deployed into a Virtual Private Cloud (VPC) within an AWS account owned by VMware.

Each EC2 physical host contributes 8 internal NVMe high performance flash drives, which are pooled together using VMware vSAN to provide shared storage.  This service requires a minimum number of 4 cluster nodes, which can be scaled online (via portal or REST API) to 16 nodes at initial availability, with 32 and 64-node support to follow shortly thereafter.

VMware NSX provides one or more extensible overlay logical networks for Customer virtual machine workloads, while the underlying AWS VPC CIDR block provides a control plane for maintenance and internal management of the service.

All of the supporting infrastructure deployed into the AWS account on the right side of the diagram is incorporated into a consolidated hourly or annual rate to the Customer from VMware.

In the layout above, on the left, a second AWS account directly owned by the Customer is connected to the VMware owned SDDC account for optionally consuming Native AWS services alongside deployed vSphere resources (right).

When initially deploying the VMware Cloud on AWS SDDC cluster, we need to provide temporary credentials to login to a newly created or existing Customer managed AWS account.  The automation workflow then creates an Identity and Access Management (IAM) role in the Customer AWS account (left), and grants account permissions for the SDDC to assume the role in the Customer AWS account.

This role provides a minimal set of permissions necessary to create Elastic Network Interfaces (ENIs) and route table entries within the Customer AWS account to facilitate East-West routing between the Customer AWS Account’s VPC CIDR block (left), and any NSX overlay logical networks the Customer chooses to create in the SDDC account for VM workloads (right).

The East-West traffic within the same Availability Zone provides extremely low latency free of charge, enabling the Customer to integrate technology from both vSphere and AWS within the same application, choosing the best of both worlds.

Oracle RAC Configuration

Database workloads are typically IO latency sensitive.  Per VMware KB article 2121181, there are a few recommendations to consider for significantly improving disk IO performance.

Below is the disk setup for Oracle RAC Cluster using VMware multi-writer setting which allows disks to be shared between the Oracle RAC nodes.

The Oracle Databases on VMware Best Practices Guide provides best practice guidelines for deploying Oracle Single Instance and Oracle RAC cluster on VMware SDDC.

For the VMworld demo, the OCI compliant Oracle Instant Client was wrapped with the cx_Oracle python library, and Oracle’s Database Resident Connection Pooling (DRCP).  Database connections are initially evenly balanced between the ORCL1 and ORCL2 instances serving a custom Database Service named VMWORLD.

By failing the database service on a given node, we demonstrate that only 50% of client connections are affected, all of which can immediately reconnect to the surviving instance.

An often overlooked challenge with Oracle RAC is that client connections do not automatically fail back after repairing the failure.  Those client connections must be recycled at the resource pool level, which might require an application outage if only one pool was included in the design.  Multiplexing requests over two connection pools in your application code allows each pool to be iteratively taken out of service without taking the application down.

Given such application design changes often are not tenable post-deployment, AWS Elastic Beanstalk makes quick work of that limitation by simply deploying a GREEN copy of your application environment, validating it passes health-checks, and then transitioning your Customer workload from BLUE to GREEN stacks.  When the GREEN stack boots, its database connections will be properly balanced between instances as desired, after which the BLUE stack can then be safely terminated.  Similarly, application code changes can be deployed using the same BLUE/GREEN methodology, affording rapid rollback to the original stack if problems are encountered.  As many additional stacks can be deployed with a single command, “eb create GREEN”, or automated via REST-API.

At VMworld, we ran a live demo continuously failing each database service iteratively followed by an Elastic Beanstalk environment URL swap between BLUE and GREEN every 60 seconds, while monitoring Oracle’s GV$CPOOL_CC_STATS data dictionary view.  The ClassName consists of the database service name VMWORLD, followed by the Beanstalk environment name, and the application server’s EC2 instance identifier.  The second and subsequent columns of the below table indicate the RAC node servicing queries between refresh cycles.


 VMware Cloud on AWS affords many Better Together opportunities to not only streamline operational processes by leveraging Native AWS services, but also enable a cloud-first IT transformation without needing to disruptively re-platform your Enterprise Business Critical Applications.

The cloud based SDDC cluster deployment is simply another datacenter and cluster managed in the same way you manage your on-premises VMware environments today, without needing to retool or retrain staff.

Creating and expanding SDDC clusters can be accomplished in minutes, allowing you to drive utilization to a much higher efficiency without concern for 18-24 month capacity planning cycles that must be budgeted for peak usage.  Release burst capacity immediately after it is no longer needed without any CAPEX overhead, as well as the OPEX overhead of running your own datacenters.

Demo for the “Oracle RAC on VMware Cloud on Amazon AWS” can be found in the url below

All Oracle on VMware SDDC collaterals can be found in the url below

Oracle on VMware Collateral – One Stop Shop

More information on VMware Cloud on AWS can be found at the url below

Posted in Uncategorized

“RAC” n “RAC” all night – Oracle RAC on vSphere 6.x

“I wanna “RAC” and “RAC” all night and party every day” – mantra of an Oracle RAC DBA.

Much has been written , spoken and probably beaten to senseless 🙂 about the magical “Multi-writer” setting and how it helps multiple VM’s share vmdk’s simultaneously for Clustering and FT used cases.

I still get question from customers interested in running Oracle RAC on vSphere about if we have the ability to add shared vmdk’s to a RAC cluster online without any downtime ? Yes we do. Are the steps of adding shared vmdk’s to an extended RAC cluster online without any downtime the same? Yes.


By default, the simultaneous multi-writer “protection” is enabled for all. vmdk files ie all VM’s have exclusive access to their vmdk files. So in order for all of the VM’s to access the shared vmdk’s simultaneously, the multi-writer protection needs to be disabled.

The below table describes the various Virtual Machine Disk Modes:

As we all are aware of , Oracle RAC requires shared disks to be accessed by all nodes of the RAC cluster.

KB Article 1034165 provides more details on how to set the multi-writer option to allow VM’s to share vmdk’s. Requirement for shared disks with the multi-writer flag setting for a RAC environment is that the shared disk is

  • has to set to Eager Zero Thick provisioned
  • need not be set to Independent persistent

Continue reading

Posted in Uncategorized

To be “RDM for Oracle RAC”, or not to be, that is the question

Famous words from William Shakespeare’s play Hamlet. Act III, Scene I.

This is true even in the Virtualization world for Oracle Business Critical Applications where one wonders which way to go when it comes to provisioning shared disks for Oracle RAC disks, Raw Device Mappings (RDM) or VMDK ?

Much has been written and discussed about RDM and VMDK and this post will focus on the Oracle RAC shared disks use case.

Some common questions I get talking to our customer who are embarking on the virtualization journey for Oracle on vSphere are

  • What is the recommended approach when it comes to provisioning storage for Oracle RAC or Oracle Single instance? Is it VMDK or RDM?
  • What is the use case for each approach?
  • How do I provision shared RDM (s)  in Physical or Virtual Compatibility mode for an Oracle RAC environment?
  • If I use shared RDM (s)  (Physical or Virtual) will I be able to vMotion my RAC VM ’s without any cluster node eviction?

Continue reading

Posted in Uncategorized

Oracle on vSAN HCI – VMworld 2017

Interested to find out how VMware HCI vSAN solution provides high availability, workload balancing, seamless site maintenance, stability, resilience, performance and cost effective hardware required to meet critical business SLA’s for running mission critical workloads?

Come attend our session at VMworld 2017 Las Vegas on Wednesday, Aug 30, 2:30 p.m. – 3:30 p.m. where Sudhir Balasubramanian and Palanivenkatesan Murugan will talk about the VMware HCI vSAN solution for Mission Critical Oracle workloads

This session will showcase deployment of Oracle Clustered and Non Clustered databases along with running IO intensive workloads on vSAN and also talk about seamlessly running database day 2 operations like Backup & Recovery, Database Cloning , Data Refreshes , Database Patching etc using vSAN capability.

Signup for our session here

Posted in Uncategorized

Streamlining Oracle on SDDC – VMworld 2017

Interested to find out how to streamline your Business Critical Applications on VMware Software-Defined Datacenter (SDDC) seamlessly?

Come attend our session at VMworld 2017 Las Vegas on Thursday, Aug 31, 1:30 p.m. – 2:30 p.m. where Amanda Blevins and  Sudhir Balasubramanian will talk about the end to end life cycle of an Application on VMware SDDC.

This includes provisioning, management, monitoring, troubleshooting, and cost transparency with the vRealize Suite. The session will also include best practices for running Oracle databases on the SDDC including sizing and performance tuning. Business continuity requirements and procedures will be addressed in the context of the SDDC. It is a formidable task to ensure the smooth operation of critical applications running on Oracle, and the SDDC simplifies and standardizes the approach across all datacenters and systems.

Signup for our session here

Posted in Uncategorized