Weekends or mornings are generally a good time to do upgrades.
Here's a brief summary of the upgrade process:
Upgrade the rest of the network
1) Make sure no jobs are running.
o Go into Irush, and click 'All Jobs'.
o Highlight all jobs running, and click the 'Dump' button at the left.
o Repeat 'All Jobs' until no jobs are running.
2) Stop rushd on the license server
/usr/local/rush/etc/S99rush stop
3) Rename out the old version on the license server
mv /usr/local/rush /usr/local/rush.MM-DD-YYYY
4) Extract the new version on the license server
cd /usr/local
tar xvfzp /var/tmp/rush-102.42-XXXXXX.tar.gz
5) Copy over old files
cp /usr/local/rush/rush.MM-DD-YYYY/etc/{hosts,license.dat,.common.pl} /usr/local/rush/etc
6) Manually merge your changes from the old rush.conf file (do not copy the old rush.conf over the new!)
xdiff /usr/local/rush/rush.MM-DD-YYYY/etc/rush.conf /usr/local/rush/etc/rush.conf
The most common rush.conf commands to customize:
ntrushuid \___ Used in mixed environments of Windows and Unix.
ntrushgid / Tells rush what uid/gid to use when running Windows submitted jobs.
forceuid \___ Used to force renders to run as a specific uid/gid
forcegid / on unix machines. (OPTIONAL)
smtpserver \___ Used for rush's mail delivery.
smtpfrom / Set to your mail server, and the 'from' email address for rush emails.
permit ---- Sets the names of users who can administer rush
See the complete rush.conf documentation for more info.
(The documentation shows new or modified commands with red stars)
7) Run the install script
/usr/local/rush/etc/bin/install.sh
8) Start the daemon, verify running OK
/usr/local/rush/etc/S99rush start
Then ping the daemon to see if it started:
rush -ping
If you get any errors, check the rushd.log:
tail -f /usr/local/rush/var/rushd.log
9) Stop rush on all machines
rush -dexit +any -t 5
10) Install new version on each machine
The easiest way to do this is to pick a machine that has the
new version successfully installed (usually the license server),
and use rsh/rcp to distribute the new version to the network:
foreach i ( host1 host2 host3 .. )
echo --- $i
rsh $i mv /usr/local/rush /usr/local/rush.MM-DD-YYYY
rcp -rp /usr/local/rush ${i}:/usr/local/rush
rsh $i /usr/local/rush/etc/bin/install.sh \; /usr/local/rush/etc/S99rush start
end
11) Verify entire network is up.
When you're done, check your work with:
rush -ping +any
..all machines should reply with the NEW version number.
Any that don't, recheck the install manually.
If a machine complains about 'bind(): address in use' for more
than 2 minutes, you may need to reboot that machine.
BACKOUT PROCEDURE
In the event you need to back out the new release, just stop the daemon
on all machines, rename back the old directory, and restart.
Again, start with the license server.