FIRMS
Deployment within the OMII Container
Community Grids Lab,
This document provides
details pertaining to the deployment of WS-ReliableMessaging Web Services
─ WsrmServiceA, WsrmServiceB ─ and the SOAPMonitor service within
the OMII container and WS-Reliability Web Services ─ WsrServiceA, WsrServiceB
and WsrTS. We have tested this software with version 2.3.1 & 2.3.3 of the
OMII container. We leverage ANT to deploy and undeploy the aforementioned
services. We assume that the users have successfully installed ANT on their
machine.
We now list the
directories relevant to this demo. The variable names here are
self-descriptive.
|
OMII HOME: /usr/local/OMII or
/home/<user_Id>/OMII OMIICLIENT HOME: /root/OMIICLIENT
or /home/<user_Id>/OMIICLIENT OMII TOMCAT HOME:
<omii_home>/jakarta-tomcat-5.0.25 OMII AXIS HOME:
<omii_home>/axis-1_2beta FIRMS Base
(distribution) Directory: /root/webservices/FIRMS-1.0.0 FIRMS Client Directory: /root/webservices/FIRMS-1.0.0/dist/client FIRMS Server Directory: /root/webservices/FIRMS-1.0.0/dist/server |
Step 1: Execute the ANT target command build-all in the WSRM
Base Directory (/root/webservices/FIRMS-1.0.0).
As depicted in the Figure 1 below this results in the creation of the client and
server distribution.


Figure 1 Execution of build-all target command
Step 2: Before
proceeding to deployment of all the services within the OMII Container, create
two databases wsrmone and wsrmtwo
for Source and Sink node respectively in PostgreSQL.
For this, login as a
“postgres” user on shell and start the Postgres server. Following Figure 2 depicts the execution of PostgreSQL server start up
command.

Figure 2 Execution of PostgreSQL Server
Startup Command
PART I:- WS-RM Deployment
NOTE: - For WS-Reliability Deployment, go to step
13 onwards.
Step 3: Create two databases “wsrmone”
and “wsrmtwo” for WSRM-Source and WSRM-Sink respectively by
using command “createdb wsrmone” and “createdb
wsrmtwo” in postgreSQL.
Step 4: Execute the ant target command “pgsql-createdb-source”
in the WSRM base directory (/root/webservices/FIRMS-1.0.0)
to create tables in source database “wsrmone.”
This command uses
required properties from build.properties file. Please change following
properties in build.properties file according to your database needs.
|
pg_database_JDBC_Driver=org.postgresql.Driver pg_database_WSRM_Source_url=jdbc:postgresql://localhost:5432/wsrmone pg_database_WSRM_username=test pg_database_WSRM_password=test |
Figure 3depicts the execution of the command “pgsql-createdb-source”.

Figure 3 Execution of "pgsql-createdb-source” ant target command
Step 5: Execute the ant target command “pgsql-createdb-sink”
in the WSRM base directory (/root/webservices/FIRMS-1.0.0)
to create tables in sink database “wsrmtwo.”
This command uses
required properties from build.properties file. Please change following
properties in build.properties file according to your database needs.
|
pg_database_JDBC_Driver=org.postgresql.Driver pg_database_WSRM_username=test pg_database_WSRM_password=test pg_database_WSRM_Sink_url=jdbc:postgresql://localhost:5432/wsrmtwo |
Figure 4 depicts the execution of the command “pgsql-createdb-sink”.

Figure 4 Execution of "pgsql-createdb-sink" ant target command
Step 6: We now proceed to deploy the WsrmServiceA
on one machine, WsrmServiceB on other machine and SOAPMonitor
services within Tomcat running on port 18080 (Here we note that this port
number could be any other number and is under the user’s control) within the
OMII Container. The user first needs to use the cd
shell command to enter the WSRM Server Directory (/root/webservices/FIRMS-1.0.0/dist/server).
User should be root user before executing
following command. Next the user needs to execute the ANT target command deploy-firms.
This command copies all the necessary files including jar files, classes and
resource files to the relevant locations within the OMII Container.
The Figure 5 below depicts the result of the execution of this ANT
target command. The successful completion of this command is a precursor to the
deployment of web services within the OMII container.


Figure 5 Execution of “deploy-firms" ant target command
Step 7: Next
the user needs to start Tomcat. This can be done by accessing the OMII
TOMCAT HOME directory and executing the startup.sh
shell script. The result of this execution is depicted in Figure 6 below.

