Abiquo 2.6


Skip to end of metadata
Go to start of metadata

Admin Guide 2. Cloud Node. Hyper-V

One connection to each Hyper-V server

Abiquo cannot make multiple concurrent connections to Windows-based machines.
For Hyper-V, set the Abiquo Configuration Property "abiquo.virtualfactory.openSession" to 1.

Shared datastore disks not deleted by Hyper-V

When you undeploy VMs with a shared datastore, Abiquo 2.6 GA does not delete shared datastore files due to a limitation of WMI that the disks "cannot be found". The VM cannot be deployed again because the deploy fails saying that the disk already exists. You can access the shared datastore to delete the disks directly after you undeploy.

Abiquo deploys virtual machines in Hyper-V in the 'generation 1' format only. Abiquo does not support 'generation 2' to maintain cross platform compatibility for virtual machines. This means that Abiquo supports IDE, Legacy Network adapters and provides more support for additional guest OSs. Note that 'generation 1' format can only support the primary boot disk controller as IDE not SCSI (Microsoft limitation). See http://technet.microsoft.com/en-us/library/dn282285.aspx or http://technet.microsoft.com/en-us/library/dn282278.aspx#bkmk_generation

Compatible Hyper-V Profiles

Before installing Hyper-V, check the Hypervisors Section of the Compatibility Tables for the profiles that are compatible with Abiquo.

This section explains how to configure Hyper-V for use with Abiquo.

The basic steps for Hyper-V configuration are:

  1. Configure Registry 
    1. Add the Hyper-V to a Windows domain 
    2. Run the powershell as the domain admin
  2. Enable remote desktop (optional)
  3. Configure Network
    1. Configure firewall to allow incoming connections
    2. Create vSwitch in Hyper-V Manager
  4. Configure Storage
    1. Enable iSCSI
    2. Change initiator IQN
    3. Mount shared datastore (samba)

This configuration requires registry modifications.

Hyper-V configuration steps for management through DCOM

Abiquo uses the WMI API, through J-Interop and JWbem libraries.

See  http://sourceforge.net/p/j-interop/code/138/tree/trunk/j-interop/src/readme.htm

Therefore, you will need to make the registry modifications described below to enable remote management and monitoring of Hyper-V.
Add Hyper-V to a Windows Domain

Add the Hyper-V server to a Windows Domain. 

Automatically Edit the Registry

Download the powershell script in the attached file change_registry.ps1

Log in as the domain admin. Use the fully qualified domain name, e.g. MY-DOMAIN\administrator

Run the powershell script.

This script will set the owner of the following registry keys to be changed to the user who runs the script. 

The manual process to change domain owner and edit registry keys is described in  Hyper-V Manual Registry Configuration

Registry Changes

These registry changes are included in the attached file hypervconfig.reg.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\AppID\{76A64158-CB41-11D1-8B02-00600806D9B6}]
"DllSurrogate"=""

[HKEY_CLASSES_ROOT\CLSID\{76A64158-CB41-11D1-8B02-00600806D9B6}]
@="WBEM Scripting Locator"
"AppID"="{76a64158-cb41-11d1-8b02-00600806d9b6}"

[HKEY_CLASSES_ROOT\CLSID\{76A64158-CB41-11D1-8B02-00600806D9B6}\InProcServer32]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,77,00,62,00,\
  65,00,6d,00,5c,00,77,00,62,00,65,00,6d,00,64,00,69,00,73,00,70,00,2e,00,64,\
  00,6c,00,6c,00,00,00
"ThreadingModel"="Both"

[HKEY_CLASSES_ROOT\CLSID\{76A64158-CB41-11D1-8B02-00600806D9B6}\ProgID]
@="WbemScripting.SWbemLocator.1"

[HKEY_CLASSES_ROOT\CLSID\{76A64158-CB41-11D1-8B02-00600806D9B6}\Programmable]

[HKEY_CLASSES_ROOT\CLSID\{76A64158-CB41-11D1-8B02-00600806D9B6}\TypeLib]
@="{565783C6-CB41-11D1-8B02-00600806D9B6}"

[HKEY_CLASSES_ROOT\CLSID\{76A64158-CB41-11D1-8B02-00600806D9B6}\Version]
@="1.0"

[HKEY_CLASSES_ROOT\CLSID\{76A64158-CB41-11D1-8B02-00600806D9B6}\VersionIndependentProgID]
@="WbemScripting.SWbemLocator" 

Configure Network for Hyper-V

Configure the network in Hyper-V Manager by checking the MAC addressing and add a new network attached to the service network interface.

Configure VLANs

To allow Abiquo to manage VLANs in this Hyper-V server, add a new network attached to the service network interface. The network name should use appropriate characters and can be chosen by the network administrator. 

In Hyper-V Manager, go to Virtual Switch Manager -> New virtual network switch. Use the default options with 'External' type

Configure Persistent iSCSI Storage

