Oracle Database Appliance - Deep Dive
Oracle Database Appliance - Deep Dive
Introduction
In 2011 Oracle has introduced a new Engineered System called Oracle Database
Appliance. This platform, meant for databases consolidation and high availability, is built
almost as a “Plug- And-Play” solution. This article will provide an overview of the ODA
architecture and base usage (updated according latest releases) as well as the keys to
go beyond the black box to get benefit of the whole power of the solution.
ODA Architecture
The Oracle Database Appliance, since its version X3-2 which came out in Q3 2013, is based on three
individual components: 2 servers, 1 storage shelf.
The whole hardware architecture, including cooling or power supplies, on ODA is fully redundant.
Storage access for each server node is done through two SAS wire connected to two distinct controllers
both served in the shelf by two expanders. In addition Oracle Automatic Storage Management (ASM) is
used for data redundancy. If any component fails, the storage access is still guaranteed.
While talking about storage capacity, two parameters have to be taken into account:
- ASM Redundancy
- Backup storage location
ODA proposes to use either the Normal or High Redundancy modes from ASM taking the raw storage
capacity from 18TB to either 9TB (Normal Redundancy) or 6TB (High Redundancy) down.
The second point that directly impacts the storage capacity is if the databases’ backups will be stored
on the ODA itself (in the Fast Recovery Area) or on an external medium such as Tapes or NFS shares.
Depending on the chosen solutions, the ASM disk groups’ sizing is adjusted.
A last point to note is that these settings are configured during the ODA deployment and cannot be
changed afterward without reinstalling the ODA!
- Bare Metal
- Virtualized
Bare Metal is a fully database dedicated ODA as it was designed in its version 1.0. It is an appliance
based on Oracle Linux and including Grid Infrastructure and Oracle Database.
In this architecture, all databases run in a single and dedicated virtual environment so called ODA
BASE. Additional virtual machines can be setup beside the ODA BASE to run any software component
required.
The ODA BASE virtual machine is the driving director of the whole platform and is used to:
- Manage databases
- Manage binaries
- Manage virtual machines
For applications virtualization several templates are already available for download from
edelivery.oracle.com/linux.
In addition Oracle provides a Weblogic appliance for ODA that provides a Java based installer, which
deploys automatically an high available and virtual Weblogic infrastructure including Oracle Traffic
Director (http://www.oracle.com/technetwork/middleware/weblogic-oda/downloads/index.html)
OAKCLI is a new Command Line Interface (CLI) dedicated to ODA that allows to:
- List the hardware components
- Validate & diagnose the hardware components
- Install and upgrade software
- Apply patches
- Create & Drop Databases
- Install & uninstall Oracle Homes
- Deploy & manage virtual machines
In addition the OAKCLI commands shall always be started as root user from the first node (node
0).Otherwise the ODA triggers an error message.
The CREATE command starts then a wizard that requires some basic inputs such has root, oracle and
sysasm users’ password but also the type of database and running node:
Indeed the database class only defines the dbca template to be used for the database creation. ODA
comes with 8 templates and none can be added.
Note that these settings, especially the number of databases and the IOPS, are mainly informational.
The next steps are then to customize the environment to YOUR needs…and that is there the deep dive
starts
The first topic is the NLS settings for the created database. These are defined by a configuration file
used by OAKCLI during the database creation.
If different NLS settings shall be used then a customized configuration file must be created before
running the database creation itself.
Once the database is created, some checks shall be done like the control files and redo logs settings
We can notice that if both are stored in the +REDO disk group (SSD Disks) neither the Control File nor
the Redo Logs are multiplexed. If we want to be fully protected against logical corruption, a good
practice is to add an additional control file and a redo member per redo log group. However to avoid any
performances bottleneck, a good practice is to add them in the +REDO disk group as the first copies.
Another point is the memory consumption of the databases. Since Oracle 11g the AMM principle
(Automatic Memory Management – memory_target) has been introduced. Unfortunately AMM is not
compatible with the huge pages mechanism. Therefore ODA is using ASSM (Automatic Shared memory
Management – sga_target & pga_aggregate_target) in combination with huge pages.
By default any ODA comes out of factory with a huge page settings of 50% of the physical memory of
the ODA server.
This means that if you want to use more memory for SGAs in huge pages, follow the MOS note
401749.1 to increase the huge page sizing.
- SYSTEM
- SYSAUX
- TEMP
- USERS
- UNDO
This makes sense as ODA has no way to anticipate the tablespaces, which will be required for the
application. Therefore these have to be created manually afterward. However the base tablespaces are
all configured in autoextend with no maximum size.
A good practice would be to reconfigure them by setting an appropriated maximum size (i.e.: about 1G
to 5G for SYSTEM and SYSAUX).
Once the databases customization is done, some high available principle can be introduced. To do so
ODA provides out of the box either RAC One Node or RAC integration. However if these are non-free
options for Enterprise Edition, some other solutions could be used:
While Data Guard would require an additional ODA, Failover cluster can be implemented with a single
command as root user:
Once done simply copy the database’s password file on the second node and then the instance can be
“switched” from one node to the other.
ODA is the first platform to introduce a Pay as you Grow licensing model. Basically ODA is licensed with
the standard Oracle processor licenses with all rules applying on Intel processors (i.e.: core factor).
However the huge difference with environments based on third parties’ hardware (HP, IBM, DELL…) is
that not all installed cores have to be licensed.
You can then, out of the 24 available, start with a minimum number of cores and increase along the time
according your needs. Of course you can increase…but not decrease.
For this principle a distinction has to be done between the Bare Metal architecture and the Virtualized
one where the number of minimum of core to be licensed isn’t the same:
- Bare Metal
o Minimum of 4 cores per node
o Can be increase by steps of 4 additional cores per node
- Virtualized
o Minimum of 2 cores per node
o Can be increase by steps of 2 additional cores per node
Conclusion
As stated in the introduction of this article, ODA is a pretty easy, reliable and available platform for
Oracle databases consolidation. It provides a straightforward and integrated way to create and manage
databases. However to get all benefits from such an environment it is necessary to take a look behind
the scene how it works and understand how to influence it.
There are much more interesting topics about ODA such as Data Guard implementation, virtualization,
performances or TCO. If you want to get more information about it, feel free to contact us.