This guide will walk you through how to deploy and run Overlord DTGov on Fuse, with and without Fabric 6.1. Note that, at the moment, the DTGov installer does not support Fabric as an actual installation target. In the near future, we'll be adding that, but for now please use the following steps.
With Fabric
- Download Fuse 6.1 and unpack it
- Download the attached patches.zip and unpack it
- Patch Fuse using the instructions in [ENTESB-1570] jetty.xml in child container is not getting detected
- Add the following to [FUSE HOME]/fabric/import/fabric/configs/versions/1.0/profiles/default/io.fabric8.agent.properties
metadata#org.apache.aries.proxy.impl#[1.0,2.0)#Export-Service = org.apache.aries.proxy.ProxyManager
metadata#org.apache.aries.blueprint.core#[1.0,2.0)#Import-Service = org.apache.aries.proxy.ProxyManager
metadata#org.apache.karaf.deployer.blueprint#[2.0,3.0)#Require-Capability = osgi.extender;filter:="(osgi.extender=osgi.blueprint)"
metadata#io.fabric8.fabric-core#[1.0,2.0)#Require-Capability = osgi.extender;filter:="(osgi.extender=osgi.service.component)"
metadata#org.apache.felix.scr#[1.0,2.0)#Provide-Capability = osgi.extender;osgi.extender=osgi.service.component
- Add the following to [FUSE HOME]/fabric/import/fabric/configs/versions/1.0/profiles/default/io.fabric8.agent.properties
- Clone the Overlord Commons and Overlord S-RAMP git repos
- In all the repos repos, 'mvn clean install' (include '-DskipTests' if you're not interested in running the unit tests).
- Unzip the Commons and S-RAMP profiles into [FUSE_HOME]/fabric/import/fabric/configs/versions/1.0/profiles:
- [COMMONS_HOME]/overlord-commons-dist/overlord-commons-dist-fuse6/target/overlord-commons-profile-[OVERLORD-COMMONS-VERSION].zip
- [SRAMP_HOME]/s-ramp-distro/fabric/target/s-ramp-profile-[S-RAMP-VERSION].zip
- [DTGOV_HOME]/dtgov-distro/fabric/target/dtgov-profile-[DTGOV-VERSION].zip
- Start Fuse: [FUSE_HOME]/bin/fuse
- Configure the Overlord Fabric Profiles using Overlord's Karaf command bundle:
- features:addurl mvn:org.overlord.dtgov/dtgov-distro-fuse61/[DTGOV_VERSION]]/xml/features
- features:install -v dtgov-karaf-commands
- If you want to install in any Fabric container the s-ramp profile you need to configure it:
- overlord:fabric:s-ramp:configure [FABRIC_PASSWORD]
- Configure the dtgov profile. In case s-ramp has been configured previously, the password is going to be discarded:
- overlord:fabric:dtgov:configure [FABRIC_PASSWORD]
- Create the user and role
- fabric:create --zookeeper-password admin
When prompted, use "admin" for the username. The password should be the [FABRIC_PASSWORD] value introduced in step 8 - jaas:manage --index 3
- jaas:roleadd admin overlorduser
- jaas:roleadd admin overlordadmin
- jaas:roleadd admin admin.sramp
- jaas:useradd srampjms [FABRIC_PASSWORD]
- jaas:useradd dtgovworkflow [FABRIC_PASSWORD]
- jaas:roleadd dtgovworkflow overlordadmin
- jaas:roleadd dtgovworkflow overlorduser
- jaas:roleadd dtgovworkflow admin
- jaas:update
- fabric:create --zookeeper-password admin
- Create a fuse fabric container:
- fabric:container-create-child root child
To allow remote debugging, use something like the following: fabric:container-create-child --jvm-opts '-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005' root child - It is recommended to add --jvm-opts '-Xms2000m -Xmx2000m':
- fabric:container-create-child --jvm-opts '-Xms2000m -Xmx2000m -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005' root child
- fabric:container-create-child root child
- Stop the container using "fabric:container-stop child" or stop all the karaf console using "exit".
- Copy the jre.properties that is inside the xmlsec.zip file into the [FUSE_HOME]/instances/child/etc folder.
- Start Fuse or start the container using "fabric:container-start child". In case you have stopped Fuse completely, the container is not always started, so it is necessary to start.
- You can check the logs of the container: tail -1000f [FUSE_HOME]/instances/child/data/log/karaf.log
- Add the profiles to the Fabric container:
- fabric:container-add-profile child overlord-sramp (optional)
- fabric:container-add-profile child overlord-dtgov
- You can check the logs in [FUSE HOME]/instances/child/data/logs/karaf.log
- Test the DTGOV UI: http://localhost:8182/dtgov-ui
Without Fabric
- Download Fuse 6.1 and unpack it
- Download DTGov (http://downloads.jboss.org/overlord/dtgov/overlord-dtgov-[VERSION].zip) and unpack it
- cd [DTGOV HOME]
- Run 'ant', then follow the instructions
- Start Fuse: [FUSE_HOME]/bin/fuse
- features:addurl mvn:org.overlord.dtgov/dtgov-distro-fuse61/[DTGOV_VERSION]/xml/features
- features:install -v dtgov-karaf-commands
- Configure the s-ramp fuse installation: overlord:s-ramp:configure [PASSWORD]
- Configure the dtgov fuse installation: overlord:dtgov:configure [PASSWORD]
- features:install -v s-ramp
- features:install -v dtgov
- Test the DTGov UI: http://localhost:8181/dtgov-ui
Change Overlord Password
If you want to change the password for all your overlord applications deployed in the fuse server, you can use the overlord karaf command to regenerate it. Write the following instructions in the karaf console:
- features:addurl mvn:org.overlord/overlord-commons-dist-fuse6/[OVERLORD_COMMONS_VERSION]/xml/features (in case it is not added before)
- features:install -v overlord-commons (in case it has not been installed before)
For Fuse deployment:
- overlord:change-password [PASSWORD]
For Fuse Fabric deployment:
- overlord:fabric:change-password [PASSWORD]
(Note that this instruction only can have effect before the Fuse Fabric is created)
Populate Dtgov
Dtgov can be accessed but it is necessary for running the examples inside of dtgov/dtgov-demos to populate s-ramp with the dtgov workflows, targets, queries, ontologies and other necessary data.
- Go to the dtgov distro folder (the unzipped dtgov-distro dir)
- Execute: ant seed -Ds-ramp.endpoint=http://localhost:[PORT]/s-ramp-server -Ds-ramp.shell.username=admin -Ds-ramp.shell.password=[YOUR INSTALLATION PASSWORD]
- The port would be 8181 in case of Fuse. In case of Fuse Fabric, you need to check the container port (The first container port normally is 8182)
- cd [DTGOV HOME]
Comments