admin:pwing [Promethee]

Linux virtual engine installation

The PWinG (Promethee Windows Grid) project aims to operate Windows office desktop as a scientific computing grid of Linux servers. The resources of the grid are managed using Promethee grid engine and codes execution is provided by Linux virtual machines (coLinux project) hosted on Windows desktops.In an offline 1) context, this software only solution allows to use Linux scientific codes on any isolated Windows computer.

Information

CoLinux is an open source project of Linux virtual machine with significant reduction of Windows host hardware resources consumption. This lightweight and flexible project is especially interesting for scientifi codes virtualisation:

Integrating PWinG on Windows host

Warning

The instalation described below is expected to be done in C:\Program Files\. If you choose to install the tools in another location, please consider the following details:
  • installation of Promethee and codes must be performed in the directory specified by the cofs0 device in file pwing.conf (in the PWinG installation directory):
    kernel=vmlinux
    cobd0="c:\Program Files\PWinG\root.img"
    cobd1="c:\Program Files\PWinG\tmp.img"
    cofs0="c:\Program Files\"
    root=/dev/cobd0
    mem=396
    eth0=tuntap
  • if you do not install coLinux or PWinG in C:\Program Files\ you will need to modify these files (in the PWinG installation directory):
    • install_service.bat:
      cd C:\Progra~1\coLinux\
      colinux-daemon.exe -c C:\Progra~1\PWinG\pwing.xml --install-service PWinG
    • start_service.bat:
      cd C:\Progra~1\coLinux\
      colinux-daemon.exe -c C:\Progra~1\PWinG\pwing.xml
    • pwing.conf
    • then restart the PWinG service launching install_service.bat.

PWinG engine installation

This installation requires Windows administrator rights.
  1. Installing the JRE (Java Runtime Environment) version> = 1.4.
  2. Check availability of 1Gb of disk space on C:\
  3. Check of noexecute mode deactivation: if /noexecute=optin option appears in C:\boot.ini, it is necessary to replace it with /noexecute=AlwaysOff. Otherwise, Windows may no longer restart in other than safe mode.
  4. PWinG installation: double-click the file install_pwing-*.jar downloadable here: Please note that this installation can be quite long. During PWinG installation, coLinux installation is automatically launched (coLinux is also available on SourceForge).
    1. Uncheck:
      • coLinux > Bridged Ethernet(WinPCAP)
      • Root Filesystem image Download
        install_colinux.jpg
    2. Click on “Next” if “Hardware installation” window appears asking confirmation for “TAP-Win32 Adapter V8 (coLinux)”.
      alerte-intall-colinux.jpg.

Windows host settings

This phase enables the connection between the Linux virtual machine and Windows Promethee GUI.
  1. C:\boot.ini : check of noexecute mode deactivation: if /noexecute=optin option appears in C:\boot.ini, it is necessary to replace it with /noexecute=AlwaysOff. Otherwise, Windows may no longer restart in other than safe mode.
  2. Network connections : identification of coLinux network interface
    1. check previous coLinux installation has well created a new virtual network interface (for instance “Local network 2”),
    2. rename this interface to avoid any confusion in the future (for instance “TAP”).
  3. Network connections : setup TCP/IP protocol on this network interface
    Properties > Internet protocol (TCP/IP)
    • static IP
    • Address 192.168.0.1
    • Netmask 255.255.255.0
      ip_nat.jpg
    • delete firewall on this interface if present
  4. PWinG service modification
    1. Services : in adminstration of Windows services (Control panel > … > Adminsitration tools > Services), if PWinG service is not listed, manually start C:\Program Files\PWinG\install_service.bat and id needed select automated startup.
    2. Registry editor : if needed (sometimes in Windows XP) add value “tap0801co” inside key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PWinG\DependOnService

      Note: enter tap0801co in a new line after ColinuxDriver:
      CoLinuxDriver
      tap0801co
  5. If you wish to use this host as a network calculation server to be accessible from another desktop computer (using Promethee GUI), next step are necessary.
    1. Services : enable if necessary connection sharing dependencies (also known as”ICS” : Internet Connection Sharing):
      Control panel > … > Adminstration tools > Services,
      if listed, startup and select automated startup for following services :
      • “Network connections”
      • “remote connections manager”
      • “NLA (Network Location Awareness)”
      • “Gateway applications service”
        services.jpg
    2. Network connections : enable connection sharing between main network interface and coLinux network interface
      1. with Windows 2000 reboot,
      2. Local network connection > Properties > Advanced
        check the sharing connection box for main network interface (e.g. connected to local network) in “Internet connection sharing” window
        ics.jpg
      3. add a new “port forwarding” service:
        1. click “Parameters” in this same tab, then in Windows 2000 select tab services,
        2. click “Add” and configure Promethee port forward (number de 10000) toward IP 192.168.0.2
          pf_paradise.jpg
