A number of different techniques are currently referred to as virtualization. In the Common Data Model, two design patterns are used to represent these techniques:
- A design pattern that considers the host to be running inside a virtual machine. This denotes software based machine emulation for a virtual machine.
- A design pattern that considers the host to be running on a fractional allocation of the underlying physical hardware. This denotes fixed partitioning of a larger hardware resource.
BMC_VirtualSystemSettingData class (derived from BMC_Settings) is an important class in virtualization as it contains vital information related to virtualization. This class provides additional granularity about a virtual system’s settings through a set of virtualization-specific properties.
This section provides:
Virtual machine design pattern
This design pattern is appropriate where the supporting system is one of the following:
- A conventional operating system running a third party or internal virtual machine using virtualization technology
- A kernel micro-partitioning scheme such as Solaris Containers or IBM POWER Systems Workload Partitions (WPARs)
- Bare metal virtual machine-based hypervisors such as VMware ESX and Microsoft Hyper-V
The virtual machine model design pattern is not appropriate for Chassis Blade type systems and Hardware partitioning based hypervisors such as Solaris LDOM or IBM POWER Systems Dynamic Logical Partitions (DLPAR).
By design, a system running in a virtual machine should be indistinguishable from one running in a physical machine. For both this conceptual and practical reason, theBMC_ComputerSystem
class and attributes are used for both systems.
To distinguish the two types of machine, the
BMC_ComputerSystem.isVirtual attribute flag is set. The
isVirtual attribute values include:
1(Yes)if the system is known to be running in a virtual machine
0(No)if the system is known to be running in a physical machine
NULLif neither state is known with sufficient confidence
Virtual systems design pattern
While the design pattern accounts for systems to be explicitly marked as physical, most data sources do not set
0 (No). If you wish to set the
isVirtual attribute strictly correct, data from different sources often does not reconcile. In these circumstances, leave the value as
In the following virtual systems model design pattern:
- A shows a virtual system, thus denoted as
BMC_ComputerSystem.isVirtualis set to
- B shows system which could either be physical or virtual. In such case, the
BMC_ComputerSystem.ManufacturerNameattributes are set to
- C shows a physical system denoted as
BMC_ComputerSystem.isVirtualis set to
Virtual systems design model
To show the technology aspects of the virtualization, an instance of BMC_VirtualSystemEnabler is used. This is a single instance per supporting system. It is related to the supporting system by
Name=HOSTEDSYSTEMCOMPONENTS) where the supporting system is the source and the virtualization technology is the destination. It is related to the virtual systems by
Name=VIRTUALSYSTEMOS where the virtualization technology is the source and the virtual systems is the destination.
The following diagram shows a physical virtual machine system supporting two virtual systems. To show the dependency of the virtual systems on the supporting system, the
BMC_ComputerSystem virtual system instances are related to the supporting
BMC_ComputerSystem instance using
BMC_Dependency relationship with
- A shows the technology details such as version, type, and so on.
- B and C show two virtual machines, with the
BMC_ComputerSystem.isVirtualattribute set to
- D shows the physical server which retains the
NULLto ease reconciliation.
Partitioned host design model
Partitioned host design pattern is based on the division of a single server into several completely independent logical partitions, where each partition is an independent virtual server. This design pattern is appropriate for hardware partitioning-based hypervisors such as a Oracle Solaris LDOM or IBM POWER Systems Dynamic Logical Partitions (DLPAR).
An instance of
BMC_VirtualSystemEnabler is used to represent the virtualization technology software that enables virtualization. This is a single instance per supporting system. It is related to each of the partitioned system by
Name=HOSTEDSYSTEMCOMPONENTS where the partitioned system is the source and the virtualized technology (
BMC_VirtualSystemEnabler) is the destination. It is related to the virtual systems by
Name=VIRTUALSYSTEMOS where the virtualization technology (
BMC_VirtualSystemEnabler) is the source and the virtual systems is the destination.