Oracle DB – vSphere Best Practices

OracleThese tables contains the most important best practices to deploy or optimize Oracle Databases on VMware vSphere:

 

Host ESXi

Best Practice

Justification

Notes/References

H01

Create a computing environment optimized for vSphere ESXi host BIOS settings can be specifically adjusted to maximize compute resources to Oracle databases. This applies to each dimension of performance, compute, memory, networking and storage Check BIOS Settings table for detailed parameters

H02

Create templates or golden images of configured and optimized operating systems using vSphere cloning technologies After the operating system has been prepared with the appropriate patches and kernel settings, Oracle can be installed in a VM the same way it is installed on a physical system. This accelerates the provisioning process of a new database servers Use VMware OS Optimization Tool to create the templates/golden images, check the post Free-Cool Recommended vTools
Also, use VMware vSphere Customization Specification to deploy each server

H03

Upgrade to the latest version of ESXi and vSphere VMware and database administrators can realize a significant performance boost after upgrading to the latest vSphere release from prior versions. This applies to all dimensions of performance

H04

Allow vSphere to choose the best VM monitor (VMM) based on the CPU and guest OS combination Confirm that the VM setting has Automatic selected for the CPU/MMU Virtualization option MMU refers to Memory Management Unit, wich is an attribute of either or both the OS and the physical processor

H05

Verify that all hardware in the system is on the hardware compatibility list for the specific version of VMware software you will be running Verify that the hardware meets the minimum configuration supported by the VMware software installed VMware Compatibility Guide
www.vmware.com/go/hcl

BIOS Settings

Parameter

Description

Best Practice

B01

Virtualization Technology Necessary to run 64-bit guest operating systems Yes

B02

VT-x, AMD-V, EPT, RVI, VT-d, AMD-Vi Hardware-based virtualization support Yes

B03

Node Interleaving Disables NUMA benefits if disabled No

B04

Turbo Mode Balanced workload over unused cores Yes

B05

Hyperthreading For use with some modern Intel processors. Hyperthreading is always recommended with Intel’s newer Core i7 processors Yes

B06

Power Saving Disable if performance is more important than saving power No

B07

Power Management Allow ESXi to control CPU power-saving features. OS Controlled Mode

B08

Power Management Policy Prefer Performance over Power savings High Performance

B09

C-States Disable Processor C-states for performance No

B10

C1E Halt State Disable for performance No

B11

Virus Warning Disables warning messages when writing to the master boot record No

B12

Wake On LAN Required for VMware vSphere Distributed Power Management feature Yes

B13

Execute Disable Required for VMware vSphere vMotion and VMware vSphere Distributed Resource Scheduler (DRS) features Yes

B14

Video BIOS Cacheable Not necessary for database VM No

B15

Video BIOS Shadowable Not necessary for database VM No

B16

Video RAM Cacheable Not necessary for database VM No

B17

On-Board Audio Not necessary for database VM No

B18

On-Board Modem Not necessary for database VM No

B19

On-Board Firewire Not necessary for database VM No

B20

On-Board Serial Ports Not necessary for database VM No

B21

On-Board Parallel Ports Not necessary for database VM No

B22

On-Board Game Port Not necessary for database VM No

Memory

Best Practice

Justification

Notes/References

M01

Set memory reservations equal or greater than the size of the Oracle SGA, the Oracle PGA , the Oracle Background processes stack space and OS Used Memory The memory reservation should be large enough to avoid swapping between ESXi and the host or the guest OS swapping to its page file. Oracle databases can be memory intensive Memory Reservation = SGA (SGA_MAX_SIZE) + 2XPGA_Aggregate_Target + 1.5Mb x (each background and foreground process) + (OS + Oracle_Home) executables + 15%

M02

Use large memory pages Large page support is enabled by default in ESX 3.5 and later, and is supported from Oracle 9i R2 for Linux operating systems and 10g R2 for Windows. Enable large pages in the guest OS to improve the performance of Oracle databases on vSphere

M03

Do not turn off ESXi memory management mechanisms unless directed by VMware support ESXi uses various memory management mechanisms to reclaim VM memory when under memory duress. Disabling it will lead to performance degradation and a possible crash

