This page describes how to checkout, build and deploy the ACME meta-project onto the SPLTS cluster. You will be able to view deployed MBeans via their JMX consoles. A tidy Table of Consoles is available for you to reach the nodes directly. Your SSH Tunnels must be setup before hand.
Since the SPLTS cluster is designed for development and testing, the odds are good that someone else is mucking around with DAQ compononents. It has been decided that whenever something major is planned for the SPLTS cluster, it be announced on the icecube-daq-dev Jabber room on the jabber.dsd.lbl.gov server.
A simple note telling other users of your intentions and time frame for deployment will suffice. It is understood that during this time, the cluster is "Hands Off" to other users and any jboss-centric processes will be stopped as needed.
Before any portion of the deployment is started, you need to setup some
SSH tunnels into specific nodes. This will make moving files around much easier
and is required in some automation scripts invoked later in these
directions.
This will require starting multiple terminal windows on your local
workstation, one per SSH connection. You may automate this step as needed. One
ssh command per new terminal window:
$ ssh splts-access
$ ssh splts-dbs
$ ssh splts-evbuilder
$ ssh splts-ichubXX (all hubs)
$ ssh splts-stringprocXX (all stringprocs)
$ ssh splts-expcont
Once your tunnels are established, an ssh-agent should be started on the access node for the jboss user. This is to handle the distribution of files out to the nodes.
USER@sptls-access[user] su - jboss
jboss@sptls-access[icecube] exec ssh-agent bash
jboss@sptls-access[icecube] ssh-add
With the proper passwords provided, you will have an agent running for the duration for the deployment. The agent is killed once the jboss user exits from this su session.
Create a new dir for the ACME workspace (so it doesn't conflict with other bfd/cvs projects you may be working on)
jboss@sptls-access[icecube] mkdir ACME_REDBAG-00-01
jboss@sptls-access[icecube] cd ACME_REDBAG-00-01
I assume you are running ssh-agent and loaded it with a key which your account on glacier trusts, as described here, though not specific to glacier.
jboss@sptls-access[ACME_REDBAG-00-01_ws] bfd co -r REDBAG-00-01 ACME
jboss@sptls-access[ACME_REDBAG-00-01_ws] mkdir tools
jboss@sptls-access[ACME_REDBAG-00-01_ws] cp ACME/.bc.tools tools/tools_to_install
Edit the new tools_to_install file and change the ANT_VERS to '1.6.0' and the ICECUBE_VERS to '0.6.1'.
You can now correctly initialize the workspace.
jboss@sptls-access[ACME_REDBAG-00-01_ws] bfd init $ICECUBE_TOOLS
jboss@sptls-access[ACME_REDBAG-00-01_ws] source setup.sh
jboss@sptls-access[ACME_REDBAG-00-01_ws] ant -f ACME/ACME-build.xml
The order here may look a bit backwards, but this allows the intended build state of ACME to be preserved in new BFD workspaces.
ACME requires a current version of DAQ-PROD to be deployed on the cluster in order to function properly. It is a sure guarantee that a DAQ-PROD workspace is nearby in the jboss home dir. You will need to temporarily move into that DAQ-PROD workspace and initialize the DB from there.
With JBoss running (so the Postgres DB is visible to JBoss) run the daq-db-init.sh program.
jboss@sptls-access[ACME_REDBAG-00-01_ws] cd ../DAQ-PROD-???_ws/daq-db-init
jboss@sptls-access[daq-db-init] ./daq_db_init.sh -f ../../ACME_REDBAG-00-01/acme-configuration/resources/jar/script.sql
If you see SQLExceptions, try running the command again, it should run without any errors.
Strictly speaking, this is only needed if one of the *.sql files have been modified since the last time you initialized the DB. It doesn't hurt to re-initialize it, so feel free to do it if you have any doubt.
Now deploy the new ACME from splts-access.
jboss@sptls-access[daq-db-init] cd ../../ACME_REDBAG-00-01/deployment/SPLTS
jboss@sptls-access[SPLTS] ./deploy-daq.sh -tqe
jboss@sptls-access[SPLTS] ./deploy-daq.sh -tq
At this point you have now deployed a new ACME onto the SPLTS cluster. You should see deployment info scroll by on each terminal window for the cluster nodes. Any errors should be noted and passed onto the responsible developer. Being an announced ACME release, the amount of errors should be either ignorable, or non-existent!
You can now start the Web portal on SPLTS. If it is not installed on the expcont node, this will not harm the rest of the deployment.
jboss@sptls-expcont[icecube] jboss -t