Figure 6 Execution of "./startup.sh”
command
Step 8: To deploy the SOAPMonitor Web Service the user
needs to execute the ANT target command deploy-soapmonitor within the WSRM
Server Directory. The command and the arguments that this command
takes is depicted in the snippet below. Here <machine_name> corresponds
to the machine hosting Tomcat and the OMII Container.
|
/root/webservices/FIRMS-1.0.0/dist/server>
ant deploy-soapmonitor -Dwsrm.soapmonitor.axisadmin=-lhttp://<machine_name>
:18080/axis /services/ AdminService -Dwsrm.soapmonitor.deploy.wsddfile=config/wsrm/deploy-Monitor.wsdd |
A sample execution of
this command is depicted in the Figure 7 below.

Figure 7 Execution of
"deploy-soapmonitor" ant target command
A simple way to verify
the deployment of the SOAP Monitor Web Service is by pointing the web browser
to the following URL: http://<machine-name>:18080/axis/servlet/AxisServlet.
A sample execution of the aforementioned step is depicted in the Figure 8 below.

Figure 8 Pointing Web Browser to
"SOAPMonitor" service
Step 9: To deploy the WsrmServiceA the user needs
to execute the deploy-serviceA ANT target command within
the WSRM Server Directory. The
command and the arguments that this command takes is depicted in the snippet
below.
|
/root/webservices/FIRMS-1.0.0/dist/server
> ant deploy-serviceA -Dwsrm.serviceA.axisadmin=-lhttp://<machine_name>
:18080/axis /services/ AdminService –Dwsrm.serviceA.deploy.wsdd=config/wsrm/wsdd/handler/ServiceADeploy.wsdd |
The result of a sample
execution of this command is depicted in Figure 9below.

Figure 9 Execution of "deploy-serviceA"
ant target command
A simple way to verify
the deployment of the WsrmServiceA is by pointing the web browser to the
following URL: http://<machine-name-one>:18080/axis/servlet/AxisServlet.
A sample execution of the aforementioned step is depicted in the Figure 10 below.

Figure 10 Pointing Web Browser to “WsrmServiceA"
Step 10:
To deploy the WsrmServiceB on other machine, the user needs to execute the deploy-serviceB ANT
target command within the WSRM Server Directory. The command and the arguments that this
command takes is depicted in the snippet below.
|
/root/webservices/FIRMS-1.0.0/dist/server
> ant deploy-serviceB -Dwsrm.serviceB.axisadmin=-lhttp://<machine_name_two>:18080/axis
/services/ AdminService - Dwsrm.serviceB.deploy.wsdd=config/wsrm/wsdd/handler/ServiceBDeploy.wsdd |
The result of a sample
execution of this command is depicted in Figure 11 below.

Figure 11 Execution of "deploy-serviceB" ant target command
A simple way to verify
the deployment of the WsrmServiceB is by pointing the web browser to the
following URL: http://<machine-name-two>:18080/axis/servlet/AxisServlet.
A sample execution of the aforementioned step is depicted in the Figure 12 below. For the user’s convenience we have highlighted
the WsrmServiceB in this figure.

Figure 12 Pointing Web Browser to "WsrmServiceB"
Step 11: Verify the deployment of
the SOAP Monitor Web Service by executing ant target command ”test-soapmonitor”
within the WSRM Server Directory. The command and the arguments that this command
takes is depicted in the snippet below. Here <machine_name> corresponds to the machine hosting Tomcat
and the OMII Container.
|
/root/webservices/FIRMS-1.0.0/dist/server>ant
test-soapmonitor -Dwsrm.servlet.url=http://<machine_name>:18080/axis/servlet/AxisServlet
–Dwsrm.webservice.soapmonitor=SOAPMonitorService |
A sample execution of the aforementioned step is
depicted in the Figure 13 below.

Figure 13 Execution of
"test-soapmonitor" ant target command
Verify the deployment of the WsrmSeviceA by executing
the ant target command “test-wsrmserviceA” within the WSRM Server
Directory. The command and the arguments that this command takes is depicted in
the snippet below. Here <machine_name_one>
corresponds to
the machine hosting Tomcat and the OMII Container.
|
/root/webservices/FIRMS-1.0.0/dist/server>ant test-serviceA -Dwsrm.servlet.url=http://<machine_name>:18080/axis/servlet/AxisServlet
–Dwsrm.webservice.serviceA=WsrmServiceA |
A sample execution of the aforementioned step is
depicted in the Figure 14 below.

