Rush Windows Install Instructions
(C) Copyright 1995,2003 Greg Ercolano. All rights reserved.
V 102.41a 12/07/04


  Windows Install Instructions  
                                                     

  Installing Rush  

  1. Verify your network is configured correctly before installing Rush.

      There are certain pre-requisites for Rush to ensure it can properly operate on your network.

  2. Install 'Active Perl' for Windows from http://www.activestate.com/

    You can download Perl for Windows *free* from http://www.activestate.com/.

    The rush submit scripts are written in Perl, so unless you intend to write all your own submit scripts in some other language, you'll need to install perl.

  3. Unzip the rush distribution to C:\RUSH
  4. Edit the C:\RUSH\ETC\HOSTS file.

    Edit the C:\RUSH\ETC\HOSTS file..
    Create an entry for all hosts you'll be using for Rush. Remove the example entries (amber, bart..).

  5. Install the license that was emailed to you as C:\RUSH\ETC\LICENSE.DAT
  6. Make sure the Windows Firewall is disabled.
    Microsoft now includes a firewall that is default 'on' in some versions of Windows which, if left enabled, will prevent Rush from being able to communicate with remote machines.

    Disable the radio button in the 'Internet Connection firewall', eg:

    Control Panel | Network | Lan | Properties | Advanced | Internet connection firewall

    Or, if you want the firewall enabled, make sure TCP and UDP port 696 is left open in the 'Settings' menu. If you want Rush to be able to send email on job completions, you'd better allow port 25 to be able to reach your mail server as well.

  7. Run the following commands in DOS to install the daemon.

      cd \rush\etc\bin
      install

    Note: You will *NOT* need to reboot after installation.

    If you see errors about 'unrecognized command or batch file', you probably have this problem.

  8. Configure the 'Rushd' service Username and Password.

    1. Bring up services:

        WIN/NT: Start -> Control Panel -> Services
        WIN/2K: Start -> Control Panel -> Adminsitrative Tools -> Services

    2. Double click the new 'Rushd' service.
    3. Set up the account the Rushd service will run as.

        DOMAIN Users
            If you have a Windows DOMAIN, it is recommended you create a      
            domain user (eg. 'rush') that:
        
                a) Has a non-blank password.
                b) The password is set to never expire.
                c) The account is a member of the local administrator group
        	   on each machine.
                d) Configure the Rushd service to run as that user.
        

        WORKGROUP Users
            If you have a Windows WORKGROUP, it is recommended you create a    
            local 'rush' account on each machine which:
        
                a) Has a non-blank password.
                b) The password is set to never expire.
                c) The account has local administrator priveleges.
                d) Configure the Rushd service to run as that user (below).
        

      Click 'This Account', configure login for network 'Administrator'. (Under Win2K, you'll need to click on the 'Logon' tab, first)

      	      WORKGROUP                      WINDOWS DOMAIN USER
      	      ---------------------------    ---------------------------
      	      This Account: rush             This Account: DOMAIN\rush
      		  Password: <PASSWORD>           Password: <PASSWORD>
      		   Confirm: <PASSWORD>            Confirm: <PASSWORD>
      
      		     (Replace DOMAIN with your Windows domain name)
      		     
    4. Highlight 'Rushd' and hit 'Start'.

      This starts the daemon, and enables it to start on reboot.

  9. Verify things are working.

    Open a new DOS window and type:

      rush -ping

    If you get any errors, see troubleshooting.

  10. Install the submit scripts for the users

    Use these instructions to install the submit scripts on your file server.

    Then login as a normal user, and verify you can make desktop shortcuts to the submit scripts, and can bring up the interfaces properly.

  11. Handle cross platform configuration issues.

    If you have a mixture of UNIX and WINDOWS machines, see the UNIX CAVEATS below.

  12. Security Issues

    If you're in an environment where security is an issue, then it is advised you enforce the desired read/write permissions on the c:\rush directory, specifically:

    • The following directories and all files in them must be writable by the user the Rushd service is running as:
        c:\rush\var c:\rush\etc

    • Only the following file needs to be writable by 'everyone':
        c:\rush\var\nextport
  13. Submit a test job.

    You can optionally run this test submit script, just to verify jobs can be started, listed, and dumped:

      c:\rush\examples\test-submit

    To submit a real job, similar to what TDs use, you can run this test which includes complete instructions for someone who has never used rush before.

  14. That's it.

    Once you have things working on the first machine, then you can easily install Rush on the rest of the machines using the Network Install instructions below.

  Network Install  

    Once rush is setup and working on one machine, and the C:\RUSH\ETC\HOSTS file contains entries for all the machines on your net, it's then a simple matter of copying the C:\RUSH directory to all the other machines using the following steps.

      NOTE: Be sure you've already installed ActiveState Perl on the other machines before installing Rush.

      ALSO, on the new machines being configured, make sure you disable any software firewalls that might prevent rush from communicating before installing Rush.

    You can automate the Rush install procedure in a number of ways, the following shows how to do it if you're running the 'remote shell' service on the remotes. This way, step #2 can be done with the Windows 'rsh' command.

    1. Copy the entire C:\RUSH directory from the license server to the remote machines using XCOPY.

      Example:

        xcopy /e /i C:\RUSH \\SOMEHOST\C$\RUSH

      ..where 'SOMEHOST' is the hostname of the remote machine to install on, and 'C$' is the 'share name' the remote machine's C: drive is shared as.

      You can do several machines at once with a command like:

        for %i in ( nt1 nt2 nt3 ) do xcopy /e /i C:\RUSH \\%i\C$\RUSH
    2. Run the install script on each machine.

        cd \rush\etc\bin
        install

      Or you can automate this process using rsh, assuming you have Remote shell services configured on your Windows machines; rsh services are available from the net. One I've used is the Winsock RSHD available from www.denicomp.com.

      An example of automated executing of the install script would be:

        for %i in ( nt1 nt2 nt3 ) do rsh %i c:\rush\etc\bin\install.bat
    3. Configure the username and password for the Rushd service.

      a) Bring up 'Services':

        WIN/NT: Start -> Control Panel -> Services
        WIN/2K: Start -> Control Panel -> Adminsitrative Tools -> Services

      b) Double click on Rushd, and change the settings to:

      	 WORK GROUPS                    NTRUSH NETWORK USER
      	 ---------------------------    ---------------------------
      	 This Account: Administrator    This Account: DOMAIN\rush
      	     Password: <PASSWORD>           Password: <PASSWORD>
      	      Confirm: <PASSWORD>            Confirm: <PASSWORD>
      
      		(Replace DOMAIN with your Windows domain name)
      	 
    4. Start the service by clicking 'Start'.

      NOTE: You can also stop/start the rushd service from the DOS command line via:

        net stop rushd
        net start rushd
    5. Check the daemon logs for errors.

      Look in the c:/rush/var/rushd.log files.

      Common errors (and their soultions) can be found in the Admin FAQ.

    6. Verify all the daemons have started.

      You can 'ping' all the machines you have configured in the rush/etc/hosts file with a single command:

        rush -ping +any -t 5

  Uninstalling Rush  

    1) Run the C:\RUSH\ETC\BIN\UNINSTALL.BAT script
    2) Remove the C:\RUSH directory

    Note: You will *NOT* need to reboot after an uninstall.
    

  Install Caveats  

    If you plan to use Perl on Windows, it is highly suggested you use
    ActiveState Perl, since it is the best implementation of perl for the
    Windows platform in general. Rush does not care which perl you use,
    but some perl implementations are inherently buggy, experience has shown.

    If you have a mixture of unix and NT machines, you need to avoid
    this problem, so be sure:

        o Your unix machines have a valid user called 'rush', 'render' or similar.

        o The uid/gid for this user is 100/100 (default), or configured in the 
	  C:\RUSH\ETC\RUSH.CONF file for ntrushuid and ntrushgid, 
	  and that user has a valid account with the same uid/gid values
	  on all unix machines.

        o Both Unix and Windows have the same 'rush.conf' and 'rush hosts' 
	  files, e.g.:
	      > C:\RUSH\ETC\RUSH.CONF is the same as /usr/local/rush/etc/rush.conf
              > C:\RUSH\ETC\HOSTS is the same as /usr/local/rush/etc/hosts

        o Both Unix and NT machines can resolve each other's hostnames, 
          eg. you can 'ping' nt machines from unix, and vice versa.
    

  Installing www-rush  

    www-rush is the optional web GUI, which has pretty much been superceded
    by the newer GUI irush that comes with the rush installation.

    However, if you want to set up the web GUI which allows people to
    monitor and control render queue jobs remotely via Netscape,
    for docs on the GUI itself, see the www-rush docs.
    
    'www-rush' is a single perl script found in /rush/cgi-bin/www-rush.pl,
    and should be installed on your internal network's web server.

    It has been tested to work with either Apache/unix, or IIS/NT.
    (IIS is Microsoft's web server that comes with NT Server)

    www-rush will work with IIS, provided:

        o You have properly installed IIS, and enabled 'cgi-bin' scripts.

        o You have installed ActiveState perl (www.activestate.com).
          On install, be sure to enable the check flags for IIS.

        o You have installed rush on the server, and have included 
          the server's hostname in the /rush/etc/hosts file.

        o You view www-rush with Netscape. (Explorer has problems)

    Then it's just a matter of putting the www-rush.pl script in IIS's 
    /inetpub/scripts/ directory, tweaking variables at the top if need be.

    To install www-rush on an Apache web server, just put www-rush.pl
    in the cgi-bin directory, like any other cgi-bin script.
    

  Legacy Docs  

    Some old legacy docs are here which show how to manually configure 
    the service. These docs are no longer recommended.
    

  Trouble Shooting  

    Check the Admin FAQ for common problems.

    If you have installed the software, and started the daemon, you should
    be able to open a new DOS window, and be able to run 'rush -ping' 
    to see the following (or similar) output:

        C:\rush>rush -ping
        myhost: RUSHD 102.20b PID=166     Boot=03/13/01,02:08:52  Online, 0 jobs, 0 procs

    Some common errors:

        o "The name specified is not recognized as an
          internal or external command, operable program or batch file."

          Make sure you ran the install.bat script first. It modifies your path
          to include C:\RUSH\BIN. After you run this script, CLOSE the current dos window,
	  and open a new one, so that "rush" will now be in your path.

        o "Connection refused"

          This means the daemon did not start. Look in C:\RUSH\VAR\RUSHD.LOG for
          error messages, and send them to:

              Greg Ercolano
              

    Possible error messages in the C:\RUSH\VAR\RUSHD.LOG

        o "HOST_GetLocalHostname(): NO LOCAL HOST --- ABORT ---"

          This means the local hostname for the machine is not in the
          C:\RUSH\ETC\HOSTS file. If the local host is named farm37, then
          make sure farm37 is an entry in that file.

        o "bind(): address already in use"

          This means there are either two daemons running, or you need
          to wait a few minutes if you just told the daemon to restart.

    Make sure you configured the Administrator user and password for
    the service in the Control Panel->Services->Rushd screen.
    

  Problems With Houdini  

    It seems for a while now, houdini's setup has some kind of bug
    that breaks the PATH for DOS shells. After installing houdini,
    one finds commands like 'ping' and 'nslookup' no longer work,
    and are 'unknown commands'.

    Houdini's setup program does something that breaks the PATH,
    such that important things like C:/WINNT/SYSTEM32 are no longer
    in the path.

    To fix the problem in WINNT:
    
        1) Go into Control Panel -> System -> Environment

        2) Add C:/WINNT/SYSTEM32 to the "System Variables"
           PATH. Be sure to include the proper semicolons to separte
           this new addition from the other paths. 

        3) Hit APPLY, then OK.

        4) Now open a NEW DOS WINDOW, and try invoking 'ping'.
           If done correctly, 'ping' should print out a help report.
           If done incorrectly, 'ping' will still give a command not
           found error.

    To fix the problem in Windows 2000:

        Go into Control Panel -> System -> Advanced -> Environment Variables
        and follow steps 2 through 4 above.