SlideShare a Scribd company logo
Optimize Oracle RDBMS on VMwareGuy HarrisonDirector, R&D Melbournewww.guyharrison.netGuy.harrison@quest.com@guyharrison
Introductions
Optimize oracle on VMware (April 2011)
Optimize oracle on VMware (April 2011)
AgendaMotivations for VirtualizationVMware ESX resource management:MemoryCPUIOParavirtualization (OVM) vs Hardware Assisted Virtualization (ESX)
Motivations for Virtualization
Resistance to Database virtualization
DB virtualization is happening
Dba-village.comMar 2010May 2009
Oracle virtualization is lagging....
ESX Memory management
Managing ESX memoryESX can “overcommit” memorySum of all VM physical memory allocations > actual ESX physical memoryMemory is critical to Oracle server performanceSGA memory to reduce datafile IOPGA memory to reduce sort & hash IO ESX uses four methods to share memory:Memory Page Sharing“Ballooning”ESX swappingMemory compressionDBA needs to carefully configure to avoid disaster
Configuring VM memoryVMs Compete for memory in this rangeRelative Memory Priority for this VMMaximum memory for the VM (dynamic)Minimum Memory for this VM
Monitoring VM memory
ESX and VM memoryESX SwapESX swapVMESX virtual memory Effective VM physical memory ESX physical memoryVM virtual memory
ESX BallooningESX SwapESX swapVmmemctl“balloon”VMESX virtual memory Apparent VM physical memory Effective VM physical memory ESX physical memoryVM SwapVM Swap
ESX BallooningAs memory grows, ESX balloon driver (vmmemctl) forces VM to page out memory to VM swapfile
ESX BallooningInside the VM, paging to the swapfile is observed.The guest OS will determine which pages are paged outIf LOCK_SGA=TRUE, then the SGA should not be paged.
ESX SwappingESX SwapESX swapESX virtual memory VMEffective VM physical memory ESX physical memoryVM virtual memory
ESX SwappingESX SwapESX swapVMApparent VM physical memory Effective VM physical memory ESX virtual memory ESX physical memory
ESX SwappingESX swaps out VM memory to ESXswapfile
ESX SwappingWithin the VM, swapping cannot be detected.ESX will determine which memory pages go to diskParticularly occurs when VMware tools are not installedEven if LOCK_SGA=TRUE, SGA memory might be on disk
Avoiding Ballooning and swappingmemory reservations help avoid ballooning or ESX swapping
Other VMware memory management thoughtsMemory page sharing Multiple VMs can share an identical page of memory (Oracle code pages, etc) Modern chipsets reduce memory management overheadMultiple hardware page layersMemory compression (new in ESX 4.1)Pages are compressed and written to cache rather than to diskSwapping is more expensive than ballooningSlower to restore memoryOS and Oracle get no choice about what gets paged“Double paging” can occur – guest and ESX both page a block of memory
Ballooning vs. Swapping Swingbench workload running on Oracle database – from VMWare whitepaper: http://www.vmware.com/files/pdf/perf-vsphere-memory_management.pdf
VMware memory recommendations Paging or swapping of PGA or SGA is almost always a Very Bad Thingtm.Use memory reservations to avoid swappingInstall VMware tools to minimize swappingBallooning >> swapping (double paging, paging SGA, high swap-in latency, etc)Set Memory reservation = PGA+SGA+process OverheadBe realistic about memory requirements:In physical machines, we are used to using all available memoryIn VM, use only the memory you need, freeing up memory for other VMsOracle advisories (or Spotlight) can show you how much memory is neededReduce VM reservation and Oracle memory targets in tandem to release memory
Optimize oracle on VMware (April 2011)
ESX CPU management
VMware CPU management If more virtual CPUs than ESX CPUs, then VCPUs must sometimes wait.Time “stops” inside the VM when this occurs For multi-CPU VMs, it’s (nearly) all or nothing).  A VCPU can be in one of three states:Associated with an ESX CPU but idleAssociated with an ESX CPU and executing instructionsWaiting for ESX CPU to become available Shares and reservations determine which VM wins access to the ESX CPUs
Configuring VM CPU VMs compete for CPU in this rangeShares determine relative CPU allocated when competing
CPU utilization VM“CPU Ready” is the amount of time VM spends waiting on ESX for CPU Inside the VM, CPU stats can be misleading
SMP for vCPUsESX usually has to schedule all vCPUs for a VM simultaneouslyThe more CPUs the harder this isSome CPU is also needed for ESXMore is therefore not always better(Thanks to Carl Bradshaw for letting me reprint this diagram from his Oracle on VMWare whitepaper)
ESX CPU performance comparisonsVT enabledVs 2 core 1.8 GHz physical machine
Programmatic performance
Programmatic performance (2)
ESX CPU recommendations Use up to date chipsets and ESX softwareAllocate as few VCPUs as possible to each VMUse reservations and shares to prioritise access to ESX CPUPerformance of CPU critical workloads may be disappointing on older hardwareMonitor ESX Ready time to determine the “penalty” of competing with other virtual machines
ESX IO managment
Typical VMWare disk configuration
Disk Resource AllocationDisk shares can be used to prioritize IO bandwidth.However, ESX often does not know underlying storage architecture
Performant VMware disk configuration
Optimal configuration See “Oracle Database Scalability in VMware® ESX” at www.vmware.com/oracleEach virtual disk directly mapped via RDM to dedicated RAID 0 (+1) group 41 Spindles!
ESX IO recomendationsFollow normal best practice for physical disksAvoid sharing disk workloads Dedicated datastores using VMFS Align virtual disks to physical disks?Consider Raw Device Mapping (RDM)If you can’t optimize IO, avoid IO:Tune, tune, tune SQLPrefer indexed pathsMemory configurationDon’t forget about temp IO (sorts, hash joins)
Shameless plugs
Optimize oracle on VMware (April 2011)
Optimize oracle on VMware (April 2011)
Paravirtualizationvs Hardware Virtualization
Paravirtualizationvs “Hardware Virtualization”Virtualization is not emulation....Where-ever possible, Hypervisor runs native code from OS against underlying hardwareBecause a virtualized operating system is running outside privileged x86 “ring 0”,  direct calls to hardware need special handling.The three main approaches are:Full Virtualization (VMWare on older hardware)ParaVirtualization (Xen, Oracle VM)Hardware Assisted Virtualization (Intel VT, AMD-V)
Full virtualization Hardware calls from the Guest are handled by the hypervisor by:Catching the calls as they occur at run timeRe-writing the VM image at load time (binary translation)Requires no special hardwareSupports any guest OSRelatively Poor performanceUsed by ESX on older chip-setsGuest OSHypervisorRing 0Hardware
Hardware Assisted virtualizationIntel VT and AMD-V chips add a “root mode”.Guest can issue instructions from non-root Ring 0.CPU can divert these to hypervisorNo changes to OS requiredGood performanceRequires modern chipsetsRoot ModeNon-Root ModeGuestHypervisorRing 0Hardware
ParavirtualizationGuest operating system is rewritten to translate device calls to “hypercalls”
Hypercalls are handled by a special VM (dom0 in Xen/OVM)
Good performance but requires modified guest OS
Xen can use either paravirtualization or hardware assistGuest(domU)Ring 0Guest(dom0)HypervisorHardware
RAC and ESX
Paravirtualization, ESX and RACPrior to 11.2.0.2, Oracle relied on paravirtualized kernels to maintain time synchronization for RAC clusters.From 11.2.0.2 Oracle uses Cluster Time Synchronization Service (CTSS) to maintain clock sync, and this works on ESXTherefore,   Oracle supports RAC on Vmware ESX only from 11.2.0.2 onwardsSee Oracle MySupport Note 249212.1

