Table of Contents
JDK 5.0
Ant 1.6.5
The jade bundle repository should be accessible from all the nodes (via NSF, http, ...). The repository location have to be specified in the jadeboot and jadenode folders in these files:
<jade-folder>/etc/osgi/system.properties
should be modified in:
oscar.auto.start.1= \ file:///<repository-location>/shell.jar \ file:///<repository-location>/bundlerepository.jar \ file:///<repository-location>/logger.jar \ file:///<repository-location>/log.jar \ file:///<repository-location>/properties.jar \ file:///<repository-location>/fractalbootstrap-2.1.0.1.jar
<jade-folder>/etc/osgi/bundle.properties
should me modified in:
oscar.repository.url=file:///<repository-location>/repository.xml
This package acts as a communication bridge between jadeboot and the
JOnAS. Executing ant inside the folder where
jade-jmx.zip
was unzipped will start the
package:
$ ant Buildfile: build.xml jade-jmx: [java] service:jmx:rmi:///jndi/rmi://127.0.1.1:9098/server [java] RMI registry ready.
The RMI registry is started on the port 9098 by default. To change this, use:
$ ant -DrmiPort=<port>
This package can be executed in any node of the cluster. Its location is a decision of the cluster administrator. It's not mandatory to run it on a specific node.
![]() | Note |
---|---|
The package's location have to be specified in the UI config files, otherwise the UI will ask for it. |
The next step is to run the jade boot.
To start the JADE boot from
<jade-boot-home>/
:
$ ant start -DregistryHost=<jasmine-controle-node-address> -DregistryPort=<jasmine-controle-node-port> Buildfile: build.xml compile: start: [java] JadeBoot starting ... [java] Fractal registry is ready. [java] [NodeLauncher] Node "<jasmine-controle-node-address>_<node-id>" registered [java] [OSGI] starting oscar [java] INFO : 3 : Logger.start : 1.0.0 [java] INFO : 5 : ServiceEvent.REGISTERED [java] INFO : 5 : ServiceEvent.REGISTERED [java] INFO : 6 : ServiceEvent.REGISTERED [java] INFO : 4 : BundleEvent.STARTED [java] INFO : 5 : BundleEvent.STARTED [java] INFO : 6 : BundleEvent.STARTED [java] INFO : 0 : BundleEvent.STARTED [java] INFO : 0 : FrameworkEvent.STARTED [java] [OSGI] oscar started [java] [JoramServerWrapper] server started [java] [UDPNodeDiscovery] listen on port 9998 [java] [JNDI] connected to fr.dyade.aaa.jndi2.client.NamingContextFactory on <jasmine-controle-node-address>:1239 [java] [Allocator] started [java] JadeBoot started [java] [Allocator] receive newNode jmsMessage : jadeboot
<jasmine-controle-node-address> is the name of the machine and <jasmine-controle-node-port> is the port number where the Fractal registry will listen.
The next step is to run the jade nodes on every host part of the managed cluster.
All the nodes that will be monitored and managed need a JADE node package.
To start the JADE node from <jade-node-home>/:
$ ant start -DregistryHost=<jasmine-control-node-address> -DregistryPort=<jasmine-controle-node-port> Buildfile: build.xml compile: start: [java] JadeNode starting ... [java] [NodeLauncher] Node "<jasmine-monitored-node-address>_<node-id>" registered [java] [OSGI] starting oscar [java] INFO : 3 : Logger.start : 1.0.0 [java] INFO : 4 : BundleEvent.STARTED [java] INFO : 5 : ServiceEvent.REGISTERED [java] INFO : 5 : ServiceEvent.REGISTERED [java] INFO : 5 : BundleEvent.STARTED [java] INFO : 6 : ServiceEvent.REGISTERED [java] INFO : 6 : BundleEvent.STARTED [java] INFO : 0 : BundleEvent.STARTED [java] INFO : 0 : FrameworkEvent.STARTED [java] [OSGI] oscar started [java] JadeNode started
It's important to write a completely qualified hostname (host.domain) or IP, as sometimes it fails to find the nodes. It's possible to have some problems trying to connect nodes at different networks, so it's recommended, if it's possible, to have them at the same network. If the connection is successful, this message will be displayed in the jadeboot node console:
[java] [Allocator] receive newNode jmsMessage : <jasmine-monitored-node-address>_<node-id>
The administrator has to take care of the permissions of the user that is running the jadenode, because JADE may need to deploy Apache HTTPd and start it, the user will need some grants to launch it on a restricted port (<1024).
A simple solution is to give to the JADE user some admin rights.
But a better solution is to use sudo
for executing
apachectl (the script that launches Apache HTTPd).
To do that it's necessary to edit
/etc/sudoers
file using the
visudo
command (we'll need root access) and add
this line:
# User privilege specification <user-for-jadenode> <jasmine-host-name> = (root) NOPASSWD:<path-to-the-deployed-apachectl>
![]() | Note |
---|---|
This solution is just necessary if we need an Apache HTTPd server to listen at port 80 (or <1024). Otherwise the user will not need administrator rights and this part can be skipped. |