Software Requirements
To install GridSphere you will need the following softwarepackages
- Ant 1.6
- Java Version 5
- A Servlet container meeting the Servlet Spec 2.4. we do recommand Jakarta Tomcat, every other servlet container will work as well, just the deployment process needs to be done by hand, since the directories for deploying the jars to the container differ among the implementations GridSphere comes out of the box with support for 5.0.x and 5.5.x.
For the rest of this chapter we will assume that Tomcat is installed to /usr/local/tomcat and GridSphere to /usr/local/tomcat/webapps/gridsphere. Furthermore ant is assumed to be installed in /usr/local/ant. Neither Tomcat nor GridSphere need to have special user permissions. You can run them as a regular user.
We do strongly recommend to use a plain Apache Jakarta Tomcat installation. We know that some Linux distribution (namely Suse Linux) use some heavy softlinking which in some cases can cause problems installing GridSphere.
Installation
You can either download the softwarepackage as source from the website or get the newest code from our subversion repository.
or
After downloading and unpacking the archive you need to set the environment variable APPSERVER_HOME to the directory where your servlet container is deployed. This is either CATALINA_HOME for a tomcat installation or the root directory of the jetty servlet server.
setenv APPSERVER_HOME /usr/local/tomcat
Depending on your ant installation you might need to set the environment variable ANT_HOME pointing to your root directory of the ant installation.
setenv ANT_HOME /usr/local/ant
GridSphere comes preconfigured for Jakarta Tomcat Servlet container. If you want however deploy it the jetty container you need to modify one line in the build.properties file.
% ls listing
> ls -l
-rw-r--r-- 1 wehrens wehrens 4661 Mar 9 12:01 ChangeLog.txt
-rw-r--r-- 1 wehrens wehrens 2262 Feb 9 00:13 INSTALL.txt
-rw-r--r-- 1 wehrens wehrens 5484 Mar 9 12:01 LICENSE.txt
-rw-r--r-- 1 wehrens wehrens 1189 Feb 9 00:13 README.txt
drwxr-xr-x 7 wehrens wehrens 238 Apr 26 10:31 build
-rw-r--r-- 1 wehrens wehrens 1062 Apr 12 12:18 build.properties
-rw-r--r-- 1 wehrens wehrens 9700 Apr 12 12:18 build.xml
drwxr-xr-x 7 wehrens wehrens 238 Feb 9 00:09 config
drwxr-xr-x 40 wehrens wehrens 1360 Apr 12 12:18 lib
drwxr-xr-x 27 wehrens wehrens 918 Apr 19 14:45 projects
drwxr-xr-x 5 wehrens wehrens 170 Feb 9 00:13 src
drwxr-xr-x 4 wehrens wehrens 136 Feb 9 00:09 tests
drwxr-xr-x 6 wehrens wehrens 204 Apr 12 12:18 webapps
Change the following line
# possible options are jetty, tomcat
gridsphere.appserver=tomcat
to
# possible options are jetty, tomcat
gridsphere.appserver=jetty
Having set the variables you are ready to run
to deploy GridSphere to the servlet container.
That's it.
Everything which is left is starting up the container.
This is done for tomcat by
$APPSERVER_HOME/bin/startup.sh
or
$APPSERVER_HOME\bin\startup.bat
on Microsoft Windows. Of course you can also you the graphical tools that come with the Apache Tomcat installation on this Operating System (and this might be the easiest anyway).
Tomcat specific features
We do recommend to use Tomcat as your servlet container of choice for GridSphere. This will give you the opportunity to use the portlet restart feature of the portal framework. This is specific to the servlet container and is currently only implemented for Tomcat. To enable this feature you need to modify CATALINA_HOME/conf/tomcat-users.xml and included the following line
<user username="gridsphere" password="gridsphere" roles="manager,admin"/>
You must edit the file webapps/gridsphere/WEB-INF/GridSphereServices.xml and edit the user name and password used in the first Portlet Manager Service entry to be the name and password used in the tomcat-users.xml.
Database configuration
GridSphere comes with a preinstalled Java Relation Database Management System (RDBMS) . It is using HSQL to provide the initial setup and to get you started. For the first steps using GridSphere this is sufficient and you can skip the rest of this section. If you however want to use a different database you can switch to it very easily. We strongly do recommend that if you want to run GridSphere in a production environment.
GridSphere supports
- IBM DB2
- Oracle 9, 10
- Microsoft SQLServer
- MySQL
- ...
To change the underlying RDMBS you need to edit the hibernate.properties file in /webapps/gridsphere/WEB-INF/CustomPortal/database. As said above if comes configured for HSQL. However we do provide the example configurations for MySQL, McKoi and PostgreSQL.
To use MySQL simply comment the HSQLDB lines and use the section on MySQL
hibernate.dialect net.sf.hibernate.dialect.MySQLDialect
hibernate.connection.driver_class org.gjt.mm.mysql.Driver
hibernate.connection.driver_class com.mysql.jdbc.Driver
hibernate.connection.url jdbc:mysql:hibernate.connection.username <USERNAME>
hibernate.connection.password <PASSWORD>
For every database you want to use you need to download the jdbc driver from your vendor first and put it in the lib/dir of GridSphere. Furthemore you need to configure the databaseuser specified in these settings correctly (also make sure this user has correct access permissions).
Migrating Databases from HSQL to MySQL (or any other combination) is not in the scope of GridSphere. You would have to dump the existing database and reimport that dump into the database of your choice. We have did take care not to use SQL keywords reserved in the different database implementations so reimporting a dump should be straight forward.