Hyper-V Compute Driver Resize feature

Registered by Alessandro Pilotti on 2012-11-19

The Nova Compute Hyper-V driver is currently lacking the resize feature due to the complexity related to managing non native filesystems on WIndows (e.g. ext3 / ext4).

A first implementation will handle migration and virtual disk resize support.

A subsequent patch targeting Havana will implement guest OS resize through worker VMs spawned from lightweight Linux images (e.g. OpenWRT) to resize attached ext2/3/4 volumes while NTFS volumes can be mounted as local loopback devices on the Hypervisor for resizing (Windows Server 2012).

Implementation details
-------------------------------

Resize / cold migration is implemented by copying the local disks to a remote
SMB share, identified by the configuration option HYPERV.instances_path_share
or, if empty, by an administrative share with a remote path corresponding to
the configuration option instances_path.

The source instance directory is renamed by adding a suffix "_revert" and
preserved until the migration is confirmed or reverted. In the former case
the directory will be deleted and in the latter renamed to the original name.

The VM corresponding to the instance is deleted on the source host and
recreated on the target. Any mapped volume is disconnected on the source
and reattached to the new VM on the target host.

In case of resize operations, the local VHD file is resized according to
the new flavor limits. Due to VHD limitations, an attempt to resize a disk
to a smaller size will result in an exception.

In case of differencing disks (CoW), should the base disk be missing
in the target host's cache, it will be downloaded and reconnected to the
copied differencing disk.

Same host migrations are supported by using a temporary directory
with suffix "_tmp" during disk file copy.

Blueprint information

Status:
Complete
Approver:
Vish Ishaya
Priority:
Low
Drafter:
Alessandro Pilotti
Direction:
Needs approval
Assignee:
Alessandro Pilotti
Definition:
Approved
Series goal:
Accepted for grizzly
Implementation:
Implemented
Milestone target:
milestone icon 2013.1
Started by
Alessandro Pilotti on 2012-11-27
Completed by
Russell Bryant on 2013-02-12

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/hyper-v-compute-resize,n,z

Addressed by: https://review.openstack.org/21695
    Implements resize / cold migration on Hyper-V

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.