Figure 14 Execution of "test-serviceA" ant target command
Verify the deployment of the WsrmServiceB is by
executing ant target command “test-serviceB” within the WSRM Server Directory.
The command and the arguments that this command takes is depicted in the
snippet below. Here <machine_name_two>
corresponds to
the machine hosting Tomcat and the OMII Container.
|
/root/webservices/FIRMS-1.0.0/dist/server > ant test-serviceB -Dwsrm.servlet.url=http://<machine_name>:18080/axis/servlet/AxisServlet
-Dwsrm.webservice.serviceB=WsrmServiceB |
A sample execution of the
aforementioned step is depicted in the Figure 15 below.

Figure 15 Execution of " test-serviceB" ant target command
Step 12: Users can also un-deploy ALL the Web
Services (running within the container) mentioned in this document. We have
included ANT target commands which perform this function for the user. Please
note that the Tomcat within the OMII container should be up and running for
these commands to take effect.
The snippet corresponding
to the commands that un-deploy targeted services have been depicted here for
the user’s perusal.
|
WsrmServiceA: /root/webservices/FIRMS-1.0.0/dist/server> ant undeploy-wsrmserviceA -
Dwsrm.serviceA.axisadmin=- lhttp://<machine_name>:
18080/axis/services/AdminService -Dwsrm.serviceA.wsddfile=config/wsrm/wsdd/handler/ServiceAUndeploy.wsdd WsrmServiceB: /root/webservices/FIRMS-1.0.0/dist/server>ant
undeploy-wsrmserviceB - Dwsrm.serviceB.axisadmin=-lhttp
://<machine_name>:18080/axis/services/AdminService -Dwsrm.serviceB.wsddfile=config/wsrm/
wsdd/handler/ServiceBUndeploy.wsdd SoapMonitor: /root/webservices/FIRMS-1.0.0/dist/server>
ant undeploy-soapmonitor –Dwebservice.soapmonitor.axisadmin=-lhttp://<machine_name>:18080/axis/services/AdminService
–Dwebservce.soapmonitor.wsddfile=config/undeploySoapMonitor.wsdd |
A command which
un-deploys all the Web Services and deletes all files related to these services
is also available. For the correct execution of the command a user needs to
ensure that the Tomcat process is no longer running. The snippet outlining this
command is depicted below.
|
/root/webservices/FIRMS-1.0.0/dist/server>ant
undeploy-firms |
PART II: - WS-Reliability
Deployment
Step 13: Create two databases “wsrone”
and “wsrtwo” for source and sink respectively by using command
“createdb wsrone” and “createdb wsrtwo”
in postgreSQL.
Step 14: Execute the ant target command “createdb-postgresource”
in the FIRMS base directory (/root/webservices/FIRMS-1.0.0)
to create tables in source database “wsrone.”
This command uses
required properties from the build.properties file. Please change following
properties in build.properties file according to your database needs.
|
Postgredatabase_JDBC_Driver=org.postgresql.Driver Postgredatabase_WSR_Source_url=jdbc:postgresql://localhost:5432/wsrone Postgredatabase_WSR_username=test Postgredatabase_WSR_password=test |
Following Figure 16 depicts the execution of the command
“createdb-postgresource”.

Figure 16 Execution of "createdb-postgresource” ant target command
Step 15: Execute the ant target command “createdb-postgresink”
in the FIRMS base directory (/root/webservices/FIRMS-1.0.0)
to create tables in sink database “wsrtwo.”
This command uses
required properties from build.properties file. Please change following
properties in build.properties file according to your database needs.
|
Postgredatabase_JDBC_Driver=org.postgresql.Driver Postgredatabase_WSR_username=test Postgredatabase_WSR_password=test Postgredatabase_WSR_Sink_url=jdbc:postgresql://localhost:5432/wsrtwo |
Following Figure 17depicts the execution of the command “createdb-postgresink”.

Figure 17 Execution of "createdb-postgresink" ant target command
Step 16: We now proceed to deploy the WsrServiceA
on machine one, WsrServiceB on machine two, WsrTS on both machines and
SOAPMonitor services within Tomcat running on port
18080 (Here we note that this port number could be any other number and is
under the user’s control) within the OMII Container. The user first needs to
use the cd shell command to enter the FIRMS Server
Directory (/root/webservices/FIRMS-1.0.0/dist/server).
User should be the root user before executing the following command. Next the user
needs to execute the ANT target command deploy-firms.
This command copies all the necessary files including jar files, classes and
resource files to the relevant locations within the OMII Container.
Figure
18Figure 5 below depicts the result of the execution of this ANT
target command. The successful completion of this command is a precursor to the
deployment of web services within the OMII container.


