nova/nova/virt/hyperv
Matt Riedemann 29dab997b4 Hyper-V: Adds Hyper-V UEFI Secure Boot
Hyper-V supports UEFI SecureBoot since the 2012 R2 version
for Windows guests and this has been extended to Linux
guests as well with the upcoming release. This blueprint
implements UEFI SecureBoot for Linux guests.

DocImpact: The nova flavor extra specs docs needs to be updated
to include 'os:secure_boot' and its possible values. The
image metadata property docs needs to be updated to include
"os_secure_boot" property and its possible values.

Co-Authored-By: Claudiu Belu <cbelu@cloudbasesolutions.com>

Implements: blueprint hyper-v-uefi-secureboot

Change-Id: I1ea96930018d997820df2b7b4640fe1f241ee8d6
2016-09-26 20:14:43 -04:00
..
README.rst Adds Hyper-V support in nova-compute (with new network_info model), including unit tests 2012-08-16 03:38:51 +03:00
__init__.py Add Hyper-V driver in the "compute_driver" option description 2014-07-24 02:47:32 -07:00
block_device_manager.py hyper-v: device tagging 2016-07-13 20:29:39 +00:00
constants.py Hyper-V: Adds Hyper-V UEFI Secure Boot 2016-09-26 20:14:43 -04:00
driver.py Merge "Hyper-V: properly handle shared storage during migrations" 2016-08-30 12:57:30 +00:00
eventhandler.py HyperV: Nova serial console access support 2016-05-20 18:59:23 +03:00
hostops.py Hyper-V: properly handle UNC instance paths 2016-08-24 10:07:35 +00:00
imagecache.py Make hyperv driver use flavor fields instead of legacy ones 2016-07-12 10:35:58 -07:00
livemigrationops.py Hyper-V: properly handle shared storage during migrations 2016-08-24 17:53:40 +03:00
migrationops.py Hyper-V: Adds Hyper-V UEFI Secure Boot 2016-09-26 20:14:43 -04:00
pathutils.py Hyper-V: properly handle shared storage during migrations 2016-08-24 17:53:40 +03:00
rdpconsoleops.py Hyper-V: adds os-win library 2015-12-02 16:34:24 +02:00
serialconsolehandler.py Trivial: Fixes serial console minor nits 2016-05-24 10:45:02 -07:00
serialconsoleops.py Trivial: Fixes serial console minor nits 2016-05-24 10:45:02 -07:00
serialproxy.py HyperV: Add serial console proxy 2016-04-18 20:32:13 +03:00
snapshotops.py HyperV: remove instance snapshot lock 2016-08-09 13:31:31 +03:00
vif.py Fix invalid import order 2016-07-04 16:24:10 +05:30
vmops.py Hyper-V: Adds Hyper-V UEFI Secure Boot 2016-09-26 20:14:43 -04:00
volumeops.py Add Hyper-V storage QoS support 2016-09-23 11:34:24 -07:00

README.rst

Hyper-V Volumes Management

To enable the volume features, the first thing that needs to be done is to enable the iSCSI service on the Windows compute nodes and set it to start automatically.

sc config msiscsi start= auto net start msiscsi

In Windows Server 2012, it's important to execute the following commands to prevent having the volumes being online by default:

diskpart san policy=OfflineAll exit

How to check if your iSCSI configuration is working properly:

On your OpenStack controller:

1. Create a volume with e.g. "nova volume-create 1" and note the generated volume id

On Windows:

  1. iscsicli QAddTargetPortal <your_iSCSI_target>
  2. iscsicli ListTargets

The output should contain the iqn related to your volume: iqn.2010-10.org.openstack:volume-<volume_id>

How to test Boot from volume in Hyper-V from the OpenStack dashboard:

  1. Fist of all create a volume
  2. Get the volume ID of the created volume

3. Upload and untar to the Cloud controller the next VHD image: http://dev.opennebula.org/attachments/download/482/ttylinux.vhd.gz 4. sudo dd if=/path/to/vhdfileofstep3 of=/dev/nova-volumes/volume-XXXXX <- Related to the ID of step 2 5. Launch an instance from any image (this is not important because we are just booting from a volume) from the dashboard, and don't forget to select boot from volume and select the volume created in step2. Important: Device name must be "vda".