Application Delivery Management
Application Modernization & Connectivity
CyberRes
IT Operations Management
This is the last in my series of OES2 Rolling cluster upgrade from NetWare. The setup we had was a NetWare 6.5.8 cluster where we had copied the entire iPrint web code on Apache to a clustered NSS volume. We then adjusted the NetWare Apache code to use that clustered NSS volume as its document root.
However, when converting to OES2 Linux, Apache has to be clustered differently. While there is no migration utility for the actual iPrint Map code (meaning there's an iPrint map generator utility that makes HTML “maps” for your iPrint printers to be used). And we did not have the time to install iPrint on OES2 and regenerate maps for the 13 floors of our building. As such, we decided to take the EXISTING NetWare iPrint map code and NSS volume and simply tell Apache on OES2 to use that existing cluster resource.
Since this is a rolling cluster upgrade, this is one part of the upgrade process that could not be run on the OES2 nodes. So we saved this for last. Basically we had an NSS cluster resource that simply ran a separate instance of Apache on NetWare. Prior to migrating our very last NetWare server, we had to take the following into consideration:
Our existing iPrint resource is called: CS1-IF1
We also use this iPrint web server to run a “download” website for our users.
We chose 3 servers that did NOT host iPrint. We then chose the primary node and located the following file:
/etc/apache2/vhosts.d/vhosts.template
We're going to copy that file to:
/etc/apache2/vhosts.d/myvhost.conf
(ie, this is basically changing the name of the file and it's location).
We will then adjust the myhost.conf file to fit our needs.
The key items to change:
<VirtualHost *:80> section
We need to change:
ServerName
DocumentRoot
And the:
<Directory> statements
Now we go on to the <Directory> definitions
We define the paths for the software depot and the iPrint map pages up above.
Because the data is on an NSS volume, we need to give rights to the Apache user to access this data.
You can use the Novell Client, iManager, etc. to give rights.
You want to grant the wwwrun user RF rights to the directories defined in the conf file above.
Simply copy the adjusted myvhost.conf to the subsequent cluster node's:
/etc/apache2/vhosts.d/
directory.
Then restart Apache on the cluster node.
You shouldn't have to assign the file rights but once because we've assigned rights to the CLUSTERED resource.
Apparently the key is to make sure you restart Apache AFTER loading the cluster resource (so it “sees” the /media/nss/WHATEVER volumes). You also have to restart Apache AFTER removing stuff so it doesn't freak out in your unload scripts:
LOAD SCRIPT:
## Load script (with modifications) ##
#!/bin/bash
. /opt/novell/ncs/lib/ncsfuncs
exit_on_error nss /poolact=IFPOOL
exit_on_error ncpcon mount IF1=248
exit_on_error add_secondary_ipaddress 10.10.1.137
exit_on_error ncpcon bind --ncpservername=CS1-IF1 --ipaddress=10.10.1.137
exit_on_error /etc/init.d/apache2 restart
exit 0
UNLOAD SCRIPT:
## Unload script (with modifications) ##
#!/bin/bash
. /opt/novell/ncs/lib/ncsfuncs
exit_on_error /etc/init.d/apache2 restart
ignore_error ncpcon unbind --ncpservername=CS1-IF1 --ipaddress=10.10.1.137
ignore_error del_secondary_ipaddress 10.10.1.137
ignore_error nss /pooldeact=IFPOOL /override=question
exit 0