Table of Contents
caGrid Production VM Release Notes
The following steps describe how to install the cagrid-production virtual machine.
Acquire the VM
- Download the vm image tarball to the VM image hosting location on your platform
wget http://138.26.125.70/vm/cagrid-production-0.1.tar.gz
- Unpack the image
tar -xzf cagrid-production-0.1.tar.gz
- This will create a directory cagrid-production that contains the VM description file cagrid-production.vmx.
- Add this to your VM collection by opening the vmx file via your VM console interface
Configure the VM
In order to configure the VM, it's necessary to first boot into single user mode in order to customize the IP address and host name configuration for your environment.
- Start the newly loaded VM
- At the Grub boot prompt press ESC to stop the default boot process
- Press e to edit the selected (default) boot entry
- Scroll to the line that begins with kernel and press e to edit the boot parameters
- Add the word single to the end of the boot arguments
- Press enter to save the changes
- Press b to begin the boot process
- The VM will complete the boot into single user mode and present a command-line for root. It is now ready for the following configuration steps.
Network Configuration
Change the IP address and host name at the following locations
- /etc/hosts (ip addr + hostname)
- /etc/sysconfig/network-scripts/ifcfg-eth0 (ip addr)
- /etc/sysconfig/network (hostname)
The host firewall is pre-configured with the following ports open to support the production services of the VM. You need to ensure that other network firewalls are configured to reflect this port profile.
- Standard system service ports
- 5353 (DNS)
- 123 (NTP)
- 22 (SSH)
- End-user web applications for demonstration caBIG applications (caArray and User Provisioning Tool (UPT))
- 38080 (caArray)
- 46210 (UPT)
- caGrid data services for the production caGrid environment (these are the interfaces accessed from caBIG).
- 8080 (Labkey)
- 18080 (caArray)
After making sure the firewall is configured, need to bring up the machine with the network service on. Building the services without the network connection results in a build failure. A bug on this failure has been documented here.
Boot the machine at this point in multi user mode,. which will bring up the network service.
init 3
VMWare Tools Configuration
Sync the VM time with the ESXi Server Time
- From the ESXi Server GUI, select the cagrid VM, right-click, and select Install VMware Tools
- Open the VM console and login as root
- Mount the virtual cdrom device
mount /dev/cdrom /mnt
- Install the VMWare Tools
rpm -ivh /mnt/VMWareTools.........rpm
- Execute the vmware tools script and change/keep the guest x resolution
vmware-config-tools.pl
- The script adds the vmware tools as a system service and starts the service. Check for the service
chkconfig --list | grep -i vm
caArray Service
The caArray service embeds the host name and IP address in its binaries. Therefore, whenever we change these values for the host we need to rebuild caArray so the binaries use the new values.
Backup the Database
Before rebuilding the caArray service, we need to back up the existing caArray database since it is destroyed during the rebuild.
cd /usr/local/mysql/data date=`date +"%Y%m%d"` tar -cf caarray-backup-$date.tar caarray
After the data is protected, we can drop the existing database to ensure a clean build
mysql -u root -p mysql> drop database caarray;
Rebuild caArray
The rebuild requires that we change IP address in the services install.properties file to the new IP address of your host.
- Change to the caArray account
su - caarray cd src/caarray2
- Set a variable with the new IP address and patch the file
newip=12.34.56.78 # this is whatever your new IP address is patch --ignore-whitespace --backup install.properties << EOF 4c4 < application.host.ipaddr=138.26.125.99 --- > application.host.ipaddr=$newip EOF
- Rebuild the service
ant
- Exit from the caarray account
exit
Restore the Database
Restore the caarray database so that it contains the test data to query the caArray service from the caBIG portal
cd /usr/local/mysql/data tar -xf caarray-backup-$date.tar caarray
Change Service Metadata
- Re-building of caBig services (caArray/caTissue), changes the service metadata, by overwriting the Point of Contact information with those of NCI's. Hence, after re-building the caArray/caTissue, need to edit serviceMetadata.xml to contain the following point of contact information
<ns1:hostingResearchCenter> <ns15:ResearchCenter displayName="UAB Comprehensive Cancer Center" shortName="UAB-CCC" xmlns:ns15="gme://caGrid.caBIG/1.0/gov.nih.nc i.cagrid.metadata.common"> <ns15:Address country="US" locality="Birmingham" postalCode="35233" stateProvince="AL" street1="1802 6th Avenue South" street2=""/> <ns15:pointOfContactCollection> <ns15:PointOfContact affiliation="Staff" email="John.Sandefur@ccc.uab.edu" firstName="John" lastName="Sandefur" phoneNumber="205-9 96-5236" role="Information Systems Manager/caBIG Deployment Lead"/> <ns15:PointOfContact affiliation="Staff" email="bebrake@.uab.edu" firstName="Bobby" lastName="Brake" phoneNumber="205-934-4980" ro le="Assistant Director, Infrastructure Services"/> </ns15:pointOfContactCollection> </ns15:ResearchCenter> </ns1:hostingResearchCenter>
- For caArray
su - caarray cd /home/caarray/apps/caarray2/jboss-4.0.4.GA/server/default/deploy/wsrf.war/WEB-INF/etc/cagrid_CaArraySvc/
- Edit serviceMetadata.xml with the above point of contact information
Change System Passwords
Before starting the VM you should change the default passwords delivered with the VM. The passwords for root, cagrid, and the JBoss containers should be changed at this point. The UPT and caArray passwords should be changed after reboot.
- System passwords
passwd root passwd cagrid
- Jboss container passwords - edit the following files to change the passwords contained in those files (Note: these passwords are maintain in clear text so simply replace the password values with the new ones
- For caArray WebApp:
/home/caarray/apps/caarray2/jboss-4.0.5.GA/server/default/conf/props/jmx-console-users.properties /home/caarray/apps/caarray2/jboss-4.0.5.GA/server/default/conf/props/web-console-users.properties
- For caArray data service:
/home/caarray/apps/caarray2/jboss-4.0.4.GA/server/default/conf/props/jmx-console-users.properties /home/caarray/apps/caarray2/jboss-4.0.4.GA/server/default/conf/props/web-console-users.properties
- For UPT:
/home/upt/apps/upt/jboss-4.0.4.GA/server/default/conf/props/jmx-console-users.properties /home/upt/apps/upt/jboss-4.0.4.GA/server/default/conf/props/web-console-users.properties
- For caArray WebApp:
Reboot the VM
The VM is now ready to be brought into full operation. Enter reboot at the command prompt and wait for the machine to enter full operation.
Working with the VM
By default, booting the VM turns on all necessary caBIG services which automatically register themselves with the caBIG portal. After the machine has booted completely, the services registered with the new IP address should show up on the map in the portal.
With the machine in full operation you will be able to access the caArray and UPT applications via your browser at
You should change the default passwords for the UPT superadmin and caarray accounts and use UPT to change the passwords for the existing caArray demo accounts or to create new accounts. Information on UPT can be found here.
Diagnostics Checks for Grid Services
Once the grid services for caArray/caTissue/Labkey are configured and their respective publish containers started, we can perform some diagnostics checks.
From the cagrid Portal:
- Go to the caGrid Services tab
- At the Service Diagnostics section, type the url in the Service URL field
- For caArray, the service url is:
http://your.host.name:18080/wsrf/services/cagrid/CaArraySvc
- For Labkey, the service url is:
http://your.host.name:8080/wsrf/services/cagrid/Cpas
* We can replace the hostname with the IP address as well
From command line, using Globus commands. We have a Globus container in /home/labkey. Hence, we can execute all our queries from labkey account. So, switch to labkey first. All the below commands are from caBig Portal Troubleshoot Guide
su - labkey
- Verify your Grid service is registering with the Index service
$GLOBUS_LOCATION/bin/wsrf-query -a -z none -s http://cagrid-index.nci.nih.gov:8080/wsrf/services/DefaultIndexService | grep "<ns8:Address xmlns:ns8" | cut -d'>' -f2 | cut -d'<' -f1 | sort > all_grid_services.txt
- grep for uab in the output file all_grid_services.txt
- Make sure the service's metadata is accessible
- For caArray service:
$GLOBUS_LOCATION/bin/wsrf-get-property -a -z none -s http://your.host.name:18080/wsrf/services/cagrid/CaArraySvc {gme://caGrid.caBIG/1.0/gov.nih.nci.cagrid.metadata}ServiceMetadata - For labkey service:
$GLOBUS_LOCATION/bin/wsrf-get-property -a -z none -s http://your.host.name:8080/wsrf/services/cagrid/Cpas {gme://caGrid.caBIG/1.0/gov.nih.nci.cagrid.metadata}ServiceMetadata
- For caArray service:
- Make sure the service's Domain Model is accessible (if the service is a Data Service)
- For caArray service:
$GLOBUS_LOCATION/bin/wsrf-get-property -a -z none -s http://your.host.name:18080/wsrf/services/cagrid/CaArraySvc {gme://caGrid.caBIG/1.0/gov.nih.nci.cagrid.metadata.dataservice}DomainModel - For labkey service:
$GLOBUS_LOCATION/bin/wsrf-get-property -a -z none -s http://your.host.name:8080/wsrf/services/cagrid/Cpas {gme://caGrid.caBIG/1.0/gov.nih.nci.cagrid.metadata.dataservice}DomainModel
- For caArray service:
- Verify that the Index service is seeing your service
$GLOBUS_LOCATION/bin/wsrf-query -a -z none -s http://cagrid-index.nci.nih.gov:8080/wsrf/services/DefaultIndexService / | grep uab
References
These instructions are derived from the VM construction notes.
