              Apache Distributed UIMA Cluster Computing (DUCC) Version 1.1.0 README
              
              http://uima-ducc-vm.apache.org:42133 demo configuration, tools and data

Install and Launch demo 

Demo installation and launch instructions can be found on DUCC wiki

https://cwiki.apache.org/confluence/display/UIMA/DUCC#DUCC-t2
              
Folders

1. config
========================================
     
This folder contains the customizations to run a simulated DUCC cluster
in a 5GB virtual machine.

Replace the corresponding ducc.properties and ducc.nodes in the installation
/ducc/install with the ones found here.

Replace webserver/root/$banner/c4-ducc-mon.jsp to indicate that a trunk
version is used, indicated by <sup>+</sup>


2. cron
========================================
     
This folder contains the crontab shell script to periodically cleanup disk used,
presently all in /tmp

Use crontab command to deploy.


3. custom
========================================

This folder contains c and Java components comprising a custom service.
Issue make to build.  Issue customsvc to install.


4. driver
========================================

This folder contains python scripts used to exercise the ducc simulated cluster.
Issue driver_start to start the script.

Also, the convenience script installer is provided to copy config files.


5. jobs
========================================

This folder comprises jobs and inputs employed by the driver (see above).

NOTE: For the jobs to have there service dependencies in place, it is expected
that /ducc/install/examples/systemtest/reg_service is performed as follows:

reg_service 1
reg_service 2
reg_service 3
reg_service 4
reg_service_5


6. reservations
========================================

This folder comprises managed and unmanaged reservations employed by the driver 
(see above).


7. tools
========================================

This folder contains misc. tools.