Figure 18 Execution of “deploy-firms" ant target command
Step 17: Next
the user needs to start Tomcat. This can be done by accessing the OMII
TOMCAT HOME directory and executing the startup.sh
shell script. The result of this execution is depicted in Figure 19 below.

Figure
19 Execution of "./startup.sh”
command
Step 18: To
deploy the SOAPMonitor Web Service the user needs to execute the ANT target
command deploy-soapmonitor on both machines within
the FIRMS Server Directory. The command and the arguments that this command
takes is depicted in the snippet below. Here <machine_name> corresponds
to the machine hosting Tomcat and the OMII Container.
|
/root/webservices/FIRMS-1.0.0/dist/server>
ant deploy-soapmonitor
-Dsoapmonitor.axisadmin=-lhttp://<machine_name> :18080/axis /services/
AdminService -Dsoapmonitor.wsddfile=config/deploySoapMonitor.wsdd |
A sample execution of
this command is depicted in the Figure 20below.

Figure 20 Execution of
"deploy-soapmonitor" ant target command
A simple way to verify
the deployment of the SOAP Monitor Web Service is by pointing the web browser
to the following URL: http://<machine-name>:18080/axis/servlet/AxisServlet.
A sample execution of the aforementioned step is depicted in the Figure 21below.

Figure 21 Pointing Web Browser to
"SOAPMonitor" service
Step 19: To deploy the WsrServiceA the user needs to
execute the deploy-wsrserviceA ANT target command on
machine one within the FIRMS Server Directory. The command and the arguments that this
command takes is depicted in the snippet below.
|
/root/webservices/FIRMS-1.0.0/dist/server
> ant deploy-wsrserviceA -Dwsr.serviceA.axisadmin=-lhttp://<machine_name>
:18080/axis /services/ AdminService -Dwsr.serviceA.wsddfile=config/wsr/ServiceADeploy.wsdd |
The result of a sample
execution of this command is depicted in Figure 22 Figure 9below.

Figure 22 Execution of
"deploy-wsrserviceA” ant target command
A simple way to verify
the deployment of the WsrServiceA is by pointing the web browser to the
following URL: http://<machine-name-one>:18080/axis/servlet/AxisServlet.
A sample execution of the aforementioned step is depicted in the Figure 23 below.

Figure 23 Pointing Web Browser to
“WsrServiceA"
Step 20:
To deploy the WsrServiceB on the machine two, the user needs to execute the deploy-wsrserviceB ANT
target command within the FIRMS Server Directory. The command and the arguments that this
command takes is depicted in the snippet below.
|
/root/webservices/FIRMS-1.0.0/dist/server
> ant deploy-wsrserviceB
-Dwsr.serviceB.axisadmin=-lhttp://<machine_name>:18080/axis /services/
AdminService - Dwsr.serviceB.wsddfile=config/wsr/ServiceBDeploy.wsdd |
The result of a sample
execution of this command is depicted in Figure 24 below.

Figure 24 Execution of "deploy-wsrserviceB" ant target command
A simple way to verify
the deployment of the WsrServiceB is by pointing the web browser to the
following URL: http://<machine-name-two>:18080/axis/servlet/AxisServlet.
A sample execution of the aforementioned step is depicted in the Figure 25 below. For the user’s convenience we have highlighted
the WsrServiceB in this figure.

Figure 25 Pointing Web Browser to
"WsrServiceB"
Step 21: To deploy the Target Service (WsrTS) Web
Service on both machines, the user needs to execute the deploy-wsrts ANT
target command within the FIRMS Server Directory. The command and the arguments that this
command takes is depicted in the snippet below.
|
/root/webservices/FIRMS-1.0.0/dist/server
> ant deploy-wsrts -Dwsr.ts.axisadmin=-lhttp://<machine_name>:18080/axis
/services/ AdminService - Dwsr.ts.wsddfile=config/wsr/reliabilityTS.wsdd |
The result of a sample
execution of this command is depicted in Figure 26 below.

Figure 26 Execution of "deploy-wsrts"
ant target command
A simple way to verify
the deployment of the WsrTS Web Service is by pointing the web browser to the
following URL: http://<machine-name>:18080/axis/servlet/AxisServlet. A
sample execution of the aforementioned step is depicted in the figure below.
For the user’s convenience we have highlighted the WsrTS service in this Figure 27.

