OU Supercomputing Center for Education & Research
University of Oklahoma   OSCER   OU IT

 

How to Set Up a coLinux-based Condor Pool

If you have any questions about anything below, please

  1. Install WinPcap.
     
  2. Download the 7zip file (542 MB).
    Note that 7zip is similar to zip, but isn't yet as widely adopted.
    Here are the 7zip extractors for Windows and Linux.
     
  3. Extract the contents of the 7zip file to:
    c:\condor\colinux3
     
  4. Replace the condor_config in the Condor directory with your own condor_config as follows:
     
    Open first.sh and:
     
    1. Change the first 4 lines in "#Create CIFS mounts".
      Those aren't necessary -- we simply mount some shares on a server -- but Condor will run fine without the shares, so you can simply remove those lines.
       
    2. Remove the 5 lines under "#Run OU Update script hourly" or change it to point to your own file.
      (We have a shell script on one of the CIFS shares that we run hourly so that we can easily make changes to all of the machines.)
       
    3. Change the "#Modify hosts file" section as appropriate for your Condor master.
      The last 3 lines of that section use the "sethostname" script in the same directory, which is what we use to set computer names in our labs. You can either modify that script, or remove the references to it if your reverse DNS works correctly in your area (we use that script to get around a reverse DNS problem we have).
       
    4. Change the root password to something you like.
       
      Add the following line to first.sh:
       
      echo your_preferred_root_password | passwd --stdin root
       
      Then that should change root's password to your_preferred_root_password.

Below is the script we're using in our labs for the actual install. Here's how to use it.

  1. Change the first line to how much memory you want Condor to be able to use. (We do half of the total physical RAM that the machine has.)
     
  2. You can change the two "fsutil" lines to specify how much space you want to allocate for the extra coLinux drives. (We're doing about 16 GB for Condor to run in, and about 2 GB for swap on those lines.)
     
  3. You'll want to change the last 5 lines.
     
    What those do for us is parse locations.txt and hextodec to create a unique MAC addresses.
     
    For example, the way we do it, lab-bl-005 would get the MAC address 00:50:56:00:C2:05, and so on.
     
    CoLinux will create random MAC addresses for machines if the MAC addresses aren't specified, so if you don't want to assign MAC addresses the way we do, it is acceptable to replace those 5 lines with just the following:
     
    echo eth0=pcap-bridge,"Local Area Connection" >>colinux.cfg
     
  4. Your boot.ini file must be modified to have
    /NoExecute=AlwaysOff
    appended to the Windows line, so that coLinux doesn't crash the computer on start.
    (See the boot.ini that is included in the distribution for an example).
     
    If you're distributing this to many machines that have identical partition set-ups, then you can script this using the following lines, after placing a compatible boot.ini in the directory:
    attrib -r -s -h c:\boot.ini
    copy /y boot.ini c:\boot.ini
    attrib +r +s +h c:\boot.ini

     
  5. Reboot after all this is done. CoLinux should now be working.
     

Script

set conmem=512
echo mem=%conmem% >> c:\condor\colinux3\colinux.cfg
cd \condor\colinux3\
attrib -r -s -h c:\boot.ini
copy /y boot.ini c:\boot.ini
attrib +r +s +h c:\boot.ini
colinux-daemon @colinux.cfg --install-service colinux
fsutil file createnew c:\condor\colinux3\condorlocal.ext3 16000000000 2>nul
& cd
fsutil file createnew c:\condor\colinux3\swap 2000000000 2>nul & cd
sc config colinux start= auto

regedit /s blah.reg
.\install_service.vbs

FOR /F "tokens=2* delims=-" %%A IN ('ipconfig /all ^| FIND "Host Name"') DO
SET C1=%%A
FOR /F "tokens=3* delims=-" %%A IN ('ipconfig /all ^| FIND "Host Name"') DO
SET C2=%%A
FOR /F "tokens=2* delims=," %%A IN ('type locations.txt ^| FIND /i
"%%C1%%"') DO SET  D1=%%A
FOR /F "tokens=1* delims=," %%A IN ('type hextodec.txt ^| FIND /i "%%C2%%"')
DO SET  D2=%%A
echo eth0=pcap-bridge,"Local Area Connection",00:50:56:00:%D1%:%D2%
>>colinux.cfg

If you have any questions about anything above, please

Related Efforts

 

 


Copyright (C) 2004-2007 OU Supercomputing Center for Education & Research