Sep 12, 2012 - Oracle's database product is offered with two types of licenses: Named. Solutions such as AIX Workload Manager, Microsoft Hyper-V or VMware. If the virtual machines are soft partitions (e.g. VMware ESX), the number of. Microsoft Hyper-V Server 2012 and 2012. Oracle RAC 12cR2 (12.2.0.1 and above). Please reference the Oracle VM Server for SPARC 2.2 Live Migration Technical.
-->Applies To: Windows 10, Windows Server 2016, Microsoft Hyper-V Server 2016, Windows Server 2019, Microsoft Hyper-V Server 2019
Note
If you plan to ever upload a Windows virtual machines (VM) from on-premises to Microsoft Azure, generation 1 and generation 2 VMs in the VHD file format and have a fixed sized disk are supported. See Generation 2 VMs on Azure to learn more about generation 2 capabilities supported on Azure. For more information on uploading a Windows VHD or VHDX, see Prepare a Windows VHD or VHDX to upload to Azure.
Your choice to create a generation 1 or generation 2 virtual machine depends on which guest operating system you want to install and the boot method you want to use to deploy the virtual machine. We recommend that you create a generation 2 virtual machine to take advantage of features like Secure Boot unless one of the following statements is true:
- The VHD you want to boot from is not UEFI-compatible.
- Generation 2 doesn't support the operating system you want to run on the virtual machine.
- Generation 2 doesn't support the boot method you want to use.
For more information about what features are available with generation 2 virtual machines, see Hyper-V feature compatibility by generation and guest.
![Oracle Oracle](http://slideplayer.com/6671389/23/images/23/VM+Management+Connect+via+Hyper-V+VM+Connection%2C+Microsoft+RDP%2C+FreeRDP.+All+VM+Guest+OS.+CentOS..jpg)
You can't change a virtual machine's generation after you've created it. So, we recommend that you review the considerations here, as well as choose the operating system, boot method, and features you want to use before you choose a generation.
Which guest operating systems are supported?
Generation 1 virtual machines support most guest operating systems. Generation 2 virtual machines support most 64-bit versions of Windows and more current versions of Linux and FreeBSD operating systems. Use the following sections to see which generation of virtual machine supports the guest operating system you want to install.
Windows guest operating system support
The following table shows which 64-bit versions of Windows you can use as a guest operating system for generation 1 and generation 2 virtual machines.
64-bit versions of Windows | Generation 1 | Generation 2 |
---|---|---|
Windows Server 2019 | ✔ | ✔ |
Windows Server 2016 | ✔ | ✔ |
Windows Server 2012 R2 | ✔ | ✔ |
Windows Server 2012 | ✔ | ✔ |
Windows Server 2008 R2 | ✔ | ✖ |
Windows Server 2008 | ✔ | ✖ |
Windows 10 | ✔ | ✔ |
Windows 8.1 | ✔ | ✔ |
Windows 8 | ✔ | ✔ |
Windows 7 | ✔ | ✖ |
The following table shows which 32-bit versions of Windows you can use as a guest operating system for generation 1 and generation 2 virtual machines.
32-bit versions of Windows | Generation 1 | Generation 2 |
---|---|---|
Windows 10 | ✔ | ✖ |
Windows 8.1 | ✔ | ✖ |
Windows 8 | ✔ | ✖ |
Windows 7 | ✔ | ✖ |
CentOS and Red Hat Enterprise Linux guest operating system support
The following table shows which versions of Red Hat Enterprise Linux (RHEL) and CentOS you can use as a guest operating system for generation 1 and generation 2 virtual machines.
Operating system versions | Generation 1 | Generation 2 |
---|---|---|
RHEL/CentOS 7.x series | ✔ | ✔ |
RHEL/CentOS 6.x series | ✔ | ✔ Note: Only supported on Windows Server 2016 and above. |
RHEL/CentOS 5.x series | ✔ | ✖ |
For more information, see CentOS and Red Hat Enterprise Linux virtual machines on Hyper-V.
Debian guest operating system support
The following table shows which versions of Debian you can use as a guest operating system for generation 1 and generation 2 virtual machines.
Operating system versions | Generation 1 | Generation 2 |
---|---|---|
Debian 7.x series | ✔ | ✖ |
Debian 8.x series | ✔ | ✔ |
For more information, see Debian virtual machines on Hyper-V.
FreeBSD guest operating system support
The following table shows which versions of FreeBSD you can use as a guest operating system for generation 1 and generation 2 virtual machines.
Operating system versions | Generation 1 | Generation 2 |
---|---|---|
FreeBSD 10 and 10.1 | ✔ | ✖ |
FreeBSD 9.1 and 9.3 | ✔ | ✖ |
FreeBSD 8.4 | ✔ | ✖ |
For more information, see FreeBSD virtual machines on Hyper-V.
Oracle Linux guest operating system support
The following table shows which versions of Red Hat Compatible Kernel Series you can use as a guest operating system for generation 1 and generation 2 virtual machines.
Red Hat Compatible Kernel Series versions | Generation 1 | Generation 2 |
---|---|---|
Oracle Linux 7.x series | ✔ | ✔ |
Oracle Linux 6.x series | ✔ | ✖ |
The following table shows which versions of Unbreakable Enterprise Kernel you can use as a guest operating system for generation 1 and generation 2 virtual machines.
Unbreakable Enterprise Kernel (UEK) versions | Generation 1 | Generation 2 |
---|---|---|
Oracle Linux UEK R3 QU3 | ✔ | ✖ |
Oracle Linux UEK R3 QU2 | ✔ | ✖ |
Oracle Linux UEK R3 QU1 | ✔ | ✖ |
For more information, see Oracle Linux virtual machines on Hyper-V.
SUSE guest operating system support
The following table shows which versions of SUSE you can use as a guest operating system for generation 1 and generation 2 virtual machines.
Operating system versions | Generation 1 | Generation 2 |
---|---|---|
SUSE Linux Enterprise Server 12 series | ✔ | ✔ |
SUSE Linux Enterprise Server 11 series | ✔ | ✖ |
Open SUSE 12.3 | ✔ | ✖ |
For more information, see SUSE virtual machines on Hyper-V.
Ubuntu guest operating system support
The following table shows which versions of Ubuntu you can use as a guest operating system for generation 1 and generation 2 virtual machines.
Operating system versions | Generation 1 | Generation 2 |
---|---|---|
Ubuntu 14.04 and later versions | ✔ | ✔ |
Ubuntu 12.04 | ✔ | ✖ |
For more information, see Ubuntu virtual machines on Hyper-V.
How can I boot the virtual machine?
The following table shows which boot methods are supported by generation 1 and generation 2 virtual machines.
Boot method | Generation 1 | Generation 2 |
---|---|---|
PXE boot by using a standard network adapter | ✖ | ✔ |
PXE boot by using a legacy network adapter | ✔ | ✖ |
Boot from a SCSI virtual hard disk (.VHDX) or virtual DVD (.ISO) | ✖ | ✔ |
Boot from IDE Controller virtual hard disk (.VHD) or virtual DVD (.ISO) | ✔ | ✖ |
Boot from floppy (.VFD) | ✔ | ✖ |
What are the advantages of using generation 2 virtual machines?
Here are some of the advantages you get when you use a generation 2 virtual machine:
- Secure BootThis is a feature that verifies the boot loader is signed by a trusted authority in the UEFI database to help prevent unauthorized firmware, operating systems, or UEFI drivers from running at boot time. Secure Boot is enabled by default for generation 2 virtual machines. If you need to run a guest operating system that's not supported by Secure Boot, you can disable it after the virtual machine's created. For more information, see Secure Boot.To Secure Boot generation 2 Linux virtual machines, you need to choose the UEFI CA Secure Boot template when you create the virtual machine.
- Larger boot volumeThe maximum boot volume for generation 2 virtual machines is 64 TB. This is the maximum disk size supported by a .VHDX. For generation 1 virtual machines, the maximum boot volume is 2TB for a .VHDX and 2040GB for a .VHD. For more information, see Hyper-V Virtual Hard Disk Format Overview.You may also see a slight improvement in virtual machine boot and installation times with generation 2 virtual machines.
What's the difference in device support?
The following table compares the devices available between generation 1 and generation 2 virtual machines.
Generation 1 Device | Generation 2 Replacement | Generation 2 Enhancements |
---|---|---|
IDE controller | Virtual SCSI controller | Boot from .vhdx (64 TB maximum size, and online resize capability) |
IDE CD-ROM | Virtual SCSI CD-ROM | Support for up to 64 SCSI DVD devices per SCSI controller. |
Legacy BIOS | UEFI firmware | Secure Boot |
Legacy network adapter | Synthetic network adapter | Network boot with IPv4 and IPv6 |
Floppy controller and DMA controller | No floppy controller support | N/A |
Universal asynchronous receiver/transmitter (UART) for COM ports | Optional UART for debugging | Faster and more reliable |
i8042 keyboard controller | Software-based input | Uses fewer resources because there is no emulation. Also reduces the attack surface from the guest operating system. |
PS/2 keyboard | Software-based keyboard | Uses fewer resources because there is no emulation. Also reduces the attack surface from the guest operating system. |
PS/2 mouse | Software-based mouse | Uses fewer resources because there is no emulation. Also reduces the attack surface from the guest operating system. |
S3 video | Software-based video | Uses fewer resources because there is no emulation. Also reduces the attack surface from the guest operating system. |
PCI bus | No longer required | N/A |
Programmable interrupt controller (PIC) | No longer required | N/A |
Programmable interval timer (PIT) | No longer required | N/A |
Super I/O device | No longer required | N/A |
More about generation 2 virtual machines
Here are some additional tips about using generation 2 virtual machines.
Attach or add a DVD drive
- You can't attach a physical CD or DVD drive to a generation 2 virtual machine. The virtual DVD drive in generation 2 virtual machines only supports ISO image files. To create an ISO image file of a Windows environment, you can use the Oscdimg command line tool. For more information, see Oscdimg Command-Line Options.
- When you create a new virtual machine with the New-VM Windows PowerShell cmdlet, the generation 2 virtual machine doesn't have a DVD drive. You can add a DVD drive while the virtual machine is running.
Use UEFI firmware
- Secure Boot or UEFI firmware isn't required on the physical Hyper-V host. Hyper-V provides virtual firmware to virtual machines that is independent of what's on the Hyper-V host.
- UEFI firmware in a generation 2 virtual machine doesn't support setup mode for Secure Boot.
- We don't support running a UEFI shell or other UEFI applications in a generation 2 virtual machine. Using a non-Microsoft UEFI shell or UEFI applications is technically possible if they are compiled directly from the sources. If these applications are not appropriately digitally signed, you must disable Secure Boot for the virtual machine.
Work with VHDX files
- You can resize a VHDX file that contains the boot volume for a generation 2 virtual machine while the virtual machine is running.
- We don't support or recommend that you create a VHDX file that is bootable to both generation 1 and generation 2 virtual machines.
- The virtual machine generation is a property of the virtual machine, not a property of the virtual hard disk. So you can't tell if a VHDX file was created by a generation 1 or a generation 2 virtual machine.
- A VHDX file created with a generation 2 virtual machine can be attached to the IDE controller or the SCSI controller of a generation 1 virtual machine. However, if this is a bootable VHDX file, the generation 1 virtual machine won't boot.
Use IPv6 instead of IPv4
By default, generation 2 virtual machines use IPv4. To use IPv6 instead, run the Set-VMFirmware Windows PowerShell cmdlet. For example, the following command sets the preferred protocol to IPv6 for a virtual machine named TestVM:
Add a COM port for kernel debugging
COM ports aren't available in generation 2 virtual machines until you add them. You can do this with Windows PowerShell or Windows Management Instrumentation (WMI). These steps show you how to do it with Windows PowerShell.
To add a COM port:
- Disable Secure Boot. Kernel debugging isn't compatible with Secure Boot. Make sure the virtual machine is in an Off state, then use the Set-VMFirmware cmdlet. For example, the following command disables Secure Boot on virtual machine TestVM:
- Add a COM port. Use the Set-VMComPort cmdlet to do this. For example, the following command configures the first COM port on virtual machine, TestVM, to connect to the named pipe, TestPipe, on the local computer:
Note
Configured COM ports aren't listed in the settings of a virtual machine in Hyper-V Manager.
See Also
You’ve reached an archived blog post that may be out of date. Please visit the blog homepage for the most current posts.
Oracle’s database product is offered with two types of licenses: Named User Plus (NUP) based on the number of users using the database and Processor based on the physical characteristics of the device (server) supporting the database process. Named User Plus licenses are used when the total number of users is identifiable and limited. (See the blog: Oracle’s Magic Ratio for more information on how to determine when to use NUP versus Processor based licensing). Processor licenses must be used when users cannot be counted or identified, for instance internet applications, or when the number of users is very high and makes the Named User Plus license cost prohibitive. The Processor license has few challenges, specifically when deployed in virtualized environments. The licensing impacts in a VMware virtual environment are considered below.
The Processor license for the Oracle Enterprise Edition is based on the number of physical cores in the processors installed in the device. The number of licenses required for a physical server is the number of cores multiplied by a factor tied to the processor type. Oracle publishes a core factor table here that is maintained over time. For instance, a server with 2 Intel Xeon E5620 processors, each of them having 4 cores will require (8 cores) * (.50 core factor) = 4 licenses. Oracle database Standard Edition and Standard Edition One consider the number of processor sockets: the Standard Edition can be only use for servers that have a maximum capacity of four sockets; the Standard Edition One is limited to servers with only two sockets.
Two major types of partitioning technologies have been identified by Oracle: hard partitioning that physically segments a server such as Solaris Containers, vPar, nPar, etc. Each partition acts as a physically independent, self-contained server with physical resources (CPU, memory…) allocated exclusively to it. Oracle only requires purchasing licenses for the hard partitions where an Oracle database is installed and/or running: only processors allocated to these partitions will be considered in the license calculation. The list of the supported hard partitioning technologies is published by Oracle here. Soft partitioning is a technology where an operating system limits the number of resources allocated to each partition. Solutions such as AIX Workload Manager, Microsoft Hyper-V or VMware ESX belong to that category and are not recognized by Oracle for licensing purposes. Installing an Oracle instance on a single virtual machine in these environments requires licensing all physical processor-cores on the host supporting it.
In the example shown above, if the virtual machines are hard partitions, the number of Oracle processor licenses required would be: 2 (virtual cores) x 0.5 = 1
If the virtual machines are soft partitions (e.g. VMware ESX), the number of Oracle processor licenses required would be: 2 (processors) x 4 (cores/processor) x 0.5 (Core factor) = 4
VMware Clusters
VMware hosts can be grouped into clusters. VMware ESX Clusters are used for load balancing and high availability (HA). Load balancing entails moving virtual machines from one host to another to regulate the load associated with each server for best performance. High availability is achieved by transferring virtual machines from one physical server to others in the event of a hardware failure. VMware VMotion performs the migration of live virtual machines between hosts with downtime unnoticeable to the end users. In this case scenario, a virtual machine supporting an Oracle instance could be moved from one server to another one at any time. All processors contained within all physical servers in the cluster must be licensed for Oracle if any virtual machine in the cluster carries an Oracle database instance.
VMware Distributed Resource Scheduler (DRS) VM-Host affinity rules set constraints that restrict placement of a group of virtual machines within a group of hosts in a cluster: virtual machines are limited to run on specific hosts within the cluster and cannot be moved by VMotion to other hosts. There have been many discussions, blogs and debates on whether or not DRS is a partition technology that is recognized by Oracle. When DRS is used, should the full cluster be licensed for Oracle or only the hosts available to virtual machines supporting Oracle through the DRS host affinity rules? Many Oracle licensing consultants believe the answer to this question is the latter—only license the subset of hosts available via host affinity rules. Without a public statement from Oracle, the recommendation is to validate the use of these technologies and their impact on Oracle licensing with an Oracle Sales representative or a member of the Oracle License Management Services (LMS) team. The same recommendation applies to the vSphere CPU affinity feature that restricts the assignment of virtual machines to the available processors in (single server) multiprocessor systems.