A Link to the Java Web Services Grid Sourceforge page...
Project Info
This project is a Web Service based computational grid infrastructure
written in Java. Once setup, it allows a user to submit job(s) to the
grid to be scheduled for execution on the grid nodes
If there is enough interest in this project, I will continue its development
Things to do:
- fix CVS repositories
- fix 1:1 service to database mapping
- support databases other than mysql
- create a "real" webpage
- create documentation
- etc, etc, etc...
Technologies / packages used
- Java
- Java Web Services
- JAX-RPC
- JAXB
- SAAJ
- Hyperic Sigar
Components
- Job Host - runs submitted executables
- Resource Manager - registry of job hosts
- Job Scheduler - schedules jobs on registered job hosts
- Job Client - command-line interface to grid services
Release Notes (v0.0.1)
Software needed to run:
-----------------------
- J2SE 5.0
http://java.sun.com/j2se/1.5.0/download.jsp
Needed for: JobHost, JobScheduler, ResourceManager, UserAgent
- JWSDP 1.5
http://java.sun.com/webservices/jwsdp/index.jsp
Needed for: JobHost, JobScheduler, ResourceManager, UserAgent
- SUN application server 8.1 2005Q2
http://www.sun.com/software/products/appsrvr/index.xml
Needed for: JobHost, JobScheduler, ResourceManager, UserAgent
- SUN directory server 5.2
http://www.sun.com/software/products/directory_srvr/home_directory.xml
For Linux, download the latest patch (I was able to find 2 patches)
Needed for: ResourceManager
- MySQL Database server
http://www.mysql.com/
Needed for: JobHost, JobScheduler, ResourceManager, UserAgent
- MySQL Connector/J
http://www.mysql.com/products/connector/
Needed for: JobHost, JobScheduler, ResourceManager, UserAgent
Notes / Problems:
-----------------
- Most services are configurable using a config file or through the command
line. The first time a service is installed, it should be configured through
the command-line, which will generate a configuration file for you.
- Java network security settings might need to be tweaked. I don't remember
the process required in order to do this, but I remember having to edit a
configuration file in the J2SE "\lib\security" directory. Only necessary if
strange error messages are being seen when attempting to use the Web services.
- The database design was poorly done. All of the services should be able to
point to a single database, but can't in the current version. I didn't include
columns to uniquely identify what data each service owns, so there is a 1 to 1
relationship between a database and a service. This could easily be fixed, and
wouldn't require large changes to the code. This would be localized to the
Sql.java files associated with each service, and updating the database schema.
- The files needed to distribute the packages are located in the 'jwsgrid' directory.
Everything but the 'src' subdirectory should be included on machines that will
run a service.
Install Info
- Download jwsgrid-0.01.zip
- Put all of the JARs in your classpath
- Deploy service WARs in an application server
- Run JAR for base services
- Services are configured via command-line interface
- SQL / LDAP schemas are generated by service configurators
- Submit jobs via command-line client