7 Multiserver Domain Application Deployment

You can deploy applications to Oracle Stream Analytics multiserver domains with either Oracle Stream Analytics Visualizer or the Deployer utility. This chapter describes how to use the Deployer utility.

See Deploying an Application in Using Visualizer for Oracle Stream Analytics for more information.

This chapter includes the following sections:

7.1 Target Server Groups

When you deploy an application to a multiserver domain, you typically specify a target group, and Oracle Stream Analytics deploys the application to the set of running servers in that group.

Oracle Stream Analytics dynamically maintains group membership based on running servers. When new servers in the group start, Oracle Stream Analytics propagates the appropriate set of deployments to the new server.

For example, with the multiserver domain configured in Multiserver Domains with Oracle Coherence, assume that only myServer1 has been started. You then deploy an application to the domain group that includes myServer1 and myServer2. Because only myServer1 of the multiserver domain is running, the application deploys to myServer1 only. When you start myServer2, Oracle Stream Analytics replicates and propagates the application deployment to myServer2.

Deployment propagation occurs based on the application version. When you deploy a new version of an application, the new version propagates to all servers in the group.

For more information, see:

7.2 Deploy to a Server Singleton Group

If you do not specify a group when you deploy an application, Oracle Stream Analytics deploys the application to the singleton server group that includes only the specific server to which you deploy the application. This is the standard case in standalone-server domains, but is also applicable to multiserver domains.

The following example shows how to deploy to a singleton group. In this case, the command does not specify a -group option.

java -jar wlevsdeploy.jar -url http://ariel:9002/wlevsdeployer -install myapp_1.0.jar

The myapp_1.0.jar application deploys to the singleton server group running on host ariel and listening to port 9002. If the domain is multiserver and other servers are members of the domain group, the application is not deployed to these servers.

7.3 Deploy to a Server Domain Group

The domain group is a live group that always exists and contains all servers in a domain. All servers are always a member of the domain group. However, you must still explicitly deploy applications to the domain group.

The main reason for this is for simplicity and usage consistency. When you explicitly deploy an application to the domain group, Oracle Stream Analytics guarantees that all servers of this homogenous environment have this deployment.

To deploy to the domain group, use the -group all option. The following example shows how to deploy to a domain group.

java -jar wlevsdeploy.jar -url http://ariel:9002/wlevsdeployer -install myapp_1.0.jar -group all 

The myapp_1.0.jar application deploys to all servers in the domain group through the host ariel listen to port 9002.

7.4 Deploy to a Server Custom Group

To deploy to a custom group, use the -group groupname option of the deploy command.

The following examples assume the multiserver domain has been configured as described in Multiserver Domains with Oracle Coherence.

This example shows how to deploy an application called strategies_1.0.jar to the strategygroup. Based on the multiserver domain configuration, the command deploys the application to myServer2 and to myServer3,which are the members of strategygroup.

java -jar wlevsdeploy.jar -url http://ariel:9002/wlevsdeployer -install strategies_1.0.jar -group strategygroup 

This example shows how to deploy the selector_1.0.jar application to selectorgroup:

java -jar wlevsdeploy.jar -url http://ariel:9002/wlevsdeployer -install selector_1.0.jar -group selectorgroup 

Based on the multiserver domain configuration, the preceding command deploys the application to myServer1 only, which is the sole member of selectorgroup.

Both commands deploy to the same server on host ariel listening to port 9002. You can specify any of the servers in the domain in the deploy command, even if the server is not part of the group to which you want to deploy the application.

7.5 Troubleshooting

Oracle Stream Analytics server stops the application after deployment.

Problem: After you deploy an application to an Oracle Stream Analytics multiserver domain, Oracle Stream Analytics stops the application after about 30 seconds.

Solution: Be sure you do not have more than one VPN software package installed on the same computer hosting your multiserver domain.