When finished, reboot machine.

PWinG virtual machine settings

Integration of Linux computing codes

The installation of calculation codes for Linux can be done:
  1. inside the virtual machine
  2. inside Windows: C:\Program Files\ (just unpacking a code directory for example).

Installation of a code in the virtual machine image

The SSH service is enabled in the virtual machine, it allows you connect to complete the installation of computer code:
  • connection to the IP address 192.168.0.2
  • login: “user”
  • password: “user”
Simply click on C:\Program Files\PWinG\Console.bat
To transfer the archive to install the code and execute the necessary commands, in addition to the “PuTTY” SSH client already embedded in C:\Program Files\PWinG\ it may be useful to install the file transfer tool “WinSCP”.

Installation of a code inside the Windows host

If the installation of computer code is a simple archive unpack, it is possible to do it directly on the Windows disk in C:\Program Files, automatically available (mounted) in /opt within the virtual machine.
To properly setup the user environment variables for this calculation code, it may be necessary to change the PATH variable loaded in the file C:\Program Files\PWinG\user_profile, linked to /home/user/.bash_profile inside virtual machine.
Note: 7-zip archiver tool supports Unix archive formats for Windows.

Promethee configuration

CoLinux virtual machine does not contain the Promethee daemon, but uses the one available in the Windows installation of the host machine C:\Program Files\Promethee.Thus, the Promethee daemon configuration file is located in the Windows path: C:\Program Files\Promethee\calculator-PWinG.xml, you can define there:
  • service name appearing in the GUI of users (Optionally replaced by the hostname of the machine),
  • the network port used by the daemon (optional, default 10000)
  • authorized client sslots, defined by their network name (or IP) and port (initially only the Windows host machine is authorized to allow other customers to initiate calculation should add their IP),
  • calculation codes available, defined by their identifier (field “name” corresponds to the field “code” of the configuration file of users) and the command to execute:
    <CALCULATOR name="test" spool="/tmp" port="10000">
    	<HOST name="127.0.0.1"  port="8000" />
    	<HOST name="127.0.0.1"  port="8001" />
    	<HOST name="127.0.0.1"  port="8002" />
     
    	<HOST name="192.168.0.1"  port="8000" />
    	<HOST name="192.168.0.1"  port="8001" />
    	<HOST name="192.168.0.1"  port="8002" />
     
    	<HOST name="123.456.780"  port="8000" />
    	<HOST name="123.456.780"  port="8001" />
     
    	<HOST name="123.456.781"  port="8000" />
    	<HOST name="123.456.781"  port="8001" />
     
    	<HOST name="123.456.782"  port="8000" />
    	<HOST name="123.456.782"  port="8001" />
     
    	<CODE name="MyCode"     command="/opt/MYCODE/bin/mycode.sh" />
    </CALCULATOR>
In this example, the code “MYCODE” is installed in C:\Program Files\MYCODE and then accessible in /opt/MYCODE inside virtual machine. For more information about this configuration, see the documentation for configuration of Promethee grid.

Functional tests

The following tests should help to verify the proper functioning of the previous installation.

Local SSH test

From SSH terminal (accessible from C:\Program Files\PWinG\Console.bat), execute the computer code you want to check its proper functioning.

Promethee local test

Test the proper functioning of the PWinG virtual machine by launching a Proemthee calculation and verifying that the virtual machine appears in the list of servers for calculation.
1) network unplugged
© IRSN - All right reserved - Legal information