Charles Kim, Nitin Vengurlekar and I are doing a number of presentations on virtualizing Oracle and Hadoop at the Collaborate 2013 conference in Denver. I thought I'd share a few of our insights and things we will be talking about around the virtualization of Tier One platforms which include Oracle, Hadoop and Business Critical Applications.
Virtualizing Oracle Databases
Business Applications and Hadoop
Hypervisors today are getting faster with less overhead. When you look at benchmarks being published
today on running Tier One databases and applications the overhead can get down
to 6% or less. This low level of
overhead means you can run 80-90% of all database servers in a Virtual Machine.
Critical systems that require ten of
thousands of IOPs, high IO throughput, and excessive CPU requirements may generate more than the 6% of overhead. If your
application suffers from performance issues today, your best bet is to stay on
the physical servers until your performance issues are isolated and resolved. The rest of the typical business critical
applications and database servers can run successfully in a virtual
environment.
Rapidly Provision Oracle on Virtualized Infrastructure
Imagine a world where your system administrators can
provision a fully functional Linux server that is patched with all the up-to-date
kernel parameters, updated device drivers, and updated configurations in 1 hour. The time that you make the request to the
time that you get access to a server that has a fully configured Red Hat 5/6 or
Oracle Linux 5/6 environment is within one hour. On top of all this, the build is perfect
every time. This should be a reality for
most companies today.
Imagine providing a fully patched Oracle database on 11.2.0.3
with PSU 5 (January 2013 PSU) applied to your customers in 1 hour. There is no reason why this cannot be accomplished
today with the infrastructure that is provided by VMware and Oracle.
Lastly, imagine provisioning RAC clusters in matter of
hours. Imagine being able to provide a
fully patched 2 node/3 node /4 node Grid Infrastructure with ASM and a fully
patched database within one day. This
presentation does not go into the secret sauce of being able to do this but
will lead you in the right direction.
Oracle and VMware provide the means to be able to provision even the
most complicated RAC infrastructure in one day.
We no longer spend weeks and even months to setup our RAC environments.
Create Golden Image Templates
The concept of creating a golden image applies at all levels
of the stack. In the end, we need to
create a golden image virtual machine template.
Before we can create a golden image VM template, we need to create a
golden image OS. This does not come
over night but can easily be established.
There has to be lot of collaboration between the system administrators
as to standards and policies.
Furthermore, someone has to be the “owner” of the templates to make sure
all the standard build is applied to the golden image template. As we mature within the organization, we can build
automation to simplify the build process and parts of the builds that require
manual intervention. The level of
automation will dictate how long it takes to provision the Linux VM. Obviously, more you automate, the less time
it will take.
As DBAs, we will want to focus on creating golden images of
the database eco-system. We need to
create a golden image Grid Infrastructure stack. We also need to create a golden image database
software stack. Finally, we need to
create a golden image database to deploy to all the environments. We can automate all of the above components
to simplify and reduce the amount of time to provision Oracle databases.
Building An Enterprise Virtual Platform
Setting up a VirtualBox, VMware Fusion or VMware Workstation
VM is pretty simple. However there is a
big difference in skill set required to
set up a bare metal hypervisor for running a POC and/or benchmarks. It's then another thing to design, configure
and implement an enterprise virtual platform for running Tier One
platforms. They key to building an
enterprise virtual platform is to follow best practices and reference
architectures. Four levels of best
practices that have to be followed include:
§
Validate virtualization and software configurations
with vendor hardware compatibility lists.
§
Follow recommended reference architectures.
§
Follow virtualization vendor's best practices,
deployment guides and workload characterizations.
§
Review storage vendor recommendations.
§
Validate internal best practices for configuring
and managing VMs.
As we build out the enterprise virtual platform, standards
will need to be created and tightly controlled.
Process and procedures for virtual machine deployments will also play a
big factor in how successful your virtualization journey becomes.
Why Virtualize Oracle and Hadoop Environments
•
Virtual
Servers offer significant advantages over Physical Servers.
•
Enabling
Oracle or Hadoop as a service in a public or private cloud.
•
Cloud
providers are making it easy to deploy platforms for POCs, dev and test
environments.
•
Running
a Consistent, Highly Reliable Hardware Environment.
•
Standardizing
on a Single Common Hardware Platform (software stack).
•
Virtualization
is a natural step towards the cloud.
•
Cloud
and virtualization vendors are offering elastic solutions.
Virtualization Features
These virtualization features offer a lot of additional
functionality to Oracle database servers, applications and Hadoop environments.
Faster provisioning
|
Live Cloning
|
Elasticity
|
Live migrations
|
Templates
|
Multi-tenancy
|
Live storage migrations
|
Distributed Resource Scheduling
|
Storage
I/O Control
|
High Availability
|
Hot CPU and Memory add
|
Network
I/O Control
|
Live Cloning
|
VM Replication
|
16Gb
FC Support
|
Network isolation using VXLANs
|
Multi-VM trust zones
|
iSCSI
Jumbo Frame Support
|
VM Backups
|
Distributed Power Management
|
Node
Affinity/Anit-Node Affinity
|
We cannot go over all the virtualization features in this
paper. We do plan on reviewing all of
the terms and features in our presentation.
Also at the presentation we will provide the subtle differences between
the two vendors.
vMotion / Live Migration
vMotion / Live Migration, by far, is one of the biggest
benefits of a virtualization infrastructure.
With this feature enabled, we can migrate an active VM to another host
machine without any downtime or disruptions while maintaining application
services to users. Granted the
application may experience a slight degradation in performance, there will be
no data loss during the few minutes needed to move a VM to another host
machine. It will be completely
transparent to the applications that the live migration (vMotion) occurred.
Imagine if you lost the network card on one of the host
machines and need to take the server down for maintenance. In the absence of Oracle VM or VMware, you
would experience a complete outage in a non-virtualized world. If you happen to be on a RAC environment, you
would run your databases in a reduced capacity.
In the virtual world however, we would simply move your database server
VM to another host machine, perform our maintenance, reboot your host machine
and let the database server VM migrate back.
While this is happening, you would never know that it happened.
High Availability (HA)
With virtualization, we automatically adopt what is known to
be HA in the virtualization world. If
the host machine crashes for any reason, we can failover the VM to a surviving
host machine in the cluster. This
happens automatically unless we set CPU and/or memory limits beyond what the
host machine is capable of handling.
With HA, some companies may be able to forgo on RAC licenses
if they are strictly leveraging RAC for high availability. If customers can withstand a 10-15 minute
outage for the VM to re-start on a
surviving host machine, you maybe able to eliminate your RAC licenses.
Distributed Resource Management (DRS)
Leveraging the vMotion / Live Migration infrastructure, we
can evenly load balance the work load of every host machine in the
virtualization cluster. If one host
machine becomes over-loaded, we can move the VM or VMs to a less loaded host
machine. This automatically happens
without the users experiencing any perceived outages. We can establish affinity and anti-affinity
rules to even move VMs together with other VMs. Again, we should not be afraid to fully
leverage this technology.
In our detailed paper on "Virtualizing Oracle, A Technical Deep Dive we provide detailed links on best practices for virtualizing Oracle.
No comments:
Post a Comment