You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 26 Next »

Overview

Target

  • Hyper-V Server 2012
  • WMI for VMM control

Strategy

  • CloudStack Agent Model
  • Business logic in ServerResource accesses WMI

Support basic commands

  • VM lifecycle
    • Local disk creation from template
    • VM creation, start/stop, and destruction
  • VMM monitoring
    • Host, VM and storage stats returned to CloudStack Server

VM network isolation using VLANs

Basic template management

Expand networking support

  • Flat networking with Security Groups for VM isolation

Volume service

  • Volumes management independent of VMs

Expand VM management

  • Migration

Shared storage

Native SystemVMs

  • Console access
    • RDP sessions to Hyper-V VMs

Architecture

  • Reuse KVM-style Agent Container
    • Java-based agent executes on hypervisor
    • Call out to WMI
  • Use existing SystemVMs
  • Local Primary Storage
    • Local folder
  • Secondary storage accessed as NFS/SMB via Windows Server 2012
    • Free license Hyper-V Server 2012 has no NFS client
    • Admin manually mounts secondary storage to appear as local folder

Design changes

Adopt Javelin Storage model

  • Avoid NFS requirements

Agent model

  • Cloudstack agent model.
  • C# based agent which makes WMI calls for operations on the hypervisor.
  • Agent accepts json requests and does the necessary operations on the hypervisor.

V2 WMI API

  • 2012 R2 supports only root/virtualization/v2 namespace. WMI calls on the agent will use the same namespace.

Misc Design Notes

Local Storage

  • UUIDs for volumes correspond to their file names on disk. Only this UUID is persisted on the Hyper-V Server

Misc QA Notes

Test Plan

Unit tests

  • Each test corresponds to one or more Command objects sent to a ServerResource
  • No unit tests for server-side objects (Discoverer or HypervisorGuru)
  • Tests written to work only on Hyper-V 2012

Scope

  • Pure hyperv zone will be supported. No mixed zone.
  • Support for SMB/CIFS as primary and secondary.
  • VM Compute
    • Start, stop, reboot, destroy
    • Migrate - Live
    • Service offerings. Scale up is allowed on stopped VM.
    • Console access
    • SSH keys, user data.
    • Create VM from template
    • Create VM from iso
    • Attach, Detach ISO
    • User provided internal name

Background

Original Feature Spec

  • No labels