ctys-VBOX-Configuration

July, 2010

.

VBOX - AlphaRelease - REMARKS

ATTENTION:

The current version is an Alpha-Release, thus under work. The following description is intended for the first steps. The installation for now relies on the VirtualBox(TM) contained tools and procedures, and does not require any add-on for operations. The only effect of missing the UnifiedSessionsManager specific add-ons is the missing of additional and full information about the guest system.

VBOX - Basics for Operations

The ctys-VBOX plugin of the UnifiedSessionsManager supports a subset of the product command line options mapped to native options.

Therefore a meta-layer for an abstract interface is defined, which is in current version based on the final call of the interfaces for the supported products. Future versions are going to provide an abstract encapsulation layer by a wrapper scripts an in addition will utilize the vendor provided management interfaces.

The call structure fits into the common structure of ctys but for the current version the ctys-wrapper script is not yet supported for the VBOX subsystem.

Interfaces for Access Points

The VBOX subsystem supports from the box the standard configuration files created by the vendor utilities. Thus any existing installation with any already present VMs and vdi-files could be used without required adaptation. The creation of new VMs is foreseen by the standard procedures as defined by the vendor and supported by the products. The lack of the standard vdi- and XML-files is the missing of extended offline information about the GuestOS. These could be added either manually, or by usage of the tool ctys-createConfVM(1) .

The manual creation could be proceeded by the user with the following description of the optional "ctys-conf" configuration file. The configuration file has to be stored within the directory of the virtual machine, coallocated with the vdi-file and named with the same prefix as the vdi-file: <vdi-file-prefix>.ctys. The provided example may suffice the most required offline information for the user-management of the VM, including the automated generation of a cache database for the network inventory. The frequent pitfall here is the required consistency of the network interface - the MAC and TCP/IP address, this is particularly required for DHCP usage. So, when any difficulties occur check for a trace output hinting to network address inconsistencies. The tightly coupled addresses applying to the same logical interface, must be assigned so. Else multiple entries may be generated and lead to later errors due to redundant entries, which could be checked by the ctys-vhost(1) utility.


  #@#MAGICID-VBOX

  #@#VMSTATE="ACTIVE"
  #@#SERNO="20080415051600"
  #@#VERSION="01.01.001"
  ####MAC0 is provided by the eth0 of vmx-file!
  #@#IP0="192.168.1.235"
  #@#DIST="CentOS"
  #@#DISTREL="5"
  #@#OS="Linux"
  #@#OSREL="2.6"
  #@#SERNR="20080415051600"
  #@#CATEGORY="VM"


The second option for creation of the configuration file is the installer ctys-createConfVM(1) for interactive and automated setup of VirtualBox add-on configuration files. Due to the alpha-release-state it may eventually neccessary to additionally adapt this file manually. In specific cases, e.g. multiple NICs, the manual completion of the registered devices is still required.

Anyhow, the VBOX plugin works still perfectly with the standard files of VirtualBox only, just missing some extended information related to the GuestOS, which could be omitted for standard operations.

Once VBOX is setup, the boot of the VM could be performed by the CREATE action of ctys. Basic Use-Cases for application are contained within the document ctys-uc-VBOX(7)

Supported HOST-OSs

The VBOX plugin is supported an all released runtime environments of the UnifiedSessionsManager where the products are available.

Supported GuestOSs

The native GuestOS support is the same as for the PMs and HOSTs plugins.

Supported Architectures

The whole set of available CPUs by Products is supported :

  x86, AMD64, i86_64



Supported Interfaces

Supported VM Management Interfaces

The current version supports for basic management facilities by a vendor provided tools. These comprise mainly the creation of runtime entities and the cancellation of running instances a.k.a sessions. Library functions for vendor provided coding interfaces are due to the lack of actual requirement not yet utilized.

The following are under study and may be included soon.



Network Interconnection

NIC-bonding
ffs.



Installation of Components

The provided examples are based - if not stated else - on CentOS-5.4, but may be applicable for any other distribution similar.

VirtualBox-3.1.2 - 64bit
The installation of VirtualBox(TM)-3.1.2 on CentOS-5.4 is straight forward, just use the provided rpm-package.

rdesktop-1.6.0
Install the rpm package provided by CentOS.



Install Procedures

General Remarks
The most of the installation is performed with PXE if possible. Therefore the PXELINUX is switched to version 3.6.2 and a menu system for the management of the whole test-environment is setup.

When difficulties occur due to specific network requirement, the CD-mount on ISO files option is used, which is almost in any case experienced to be quite safe for VMware products.
Installation and Maintenance by Product Console
For initial creation or basic maintenance the console of the specific product has to be started. The console could be started e.g. by usage of the X11 plugin.
  
    ctys -t x11 \
         -a create=l:vbox,console:VirtualBox \
         lab02
  

Start remote console
  
    ctys -t x11 \
         -a create=l:vbox,cmd:VirtualBox \
         root@lab02
  

Create a VM by 'New' command and perform the required steps. The following steps assume a PXE installation.

Start the VM either immediately from the GUI or by calling:
  
    ctys -t vbox \
         -a create=l:bld028,\
                   console:rdp,\
                   reuse,\
                   p:/mntn/vmpool/vmpool01/vbox/build/bld028 \
         root@lab02
  
This enters the native install procedure of the OpenBSD distribution.

Start installation by choosen install media.
PXE-Boot
The folowing steps are applied to an installation by PXE. This anyhow requires the proper setup of DHCP, TFTP, and one of HTTP/FTP/NFS. For some OSs a so called kickstart file could be used to automate the whole procedure.