More Related Content

PDF
Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...
PPTX
Optimizing Oracle databases with SSD - April 2014
PDF
Oracle smart flash cache
PPTX
Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...
PPTX
Making the most of ssd in oracle11g
PDF
The Unofficial VCAP / VCP VMware Study Guide
PDF
VMworld 2013: Enterprise Architecture Design for VMware Horizon View 5.2
PDF
Oracle Virtualization Best Practices
 
Accelerating virtualized Oracle 12c performance with vSphere 5.5 advanced fea...
Optimizing Oracle databases with SSD - April 2014
Oracle smart flash cache
Understanding Solid State Disk and the Oracle Database Flash Cache (older ver...
Making the most of ssd in oracle11g
The Unofficial VCAP / VCP VMware Study Guide
VMworld 2013: Enterprise Architecture Design for VMware Horizon View 5.2
Oracle Virtualization Best Practices
 

What's hot (20)

PPTX
ZFS appliance
PPTX
Oracle on vSphere best practices
PPTX
Integrating your network with windows azure
PDF
VMworld 2013: Architecting Oracle Databases on vSphere 5 with NetApp Storage
PDF
Unitrends Overview 2012
PDF
SOUG_SDM_OracleDB_V3
PPTX
UniPlex vScaleDB pat. pending
PDF
Oracle Exadata 1Z0-485 Certification
PDF
Xen server storage Overview
PPTX
Sun Oracle Exadata Technical Overview V1
PDF
SSD based storage tuning for databases
PPT
xen server 5.6, provisioning server 5.6 — технические детали и планы на будущее
ODP
Exadata
PPTX
All about Azure workshop deck
PPT
Virtualization_TechTalk
PDF
Pod density comparison: VMware vSphere with Tanzu vs. a bare-metal approach ...
PDF
Citrix PVS Advanced memory and storage considerations for provisioning services
PDF
2018 Infortrend All Flash Arrays Introduction (GS3025A)
PDF
Driving XenApp and XenDesktop Performance with Atlantis ILIO
ZFS appliance
Oracle on vSphere best practices
Integrating your network with windows azure
VMworld 2013: Architecting Oracle Databases on vSphere 5 with NetApp Storage
Unitrends Overview 2012
SOUG_SDM_OracleDB_V3
UniPlex vScaleDB pat. pending
Oracle Exadata 1Z0-485 Certification
Xen server storage Overview
Sun Oracle Exadata Technical Overview V1
SSD based storage tuning for databases
xen server 5.6, provisioning server 5.6 — технические детали и планы на будущее
Exadata
All about Azure workshop deck
Virtualization_TechTalk
Pod density comparison: VMware vSphere with Tanzu vs. a bare-metal approach ...
Citrix PVS Advanced memory and storage considerations for provisioning services
2018 Infortrend All Flash Arrays Introduction (GS3025A)
Driving XenApp and XenDesktop Performance with Atlantis ILIO
Ad

Viewers also liked (20)

PDF
Tachyon-2014-11-21-amp-camp5
PDF
Open Stack Cheat Sheet V1
PDF
The Little Warehouse That Couldn't Or: How We Learned to Stop Worrying and Mo...
PDF
Linux Filesystems, RAID, and more
PDF
Lessons Learned with Spark at the US Patent & Trademark Office-(Christopher B...
PDF
The Hot Rod Protocol in Infinispan
PDF
Accelerating Cassandra Workloads on Ceph with All-Flash PCIE SSDS
PDF
Advanced Data Retrieval and Analytics with Apache Spark and Openstack Swift
PDF
Scaling up genomic analysis with ADAM
PPTX
ELC-E 2010: The Right Approach to Minimal Boot Times
PDF
Velox: Models in Action
ODP
Naïveté vs. Experience
PDF
SparkR: Enabling Interactive Data Science at Scale
PDF
SampleClean: Bringing Data Cleaning into the BDAS Stack
PDF
Lab 5: Interconnecting a Datacenter using Mininet
PDF
OpenStack Cheat Sheet V2
PDF
A Curious Course on Coroutines and Concurrency
PDF
Spark on Mesos-A Deep Dive-(Dean Wampler and Tim Chen, Typesafe and Mesosphere)
PDF
Best Practices for Virtualizing Apache Hadoop
PDF
In Search of the Perfect Global Interpreter Lock
Tachyon-2014-11-21-amp-camp5
Open Stack Cheat Sheet V1
The Little Warehouse That Couldn't Or: How We Learned to Stop Worrying and Mo...
Linux Filesystems, RAID, and more
Lessons Learned with Spark at the US Patent & Trademark Office-(Christopher B...
The Hot Rod Protocol in Infinispan
Accelerating Cassandra Workloads on Ceph with All-Flash PCIE SSDS
Advanced Data Retrieval and Analytics with Apache Spark and Openstack Swift
Scaling up genomic analysis with ADAM
ELC-E 2010: The Right Approach to Minimal Boot Times
Velox: Models in Action
Naïveté vs. Experience
SparkR: Enabling Interactive Data Science at Scale
SampleClean: Bringing Data Cleaning into the BDAS Stack
Lab 5: Interconnecting a Datacenter using Mininet
OpenStack Cheat Sheet V2
A Curious Course on Coroutines and Concurrency
Spark on Mesos-A Deep Dive-(Dean Wampler and Tim Chen, Typesafe and Mesosphere)
Best Practices for Virtualizing Apache Hadoop
In Search of the Perfect Global Interpreter Lock
Ad

Similar to Optimize oracle on VMware (April 2011) (20)

PPTX
Optimize Oracle On VMware (Sep 2011)
PDF
The have no fear guide to virtualizing databases
PPT
Memory virtualisation
PPTX
PlovDev 2016: Application Performance in Virtualized Environments by Todor T...
PDF
Presentation v mware performance overview
PDF
vSphere APIs for performance monitoring
PPT
Introduction to Virtualization
PDF
Perf best practices_v_sphere5.0
PPTX
General-and-complete_Training_Slide_v0.9-TGT.pptx
PPT
Server Virtualization Seminar Presentation
PPT
Esx short presentation
PPTX
VMworld 2010 - Building an Affordable vSphere Environment for a Lab or Small ...
PPTX
Vmwareperformancetroubleshooting 100224104321-phpapp02
PPTX
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
PDF
VMworld Europe 2014: Virtualizing Databases Doing IT Right – The Sequel
PPTX
VMware Performance Troubleshooting
PPTX
VMworld 2015: Extreme Performance Series - vSphere Compute & Memory
PDF
vmware interview Q and a
DOCX
Vmware inter
PPT
Virtualization
Optimize Oracle On VMware (Sep 2011)
The have no fear guide to virtualizing databases
Memory virtualisation
PlovDev 2016: Application Performance in Virtualized Environments by Todor T...
Presentation v mware performance overview
vSphere APIs for performance monitoring
Introduction to Virtualization
Perf best practices_v_sphere5.0
General-and-complete_Training_Slide_v0.9-TGT.pptx
Server Virtualization Seminar Presentation
Esx short presentation
VMworld 2010 - Building an Affordable vSphere Environment for a Lab or Small ...
Vmwareperformancetroubleshooting 100224104321-phpapp02
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
VMworld Europe 2014: Virtualizing Databases Doing IT Right – The Sequel
VMware Performance Troubleshooting
VMworld 2015: Extreme Performance Series - vSphere Compute & Memory
vmware interview Q and a
Vmware inter
Virtualization

More from Guy Harrison (18)

PPTX
Five database trends - updated April 2015
PPTX
From oracle to hadoop with Sqoop and other tools
PPTX
Thriving and surviving the Big Data revolution
PPTX
Mega trends in information management
PPTX
Big datacamp2013 share
PPTX
Hadoop, Oracle and the big data revolution collaborate 2013
PPTX
Hadoop, oracle and the industrial revolution of data
PPTX
Oracle sql high performance tuning
PPTX
Hadoop and rdbms with sqoop
PPTX
Next generation databases july2010
PPTX
High Performance Plsql
PPTX
Performance By Design
PPTX
Thanks for the Memory
PPTX
Top 10 tips for Oracle performance
PPTX
How I learned to stop worrying and love Oracle
PPTX
Performance By Design
PPTX
High Performance Plsql
PPTX
Top 10 tips for Oracle performance (Updated April 2015)
Five database trends - updated April 2015
From oracle to hadoop with Sqoop and other tools
Thriving and surviving the Big Data revolution
Mega trends in information management
Big datacamp2013 share
Hadoop, Oracle and the big data revolution collaborate 2013
Hadoop, oracle and the industrial revolution of data
Oracle sql high performance tuning
Hadoop and rdbms with sqoop
Next generation databases july2010
High Performance Plsql
Performance By Design
Thanks for the Memory
Top 10 tips for Oracle performance
How I learned to stop worrying and love Oracle
Performance By Design
High Performance Plsql
Top 10 tips for Oracle performance (Updated April 2015)

Recently uploaded (20)

PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
MYSQL Presentation for SQL database connectivity
PDF
KodekX | Application Modernization Development
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
Electronic commerce courselecture one. Pdf
PDF
Encapsulation theory and applications.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
cuic standard and advanced reporting.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Approach and Philosophy of On baking technology
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Building Integrated photovoltaic BIPV_UPV.pdf
Encapsulation_ Review paper, used for researhc scholars
MYSQL Presentation for SQL database connectivity
KodekX | Application Modernization Development
MIND Revenue Release Quarter 2 2025 Press Release
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Machine learning based COVID-19 study performance prediction
Electronic commerce courselecture one. Pdf
Encapsulation theory and applications.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Digital-Transformation-Roadmap-for-Companies.pptx
cuic standard and advanced reporting.pdf
Review of recent advances in non-invasive hemoglobin estimation
Approach and Philosophy of On baking technology
Network Security Unit 5.pdf for BCA BBA.
sap open course for s4hana steps from ECC to s4
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Diabetes mellitus diagnosis method based random forest with bat algorithm
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton

Optimize oracle on VMware (April 2011)

  • 1. Optimize Oracle RDBMS on VMwareGuy HarrisonDirector, R&D Melbournewww.guyharrison.netGuy.harrison@quest.com@guyharrison
  • 5. AgendaMotivations for VirtualizationVMware ESX resource management:MemoryCPUIOParavirtualization (OVM) vs Hardware Assisted Virtualization (ESX)
  • 7. Resistance to Database virtualization
  • 12. Managing ESX memoryESX can “overcommit” memorySum of all VM physical memory allocations > actual ESX physical memoryMemory is critical to Oracle server performanceSGA memory to reduce datafile IOPGA memory to reduce sort & hash IO ESX uses four methods to share memory:Memory Page Sharing“Ballooning”ESX swappingMemory compressionDBA needs to carefully configure to avoid disaster
  • 13. Configuring VM memoryVMs Compete for memory in this rangeRelative Memory Priority for this VMMaximum memory for the VM (dynamic)Minimum Memory for this VM
  • 15. ESX and VM memoryESX SwapESX swapVMESX virtual memory Effective VM physical memory ESX physical memoryVM virtual memory
  • 16. ESX BallooningESX SwapESX swapVmmemctl“balloon”VMESX virtual memory Apparent VM physical memory Effective VM physical memory ESX physical memoryVM SwapVM Swap
  • 17. ESX BallooningAs memory grows, ESX balloon driver (vmmemctl) forces VM to page out memory to VM swapfile
  • 18. ESX BallooningInside the VM, paging to the swapfile is observed.The guest OS will determine which pages are paged outIf LOCK_SGA=TRUE, then the SGA should not be paged.
  • 19. ESX SwappingESX SwapESX swapESX virtual memory VMEffective VM physical memory ESX physical memoryVM virtual memory
  • 20. ESX SwappingESX SwapESX swapVMApparent VM physical memory Effective VM physical memory ESX virtual memory ESX physical memory
  • 21. ESX SwappingESX swaps out VM memory to ESXswapfile
  • 22. ESX SwappingWithin the VM, swapping cannot be detected.ESX will determine which memory pages go to diskParticularly occurs when VMware tools are not installedEven if LOCK_SGA=TRUE, SGA memory might be on disk
  • 23. Avoiding Ballooning and swappingmemory reservations help avoid ballooning or ESX swapping
  • 24. Other VMware memory management thoughtsMemory page sharing Multiple VMs can share an identical page of memory (Oracle code pages, etc) Modern chipsets reduce memory management overheadMultiple hardware page layersMemory compression (new in ESX 4.1)Pages are compressed and written to cache rather than to diskSwapping is more expensive than ballooningSlower to restore memoryOS and Oracle get no choice about what gets paged“Double paging” can occur – guest and ESX both page a block of memory
  • 25. Ballooning vs. Swapping Swingbench workload running on Oracle database – from VMWare whitepaper: http://www.vmware.com/files/pdf/perf-vsphere-memory_management.pdf
  • 26. VMware memory recommendations Paging or swapping of PGA or SGA is almost always a Very Bad Thingtm.Use memory reservations to avoid swappingInstall VMware tools to minimize swappingBallooning >> swapping (double paging, paging SGA, high swap-in latency, etc)Set Memory reservation = PGA+SGA+process OverheadBe realistic about memory requirements:In physical machines, we are used to using all available memoryIn VM, use only the memory you need, freeing up memory for other VMsOracle advisories (or Spotlight) can show you how much memory is neededReduce VM reservation and Oracle memory targets in tandem to release memory
  • 29. VMware CPU management If more virtual CPUs than ESX CPUs, then VCPUs must sometimes wait.Time “stops” inside the VM when this occurs For multi-CPU VMs, it’s (nearly) all or nothing). A VCPU can be in one of three states:Associated with an ESX CPU but idleAssociated with an ESX CPU and executing instructionsWaiting for ESX CPU to become available Shares and reservations determine which VM wins access to the ESX CPUs
  • 30. Configuring VM CPU VMs compete for CPU in this rangeShares determine relative CPU allocated when competing
  • 31. CPU utilization VM“CPU Ready” is the amount of time VM spends waiting on ESX for CPU Inside the VM, CPU stats can be misleading
  • 32. SMP for vCPUsESX usually has to schedule all vCPUs for a VM simultaneouslyThe more CPUs the harder this isSome CPU is also needed for ESXMore is therefore not always better(Thanks to Carl Bradshaw for letting me reprint this diagram from his Oracle on VMWare whitepaper)
  • 33. ESX CPU performance comparisonsVT enabledVs 2 core 1.8 GHz physical machine
  • 36. ESX CPU recommendations Use up to date chipsets and ESX softwareAllocate as few VCPUs as possible to each VMUse reservations and shares to prioritise access to ESX CPUPerformance of CPU critical workloads may be disappointing on older hardwareMonitor ESX Ready time to determine the “penalty” of competing with other virtual machines
  • 38. Typical VMWare disk configuration
  • 39. Disk Resource AllocationDisk shares can be used to prioritize IO bandwidth.However, ESX often does not know underlying storage architecture
  • 40. Performant VMware disk configuration
  • 41. Optimal configuration See “Oracle Database Scalability in VMware® ESX” at www.vmware.com/oracleEach virtual disk directly mapped via RDM to dedicated RAID 0 (+1) group 41 Spindles!
  • 42. ESX IO recomendationsFollow normal best practice for physical disksAvoid sharing disk workloads Dedicated datastores using VMFS Align virtual disks to physical disks?Consider Raw Device Mapping (RDM)If you can’t optimize IO, avoid IO:Tune, tune, tune SQLPrefer indexed pathsMemory configurationDon’t forget about temp IO (sorts, hash joins)
  • 47. Paravirtualizationvs “Hardware Virtualization”Virtualization is not emulation....Where-ever possible, Hypervisor runs native code from OS against underlying hardwareBecause a virtualized operating system is running outside privileged x86 “ring 0”, direct calls to hardware need special handling.The three main approaches are:Full Virtualization (VMWare on older hardware)ParaVirtualization (Xen, Oracle VM)Hardware Assisted Virtualization (Intel VT, AMD-V)
  • 48. Full virtualization Hardware calls from the Guest are handled by the hypervisor by:Catching the calls as they occur at run timeRe-writing the VM image at load time (binary translation)Requires no special hardwareSupports any guest OSRelatively Poor performanceUsed by ESX on older chip-setsGuest OSHypervisorRing 0Hardware
  • 49. Hardware Assisted virtualizationIntel VT and AMD-V chips add a “root mode”.Guest can issue instructions from non-root Ring 0.CPU can divert these to hypervisorNo changes to OS requiredGood performanceRequires modern chipsetsRoot ModeNon-Root ModeGuestHypervisorRing 0Hardware
  • 50. ParavirtualizationGuest operating system is rewritten to translate device calls to “hypercalls”
  • 51. Hypercalls are handled by a special VM (dom0 in Xen/OVM)
  • 52. Good performance but requires modified guest OS
  • 53. Xen can use either paravirtualization or hardware assistGuest(domU)Ring 0Guest(dom0)HypervisorHardware
  • 55. Paravirtualization, ESX and RACPrior to 11.2.0.2, Oracle relied on paravirtualized kernels to maintain time synchronization for RAC clusters.From 11.2.0.2 Oracle uses Cluster Time Synchronization Service (CTSS) to maintain clock sync, and this works on ESXTherefore, Oracle supports RAC on Vmware ESX only from 11.2.0.2 onwardsSee Oracle MySupport Note 249212.1
  • 56. ReferencesLatest version of this presentation:http://www.slideshare.net/gharriso/optimize-oracle-on-vmware-5271530My blog (www.guyharrison.net ):http://guyharrison.squarespace.com/blog/2010/2/22/memory-management-for-oracle-databases-on-vmware-esx.htmlhttp://guyharrison.squarespace.com/blog/2010/4/9/esx-cpu-optimization-for-oracle-databases.htmlhttp://guyharrison.squarespace.com/blog/2010/7/12/stolen-cpu-on-xen-based-virtual-machines.htmlhttp://www.vmware.com/files/pdf/perf-vsphere-memory_management.pdfhttp://www.vmware.com/files/pdf/Oracle_Databases_on_vSphere_Deployment_Tips.pdf
  • 57.  

Editor's Notes

  • #3: Apologies, I’m a database type.....Quest is best known for toad, but we also have enterprise monitoring across all levels of the stackIn Melbourne, SQL Navigator + the spotlights. It’s not a complete co-incidence about the star trek theme.
  • #4: Had a lot of fun with toad over the years
  • #5: Insanely popular – literally millions of users
  • #14: As well as total memory to the VM, you can:Adjust memory “shares”, which determine priority for this machine when in contention with other machinesReservation: guaranteed (sort of) amount of memory to allocate Limit, if you want to prevent VM from getting all it’s memory Memory reservationsMemory SharesIdle memory taxMemory sharingThe Balloon driver (vmmemctl) ESX swapping