Figure 27 Pointing Web Browser to "
WsrTS" service
Step 22: Verify the deployment of
the SOAP Monitor Web Service by executing ant target command ”test-soapmonitor”
within the FIRMS Server Directory. The command and the arguments that this
command takes is depicted in the snippet below. Here <machine_name-one/two> corresponds to the machine
hosting Tomcat and the OMII Container.
|
/root/webservices/FIRMS-1.0.0/dist/server>ant
test-soapmonitor -Dservlet.url=http://<machine_name>:18080/axis/servlet/AxisServlet
-Dwebservice.soapmonitor=SOAPMonitorService |
A sample execution of the aforementioned step is
depicted in the Figure 28 below.
|
|
Figure 28 Execution of
"test-soapmonitor" ant target command
Verify the deployment of the WsrSeviceA by executing
ant target command ”test-wsrserviceA” within the FIRMS Server
Directory. The command and the arguments
that this command takes is depicted in the snippet below. Here <machine_name_one> corresponds to the machine
hosting Tomcat and the OMII Container.
|
/root/webservices/FIRMS-1.0.0/dist/server>ant test-wsrserviceA -Dwsr.servlet.url=http://<machine_name>:18080/axis/servlet/AxisServlet
-Dwsr.webservice.serviceA=WsrServiceA |
A sample execution of the aforementioned step is
depicted in the Figure 29 below.
|
|
Figure 29 Execution of "test-wsrserviceA" ant target command
Verify the deployment of the WsrServiceB by
executing ant target command ”test-wsrserviceB” within the FIRMS Server
Directory. The command and the arguments that this command takes is depicted in
the snippet below. Here <machine_name_two>
corresponds to
the machine hosting Tomcat and the OMII Container.
|
/root/webservices/FIRMS-1.0.0/dist/server > ant
test-wsrserviceB
-Dwsr.servlet.url=http://<machine_name>:18080/axis/servlet/AxisServlet
-Dwsr.webservice.serviceB=WsrServiceB |
A sample execution of the
aforementioned step is depicted in the Figure 30 below.
|
|
Figure 30 Execution of "
test-wsrserviceB" ant target command
Verify the deployment of the TargetWeb Service is by executing
ant target command”test-target” within the FIRMS Server Directory. The command
and the arguments that this command takes is depicted in the snippet below.
Here <machine_name_one/two>
corresponds to
the machine hosting Tomcat and the OMII Container.
|
/root/webservices/FIRMS-1.0.0/dist/server>ant test-target -Dwsr.servlet.url=http://<machine_name>:18080/axis/servlet/AxisServlet
-Dwsr.webservice.target=WsrTS |
A sample execution of the aforementioned step is
depicted in the Figure 31 below.
|
|
Figure 31 Execution of "test-target"
ant target command
Step 23: Users can also un-deploy ALL the Web
Services (running within the container) mentioned in this document. We have
included ANT target commands which perform this function for the user. Please
note that the Tomcat within the OMII container should be up and running for
these commands to take effect.
The snippet corresponding
to the commands that un-deploy targeted services have been depicted here for
the user’s perusal.
|
WsrServiceA: /root/webservices/FIRMS-1.0.0/dist/server> ant undeploy-wsrserviceA - Dwsr.serviceA.axisadmin=-
lhttp://<machine_name>: 18080/axis/services/AdminService -Dwsr.serviceA.wsddfile=config/wsr/ServiceAUndeploy.wsdd WsrServiceB: /root/webservices/FIRMS-1.0.0/dist/server>ant
undeploy-wsrserviceB - Dwsr.serviceB.axisadmin=-lhttp
://<machine_name>:18080/axis/services/AdminService
-Dwsr.serviceB.wsddfile=config/wsr/ServiceBUndeploy.wsdd WsrTS: /root/webservices/FIRMS-1.0.0/dist/server>ant
undeploy-wsrts -Dwsr.ts.axisadmin=-lhttp://<machine_name>: 18080/axis/services/AdminService
-Dwsr.ts.wsddfile=config/wsr/undeployTS.wsdd SoapMonitor: /root/webservices/FIRMS-1.0.0/dist/server>
ant undeploy-soapmonitor –Dsoapmonitor.axisadmin=-lhttp://<machine_name>:18080/axis/services/AdminService
–Dsoapmonitor.wsddfile=config/undeploySoapMonitor.wsdd |
A command which
un-deploys all the Web Services and deletes all files related to these services
is also available. For the correct execution of the command a user needs to
ensure that the Tomcat process is no longer running. The snippet outlining this
command is depicted below.
|
/root/webservices/FIRMS-1.0.0/dist/server>ant
undeploy-firms |