Setting up R-GMA on UI v1.4.0 on RH 6.2 [Had a lot of trouble with this because of hard wired env. vars and cshrc, but I think I understand them now. Currently working with the old tomcat, not tried again with the new one yet.] For R-GMA, a UI only needs the API to be able to talk to an R-GMA "server" (i.e. Tomcat and the R-GMA servlets), but if there is no suitable server available at your site then you can install one on your UI (will need inbound access to port 8080). If there are servlets already running at your site then connect to those instead - you won't then need Tomcat. Servlets might be on a CE or possibly an SE, which might be less busy, but I suspect it best for each site to provide one separate extra set for any UIs, network monitoring, etc. Java (available in the UI external collection): j2sdk-1.4.1-fcs.i386.rpm j2sdk_profile-1.4.1-1.noarch.rpm (You can get away with only the run-time env. jre if you will always use non-Java APIs to R-GMA. Remember to remove kaffe first if it is already installed...) MySQL (in the UI external collection, recent ones give trouble on RH 6.2): MySQL-3.23.42 MySQL-client-3.23.42-1 MySQL-devel-3.23.42-1 MySQL-shared-3.23.42-1 mm.MySQL (JDBC driver for MySQL, available from WP6 after much hunting): mm.mysql-2.0.6-2 Tomcat /* (in the UI external collection): tomcat4-4.0.4-full.3jpp.noarch.rpm will need to change ownership of config files (server.xml) in /var/tomcat4/conf/ to 'tomcat4' If removing previous tomcat, rpm -ev leaves 'tomcat' in /etc/rc.d/init.d R-GMA version 2.2.4-12 fails at rgma-config: /var/tomcat4/conf/server.xml updated Setting up .props files in /root Starting catalina execvp: No such file or directory [FAILED] Abnormal termination Hunt about: tomcat4-4.0.6-full.1edg.noarch.rpm >>Once this rpm has been installed please read the instructions given by >>the rpm. It tells you to create a file /etc/java.conf. This file should >>contain the location of java eg. JAVA_HOME=/usr/java/j2sdk1.4.1 Stop tomcat4 service, and ensure tomcat4 user can read config files (server.xml) in /var/tomcat4/conf/ (don't chown/chgrp to 'tomcat4' as R-GMA must still configure) */ Stick to old tomcat- Tomcat (in the v1.2.x UI external collection): tomcat-4.0.0-edg2 [ I've also got Apache: apache-1.3.22-5.6 apache-devel-1.3.22-5.6 ] You will need to install and configure (Apache and) MySQL. Tomcat only needs install (rpm -ivh ...) - it is configured and started up by R-GMA's setup script. Get latest R-GMA from http://hepwww.rl.ac.uk/DataGridMonitoring/rpms/index.html server+Java API: ant-1.4-2 (ant-1.5-5jpp complains: jaxp_parser_impl is needed by ant-1.5-5jpp) junit-3.8.1-1jpp log4j-1.2.6-1jpp Xerces-J-1.4.3-edg1 edg-rgma-api-java-2.2.4-12 edg-rgma-common-2.2.4-12 edg-rgma-demo-2.2.4-12 edg-rgma-servlets-2.2.4-12 edg-rgma-tools-2.2.4-12 C++ API: cppunit-1.6.2-1 log4cpp-0.2.7-3 (available from WP6 after poking round) log4cpp-devel-0.2.7-3 (available from WP6 after poking round) xerces-c-1.7.0-1 (available from WP6 after poking round) xerces-c-devel-1.7.0-1 (available from WP6 after poking round) edg-rgma-api-cpp-2.2.4-12 Other APIs: edg-rgma-api-c-2.2.4-12 SWIG-1.3.11-edg1 edg-rgma-api-perl-2.2.4-12 edg-rgma-api-python-2.2.4-12 As root: Edit and replace whole {URI} for Schema and registry servers to be used in /opt/edg/etc/info/rgma-schemaBrowser.xml.in - note this includes servlet path and name (/R-GMA/SchemaServlet, etc.). This is probably http://infocat.gridpp.ac.uk:8080/R-GMA/SchemaServlet [This is young.brunel.ac.uk for CMS/BOSS test] [poss. spare: gw33.hep.ph.ic.ac.uk:8080] [ general: infocat.gridpp.rl.ac.uk:8080] Run /opt/edg/bin/rgma-config and give requested info - e.g. Registry to be used infocat.gridpp.ac.uk (no port no.) Check all file locations/paths asked for are correct - not everything is updated if the script is run again... Tomcat tomcat4-4.x won't start properly... will need to change ownership of config files (server.xml) in /var/tomcat4/conf/ to 'tomcat4' If any C-shell users, chmod 755 /opt/edg/etc/info/rgma-setup.sh source it and _source_ it in root's .bashrc If any C-shell users, copy /opt/edg/etc/info/rgma-setup.sh as /opt/edg/etc/info/rgma-envvars.csh and convert variable exports to setenv's, ditching the rest. Stop Tomcat * in /opt/edg/share/info/webapps, edit ArchiverServlet/WEB-INF/web.xml to fully-qualified domain name for registry. repeat for other servlets * in /opt/edg/etc/info edit Archiver.props to include fully qualified domain name for user servlet host. repeat for CircularBufferProducer.props Consumer.props and DataBaseProducer.props . (libwww is a bit dense and needs the full DN to match the no_proxy variable) In /opt/edg/bin/pulse.sh, check that jar files are correct. Start Tomcat /* 7/1 - none of servlets work 8/1 - no servlets available - can't open some file In localhost_log, DBProducer and Archiver are OK but Consumer, Producer, Registry and Schema all fail with 2003-01-08 19:12:22 StandardWrapper[/R-GMA/ConsumerServlet:ConsumerServlet]: Marking servlet ConsumerServlet as unavailable 2003-01-08 19:12:22 StandardContext[/R-GMA/ConsumerServlet]: Servlet /R-GMA/ConsumerServlet threw load() exception javax.servlet.ServletException: Error instantiating servlet class org.edg.info.ConsumerServlet at org.apache.catalina.core.StandardWrapper.loadServlet(Unknown Source) at org.apache.catalina.core.StandardWrapper.load(Unknown Source) at org.apache.catalina.core.StandardContext.loadOnStartup(Unknown Source) at org.apache.catalina.core.StandardContext.start(Unknown Source) at org.apache.catalina.core.ContainerBase.start(Unknown Source) at org.apache.catalina.core.StandardHost.start(Unknown Source) at org.apache.catalina.core.ContainerBase.start(Unknown Source) at org.apache.catalina.core.StandardEngine.start(Unknown Source) at org.apache.catalina.core.StandardService.start(Unknown Source) at org.apache.catalina.core.StandardServer.start(Unknown Source) at org.apache.catalina.startup.Catalina.start(Unknown Source) at org.apache.catalina.startup.Catalina.execute(Unknown Source) at org.apache.catalina.startup.Catalina.process(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.Bootstrap.main(Unknown Source) ----- Root Cause ----- java.lang.NoClassDefFoundError: org/edg/info/RGMAException at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:1590) at java.lang.Class.getConstructor0(Class.java:1762) at java.lang.Class.newInstance0(Class.java:276) at java.lang.Class.newInstance(Class.java:259) at org.apache.catalina.core.StandardWrapper.loadServlet(Unknown Source) at org.apache.catalina.core.StandardWrapper.load(Unknown Source) at org.apache.catalina.core.StandardContext.loadOnStartup(Unknown Source) at org.apache.catalina.core.StandardContext.start(Unknown Source) at org.apache.catalina.core.ContainerBase.start(Unknown Source) at org.apache.catalina.core.StandardHost.start(Unknown Source) at org.apache.catalina.core.ContainerBase.start(Unknown Source) at org.apache.catalina.core.StandardEngine.start(Unknown Source) at org.apache.catalina.core.StandardService.start(Unknown Source) at org.apache.catalina.core.StandardServer.start(Unknown Source) at org.apache.catalina.startup.Catalina.start(Unknown Source) at org.apache.catalina.startup.Catalina.execute(Unknown Source) at org.apache.catalina.startup.Catalina.process(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.catalina.startup.Bootstrap.main(Unknown Source) Looks like a paths problem because some env vars not being updated from rgma-setup.sh into csh. */ As user: run /opt/edg/bin/rgma-config source ~/rgma-setup.sh and add to .bashrc or run it and call it in .cshrc; source /opt/edg/etc/info/rgma-envvars.csh in .cshrc and make sure paths get updated somewhere. young ~> /opt/edg/sbin/check-rgma-config client * Warning * OS := Linux 2.2.22-6.2.3 and should be one of ['^Linux 2.4.9', '^Linux 2.4.18-3'] * Warning * gcc version := package edg-compile is not installed and should be one of ['fixme', 'FIXME'] * Warning * /root/rgma-setup.sh exists := 0 and should be 1 * Warning * /usr/java/JavaCC exists (from JAVACC_HOME) := 0 and should be 1 and the servlets are running: young: ~> /opt/edg/sbin/check-rgma-config user-servlets * Warning * OS := Linux 2.2.19-6.2.16 and should be one of ['^Linux 2.4.9', '^Linux 2.4.18-3'] Try http://young.brunel.ac.uk:8080/R-GMA/ProducerServlet/getStatus and get CircularBufferProducerServlet OK pulse.sh "/opt/edg/etc/info/rgma-schemaBrowser.xml" should connect to Schema server and show it OK. (In 1.2.0beta I tried installing JavaCC-2.1-edg1 and seting the env. var, this fixes warning but not other errors. Not needed unless developing R-GMA.) # obj-rgma* for LCFG use - ignore.