Changes between Version 3 and Version 4 of Tutorial/DeployingVMApplications


Ignore:
Timestamp:
Aug 18, 2011, 3:55:47 PM (13 years ago)
Author:
romw
Comment:

checkpoint

Legend:

Unmodified
Added
Removed
Modified
  • Tutorial/DeployingVMApplications

    v3 v4  
    11= Deploying VM Applications =
    2 
    32== Introduction ==
    4 Using virtual machine technology with the BOINC client presents an interesting challenge to projects.  Projects not only have to follow the rules BOINC requires projects to follow but they also have to follow the rules that the virtual machine technology requires as well.  With this document we hope to provide a general outline of how to utilize the VirtualBox virtual machine technology within a BOINC based project.
    5 
    6 For the purposes of this document we are going to assume that a task instance only requires the use of a single CPU and no network communication is required during the execution of the task instance.
    7 
    8 
    9 === Configuring  Application Version ===
     3Using virtual machine technology with the BOINC client presents an interesting challenge to projects.  Projects not only have to follow the rules BOINC requires projects to follow but they also have to follow the rules that the virtual machine technology requires as well.  With this document we hope to provide a general outline of how to utilize the !VirtualBox virtual machine technology within a BOINC-based project.
     4== Usage Scenarios ==
     5There are basically two usage scenarios supported by the stock BOINC !VboxWrapper:
     6
     7* Network-focused VM
     8
     9* Task-focused VM
     10
     11=== Network-Focused VM ===
     12A network- focused VM usually launches its own task agent which downloads work to be processed and eventually shuts down when completed.
     13
     14Requirements: !VboxWrapper, VM job description file, and VM Image.
     15
     16NOTES: Network communication can be hampered if the host machine is sitting behind a restrictive firewall or proxy server.
     17
     18=== Task-Focused VM ===
     19A task-focused VM launches a single job downloaded by the BOINC client software and then shuts down.
     20
     21Requirements: !VboxWrapper, VM job description file, and VM Image, startup script, worker application
     22
     23NOTES: All network communication is disabled for the VM.
     24
     25== Configuring the BOINC Server ==
     26Using !VirtualBox requires the use of two plan classes:
     27
     28* '''vbox32''': Is the application version assigned to 32-bit machines.
     29
     30* '''vbox64''': Is the application version assigned to 64-bit machines.
     31
     32NOTES:  The bitness of the !VboxWrapper and VM image should match which plan class they are assigned too.  A 32-bit wrapper cannot properly detect or use Virtual Box on a 64-bit machine.
     33
     34A typical installation would look like this:
     35{{{
     36apps/uppercase/
     37    6.18
     38        windows_intelx86__vbox32
     39            version.xml
     40            ...
     41        windows_x86_64__vbox64
     42            version.xml
     43            ...
     44}}}
     45
     46=== Application Version Record ===
    1047Version.xml:
    1148{{{
     
    4178</version>
    4279}}}
    43 
    44 === Configuring Virtual Machine Description ===
     80Configuration options for version.xml can be found [AppVersionNew here].
     81=== Virtual Machine Description ===
    4582vbox_job.xml:
    4683{{{
     
    5188</vbox_job>
    5289}}}
    53 
    54 === Configuring Startup Script ===
     90Configuration options for VboxWrapper can be found [VboxApps here].
     91=== Startup Script ===
    5592boinc_start.sh:
    5693{{{
     
    65102shutdown -hP 0
    66103}}}
    67 
     104NOTES: Make sure the linefeeds conform to the UNIX standard otherwise bash will complain.
    68105== Appendix ==
    69106
    70107=== Premade BOINC VM Wrapper ===
    71 
    72 Configuration Options for vboxwrapper can be found [VboxApps here].
    73 
    74108==== Windows ====
    75 
     109x86: [http://boinc.berkeley.edu/dl/vboxwrapper_6.20_windows_intelx86.exe.gz vboxwrapper_6.20_windows_intelx86.exe.gz]
     110
     111x64: [http://boinc.berkeley.edu/dl/vboxwrapper_6.20_windows_x86_64.exe.gz vboxwrapper_6.20_windows_x86_64.exe.gz]
     112
     113==== Mac ====
     114TBD
    76115==== Linux ====
    77 
    78 
    79 === Premade Linux Images ===
    80 
     116TBD
     117=== Premade Linux VM Images ===
    81118x86: [http://boinc.berkeley.edu/dl/vmimagex86.vdi.gz vmimagex86.vdi.gz]
    82119
     
    89126Main advantages:
    90127 * Small install size
    91  * VirtualBox guest additions installed by default
    92 
    93 The VirtualBox guest extensions are required in order to use the shared directory feature to communicate between the guest and host operating systems.
     128 * !VirtualBox guest additions installed by default
     129
     130The !VirtualBox guest extensions are required in order to use the shared directory feature to communicate between the guest and host operating systems.
    94131
    95132==== Role Selection ====
     
    165202
    166203The 'boinc_start.sh' script should contain whatever is needed to execute your job from within the VM.
    167