vCPU

Best Practice

Justification

Notes/References

C01

Use as few vCPUs as possible, but as meny as demand requires If monitoring of the actual workload shows that the Oracle database is not benefitting from the increased virtual CPUs, the excess vCPUs impose scheduling constraints and can degrade overall performance of the VM

C02

Enable hyperthreading whenever applicable HT can increase overall CPU performance by as much as 30%

C03

Keep default 1 core per socket for vNuma to match physical NUMA topology and try to align VMs with physical NUMA boundaries If vNUMA is different from the actual physical NUMA topology, it might result in NUMA imbalance and can degrade overall performance of the VM

Storage

Best Practice

Justification

Notes/References

S01

For IP-based storage such iSCSI, NFS or FCoE, enable jumbo frames when 10Gb network cards are being used Jumbo frames should be enable ethernet frames to have a larger payload, allowing improved performance Ensure that each hop in the network chain has jumbo frames enabled as well as 10Gb bandwidth

S02

Create dedicated datastores to service database workloads The creation of dedicated datastores for I/O-intensive databases is analogous to provisioning dedicated LUNs in the physical world. This is a typical design for a mission-critical enterprise workload This advise may not be necessary or possible in all modern storage arrays, but it is still a proper best practices approach to database storage design

S03

Use VMFS for single-instance Oracle database deployments To balance performance and manageability in a virtual environment, deploy Oracle using VMFS

S04

Align VMFS properly Like other disk-based file systems, VMFS suffers a penalty when the partition is unaligned. Use VMware vCenter to create VMFS partitions because it automatically aligns the partitions

S05

Use Oracle Automatic Storage Management (ASM) Oracle ASM provides an integrated disk container system and volume management capabilities for managing Oracle database files. ASM simplifies database file creation while delivering near-raw device file system performance

S06

Use your storage vendor’s best practices documentation when laying out the Oracle database Oracle ASM cannot determine the optimal data placement or LUN selection with respect to the underlying storage infrastructure. For that reason, Oracle ASM is not a substitute for close communication between the storage administrator and the DBA

S07

Avoid silos when designing the storage architecture At a minimum, designing the optimized architecture should involve the DBA, storage administrator, network administrator, VMware administrator, and application owner

S08

Use paravirtualized SCSI adapters for Oracle data files with demanding workloads The combination of the new paravirtualized SCSI driver (PVSCSI) and additional ESXi kernel-level storage stack optimizations dramatically improves storage I/O performance When minimizing latency is the main objetive, the use of th PVSCSI driver for the controller of the VMDKs containing the Oracle redo logs may not be optimal. The LSI SAS driver might be consider because the PVSCI driver despite reducing overall overhead may introduce minimal amount of extra latency

S09

Separate I/O streams according to Oracle database storage layout Use a single controller for OS and swap, one controller for redo log files and one or more controllers for DB data files (depending on the amount and size of DB files)

S10

Format redo logs and DB disk as Thick Eager Zeroed For best performance, format VMDK as eager zeroed thick for single-nodes

Network

Best Practice

Justification

Notes/References

N01

Use the VMXNET family of paravirtualized network adapters The paravirtualized network adapters in the VMXNET family implement an optimized network interface that passes network traffic between the VMs and the physical NICs with minimal overhead

N02

Separate infrastructure traffic from VM traffic for security and isolation VMs should not see infrastructure traffic (security violation) and should not be impacted by infrastructure traffic bursts (for example, vMotion operations) Also, separate RAC interconnect traffic

N03

Use NIC teaming for availability and load balancing NIC teams can share the load of traffic among some or all of its members, or provide passive failover in the event of a hardware failure or a network outage

N04

Take advantage of Network I/O Control to converge network and storage traffic onto 10 GbE This can reduce cabling requirements, simplify management, and reduce cost

N05

Use jumbro frames whenever employing 10Gb network cards Jumbo frames will take advantage of the capacity of the 10Gb cards. This can reduce cache fusion traffic thereby enhancing performance in Oracle RAC interconnect

REFERENCES

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a website or blog at WordPress.com

Up ↑

%d bloggers like this: