Sakai Cluster (TEST)
TEST: Setup Sakai Cluster
The following information describes a Sakai Clustered TEST setup. Once the test is completed, this information will be updated with PRODUCTION relevant information.
Table of Contents
JIRA: SAK-130
Load Balancer
- IP: 169.237.104.20
- DNS: smartsite-test.ucdavis.edu
- TTL: 60 min.
Nodes
- littlejohn
- walton
- braddock
Sakai system user on each node
- User name: sakai
- Home: /ucd/opt/sakai
AFS staging volume
- /afs/.ucdavis.edu/app/sakai-test/staging
- /afs/.ucdavis.edu/app/sakai-test/staging/tomcat
- /afs/.ucdavis.edu/app/sakai-test/staging/config
- /afs/.ucdavis.edu/app/sakai-test/staging/src
AFS content links
- The following soft links need to be created on each node
/var/sakai/content --> /afs/.ucdavis.edu/app/sakai-test/misc/content/smartsite /var/sakai/archive --> /afs/.ucdavis.edu/app/sakai-test/misc/archive/smartsite /var/sakai/ucd-data --> /afs/.ucdavis.edu/app/sakai-test/misc/ucd-data/smartsite /var/melete --> /afs/.ucdavis.edu/app/sakai-test/misc/melete/smartsite/melete /var/meleteDocs --> /afs/.ucdavis.edu/app/sakai-test/misc/melete/smartsite/meleteDocs /var/uploads --> /afs/.ucdavis.edu/app/sakai-test/misc/melete/smartsite/uploads /var/samigo --> /afs/.ucdavis.edu/app/sakai-test/misc/samigo/smartsite
Environment setup
- /ucd/pkg/jdk1.5.0_11
- Create soft-link: /ucd/opt/java5 --> /ucd/pkg/jdk1.5.0_11
- /ucd/pkg/maven-1.0.2
- Create soft-link: /ucd/opt/maven --> /ucd/pkg/maven-1.0.2
Common files in staging area
- /afs/.ucdavis.edu/app/sakai-test/staging/tomcat/..
- apache-tomcat-5.5.17
- /afs/.ucdavis.edu/app/sakai-test/staging/config/..
- bash_profile
- sakai.properties
- start.sh
- stop.sh
- tomcatclean.sh
- sakai.properties
- local.properties
- build.properties
- /afs/.ucdavis.edu/app/sakai-test/staging/src/..
- sakai_2-3-x-XYZ : XYZ represents the test tag e.g. sakai_2-3-x-014
Directory setup on each node
- /ucd/opt/sakai
- build.properties NOTE: In case we need to build the source
- /ucd/opt/sakai/bin
- start.sh
- stop.sh
- tomcatclean.sh
- /ucd/opt/sakai/sakai-home
- sakai.properties
- local.properties
- /ucd/pkg/apache-tomcat
- Ready to run tomcat instance
- /ucd/opt/sakai/etc NOTE: We use this for testing only
- keystore
Detailed file descriptions and content
- bash_profile
PATH=/ucd/opt/java5/bin:/ucd/opt/maven/bin:$PATH MAVEN_HOME=/ucd/opt/maven CATALINA_HOME=/ucd/pkg/apache-tomcat JAVA_HOME=/ucd/opt/java5 JAVA_OPTS=" -d64 -server -Xmx6144m -Xms6144m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=256m -XX:MaxPermSize=512m -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Dsakai.home=/ucd/opt/sakai/sakai-home/ -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9000 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false" MAVEN_OPTS="-Xmx1024m -Xms1024m" export PATH MAVEN_HOME CATALINA_HOME JAVA_HOME JAVA_OPTS MAVEN_OPTS
- start.sh
#!/bin/sh JAVA_HOME=/ucd/opt/java5 CATALINA_HOME=/ucd/pkg/apache-tomcat export JAVA_HOME CATALINA_HOME $CATALINA_HOME/bin/startup.sh
- stop.sh
#!/bin/sh JAVA_HOME=/ucd/opt/java5 CATALINA_HOME=/ucd/pkg/apache-tomcat export JAVA_HOME CATALINA_HOME $CATALINA_HOME/bin/shutdown.sh
- local.properties NOTE: The serverId field is different for each node
# Local server name serverId=littlejohn
FAQ
- Q: How do I know which node I am connected to?
- A: Look at the bottom of the page, where you will see a filed called Server
- e.g. Server littlejohn
Test Plan
Functionality Testing
- 1.0 WebDAV upload/download files and folders on all platforms to MyWorkspace, course, and project sites
- 1.1 Test DropBox
- 1.2 Test Melete
- 1.3 Connect from different systems with different user accounts, e.g. sakaistu1, etc.
- 1.3.1 Test Chat. Chat messages should show up automatically approximately after 10 seconds
- 1.3.2 Test Message Center. Send messages and others should see them after a forum/topic refresh.
Setup and Configuration Testing
- The load balancer keeps track of the client to node forwarding information in a table for
one hour (60 minutes). What happens after 60 minutes? Does the client still connect to the
same node? For example, what happens if a student takes a quiz in Samigo and the client to
node mapping gets reset? Should the Sakai session match the load balancer's "session" timeout?