For Linux and BSD refer to SYSLINUX and ETHERBOOT.
Manual Creation of ctys-files

For current version only - manual file-edition for ctys-addon is required:

The following versions are going to be integrated into the ctys-createConfVM(1) utility for interactive or automatic generation of required configuration files.

The following steps could be applied after the installation by standard procedures.

Example with ctys-file

The scan by enumerate without a ctys-file:

  
  ctys -a enumerate=machine,b:/mntn/vmpool/vmpool05/vbox/test/initial/vbox001 lab02
  
The resulting display is:

  
  lab02.soho;VBOX;vbox001;/mntn/vmpool/vmpool05/vbox/test/initial/vbox001/vbox001.vdi;531f
  42f1-9c64-425e-bf88-319cbe592453;;;;5904;;;;;OpenBSD;;;;;DISABLED;;;;;;;;;;VirtualBox-3.
  1.2;HVM;;;;;;;;x86_64;;320;1;VERSION:VirtualBox-3.1.2;
  

The scan by enumerate with an existing ctys-file:

  
  ctys -a enumerate=machine,b:/mntn/vmpool/vmpool05/vbox/test/initial/vbox001 lab02
  
The resulting display is:

  
  lab02.soho;VBOX;vbox001;/mntn/vmpool/vmpool05/vbox/test/initial/vbox001/vbox001.ctys;531
  f42f1-9c64-425e-bf88-319cbe592453;;172.20.200.1;;5904;;;OpenBSD;4.6;OpenBSD;4.6;;;VM;DIS
  ABLED;;;;;;;;;;VirtualBox-3.1.2;HVM;;;0;;;;;x86_64;;320;1;VERSION:VirtualBox-3.1.2;
  
Supported/Tested Install-Mechanisms
The current version relies on the provided intstall mechanisms of the product supplier, and pre-requires an installed system.



Installation of GuestOS

OpenBSD
Installation is quite straight-forward, just the two-level boot has to be considered. The 64bit version works perfectly from the box.



Installed Systems


OS name Inst-VM Media
Android-2.2/eeeDroid inst017 VirtualBox-3.1.2 ISO
CentOS-5.4 tst312 VirtualBox-3.1.2 PXE,ISO
CentOS-5.5 x VirtualBox-3.1.2 PXE,ISO
Debian-5.0.0 tst313 VirtualBox-3.1.2 ISO
Debian-5.0.6 x VirtualBox-3.1.2 ISO
EnterpriseLinux-5.4 tst317 VirtualBox-3.1.2 ISO
Fedora-12 x VirtualBox-3.1.2 ISO
Fedora-13 x VirtualBox-3.1.2 ISO
Knoppix-6.2.1 x VirtualBox-3.1.2 ISO
Mandriva-2010 x VirtualBox-3.1.2 ISO
MeeGo-1.0 inst017 VirtualBox-3.1.2 ISO
NetBSD-5.2 x VirtualBox-3.1.2 ISO
OpenBSD-4.6 vbox001 VirtualBox-3.1.2 PXE,ISO
OpenBSD-4.6 vbox002 VirtualBox-3.1.2 PXE,ISO
OpenBSD-4.6 vbox003 VirtualBox-3.1.2 PXE,ISO
OpenBSD-4.6 vbox004 VirtualBox-3.1.2 PXE,ISO
OpenSolaris-2009.6 tst311 VirtualBox-3.1.2 ISO
OpenSuSE-11.2 x VirtualBox-3.1.2 ISO
OpenSuSE-11.3 x VirtualBox-3.1.2 ISO
QNX-6.40 tst319 VirtualBox-3.1.2 ISO
RHEL-5.5 x VirtualBox-3.1.2 ISO
RHEL-6.0beta x VirtualBox-3.1.2 ISO
ScientificLinux-5.4 x VirtualBox-3.1.2 ISO
Solaris-10 x VirtualBox-3.1.2 ISO
Ubuntu-9.10 tst315 VirtualBox-3.1.2 ISO
Ubuntu-10.10 x VirtualBox-3.1.2 ISO
Windows2000WS tst005 VirtualBox-3.1.2 ISO
WindowsXP x VirtualBox-3.1.2 ISO
Windows2008-Server x VirtualBox-3.1.2 ISO
Windows7 x VirtualBox-3.1.2 ISO

Overview of Intsalled-VMs



SEE ALSO

ctys(1) , ctys-CLI(1) , ctys-configuration-VBOX(7) , ctys-createConfVM(1) , ctys-distribute(1) , ctys-groups(1) , ctys-macros(1) , ctys-plugins(1) , ctys-RDP(1) , ctys-uc-VBOX(7) , ctys-vdbgen(1) , ctys-vhost(1) , ctys-VNC(1) , ctys-X11(1)

For System Tools:

rdesktop: [ http://www.rdesktop.org ],

PXE-SYSLINUX-PXELINUX-ISOLINUX: [ http://syslinux.zytor.com ],

PXE-ROM-Images-Etherboot: [ http://www.etherboot.org ]




AUTHOR

Written and maintained by Arno-Can Uestuensoez:

Maintenance: <<acue_sf1 (a) sourceforge net>>
Homepage: <https://arnocan.wordpress.com>
Sourceforge.net: <http://sourceforge.net/projects/ctys>
Project moved from Berlios.de to OSDN.net: <https://osdn.net/projects/ctys>
Commercial: <https://arnocan.wordpress.com>




COPYRIGHT

Copyright (C) 2008, 2009, 2010 Ingenieurbuero Arno-Can Uestuensoez

For BASE package following licenses apply,

This document is part of the DOC package,

For additional information refer to enclosed Releasenotes and License files.