This section describes how to configure persistent iSCSI storage.

Disk Management is in Win8MetroUI + Settings + "Create and format hard disk partitions"

 

Install iSCSI Service

The first thing you need to do is enable the iSCSI service and set it to start automatically

C:\Users\Administrator> sc config msiscsi start= auto
ChangeServiceConfig SUCCESS

C:\Users\Administrator> net start msiscsi
The Microsoft iSCSI Initiator Service service is starting.
The Microsoft iSCSI Initiator Service service was started successfully.
Manually Set Initiator IQN

iSCSI Configuration

Run iscsicpl   to open the iSCSI configuration popup on a Core installation

Once the iSCSI service is enabled, you must manually set the initiator IQN for the machine. To do this, go to Start > Administrative tools > iSCSI Initiator, and select the Configuration tab. Click the Change button. The following dialog appears:

You can accept the default value. You MUST do these steps manually even if the value of the initiator IQN field does not change. If this is not done manually, the initiator IQN will be dynamically computed based on the host and domain name, and may change without any warning, making the external storage volumes inaccessible.

iSCSI Firewall Rule

See Configure Firewall below to set the iSCSI firewall rules via netsh.

SAN Policy Configuration

Open a command line and run the following commands to set the appropriate SAN Policy:

diskpart
san policy=OfflineAll
exit

Configure Firewall for Abiquo and Hyper-V

You will need to allow access to the appropriate ports. See Ports and Communications

Check Abiquo Configuration Properties File and Samba Service

Open an SSH session to the Abiquo server and check the following items:

Samba Server
  • Is the SAMBA server up and running?
    Start the service with the following command.
 /etc/init.d/smb start
  • Samba server must be started at boot
 chkconfig smb on
Abiquo Configuration Properties

Set the maximum number of open virtual factory sessions to 1.

Abiquo cannot make multiple concurrent connections to Windows-based machines.
The Abiquo Configuration Property "abiquo.virtualfactory.openSession" must be set to 1 to enable the Hyper-V plugin to work correctly.

abiquo.virtualfactory.openSession = 1

Check the SMB path in the config file /opt/abiquo/config/abiquo.properties

abiquo.appliancemanager.localRepositoryPath = /opt/vm_repository/
abiquo.appliancemanager.repositoryLocation = 192.168.1.10:/opt/vm_repository

abiquo.virtualfactory.hyperv.repositoryLocation = //<SERVER_IP>/vm_repository
abiquo.virtualfactory.xenserver.repositoryLocation = 192.168.1.10:/opt/vm_repository
abiquo.virtualfactory.vmware.repositoryLocation = 192.168.1.10:/opt/vm_repository

Restart the Abiquo Tomcat server

 /etc/init.d/abiquo-tomcat restart

Hyper-V in the Abiquo Platform

Remote Access

In Hyper-V 3, there is no VNC/RDP access through the eye icon. Abiquo provides RDP connection details for VMs. Users will require access to the hypervisor to connect to VMs.

Abiquo recommends xfreerdp. When you click the eye icon, Abiquo opens a popup displaying the connection details in xfreerdp format.

xfreerdp /d:my.domain.com /u:Administrator /p:abiqu0! /vmconnect:27b6f5f6-7c83-447c-83c3-b4093dc16f14 /v:10.60.10.230
Best Practices
Datastores

Abiquo will allow you to configure a system drive as the datastore. However, this is not recommended because of disk latency or potential disk space problems. You can use a local datastore or an SMB share.

Linux Guests

Linux Integration Services are required for disk controller detection.

Prepare to Add a Hyper-V Hypervisor to Abiquo

Create a virtual switch for use by Hyper-V before you add it to Abiquo, for example, using Hyper-V Manager.

Create a Network Service Type in Abiquo before you add the hypervisor.

Adding Hyper-V to the Abiquo GUI

Create a physical machine with a hypervisor type of Hyper-V.

Enter the User name. It can be an Active Directory login or local user (Abiquo 2.6, use an Administrator account). Ensure that the 'User' information include the is the domain prefix (or machine name if not connected to a domain) as in the example below tau-main\administrator (domain\user).

General Information

Confirm that the information is correct and/or change any specific information as applicable (such as additional information in the description box).

Add the machine to the correct Abiquo 'Rack' in the drop down.

Network Interfaces

Select the network service type for your virtual switch.

Datastore

The datastore must be a mapped drive. It can be:

  • local datastore (e.g. D:\)
    • Abiquo recommends that you do not use C:\ 
  • SMB share (e.g. X: which has the share \\SMB_SERVER\sharefolder mounted)
    • this configuration is suitable for a shared datastore

The full datastore path is the root path + directory

SMB shares will display with the name of the SMB share (e.g. \\SMB_SERVER\sharefolder)

When you edit the datastore, you will see the drive name (e.g. X:\)

Configure your network service type before you add the Hyper-V machine to Abiquo.