OpenCCM - Distributed Execution

Table of Contents

  1. About Distributed OpenCCM Execution
  2. Fully Centralized Execution
  3. Distributed Clients
  4. Distributed Component Servers
  5. Distributed Node Managers
  6. Distributed CORBA Services
  7. Fully Distributed Execution

About Distributed OpenCCM Execution

This document describes how to run OpenCCM on top of a distributed system, e.g. five computers interconnected by a local area network (LAN). The OpenCCM Execution Tool Chain provides a set of scripts to start and stop the CORBA services (CosNaming, CosTrading and CosTransaction services), the OpenCCM Comanche HTTP server, standalone OpenCCM Component Servers, OpenCCM DCI Managers / AssemblyFactorys / Nodes, and the OpenCCM Browser in an OS and ORB independent way.

Distribution of OpenCCM Programs

The following sections describe how to distribute the execution of the OpenCCM scripts according to various scenarios:

Fully Centralized Execution

This scenario is the basic one where all OpenCCM scripts are executed on a single node. As shown in the next figure, all OpenCCM daemons will run on the node Host_A.

Fully Centralized Execution

The following table lists step by step the OpenCCM scripts to run on the node Host_A.

StepHost_AHost_BHost_CHost_DHost_E
1 ccm_install        
2 ns_start        
3 trader_start        
4 ots_start        
5 jcs_start ComponentServer_A        
6 dci_start My_DCI        
7 factory_start My_Assembly_Factory        
8 node_start Host_A        
9 ccm_browser        

Let's note that steps 3 and 4 are optional and only required if the CosTrading and CosTransactions services will be used.

Distributed Clients

This scenario allows you to access to centralized OpenCCM services from remote nodes.

Distributed Clients

The following table lists step by step the OpenCCM scripts to run on the various nodes.

StepHost_AHost_BHost_CHost_DHost_E
1 - 9 Run the steps 1 to 9 described in section Fully Centralized Execution.
10 comanche_start        
11   ccm_install
12   ns_set http://Host_A:8080/NameService.IOR
13   trader_set http://Host_A:8080/TradingService.IOR
14   ots_set http://Host_A:8080/TransactionService.IOR
15   dci_set http://Host_A:8080/DCI.IOR
16   ccm_browser

Let's note that steps 3 and 13 are optional and only required if the CosTrading service will be used.

Let's note that steps 4 and 14 are optional and only required if the CosTransactions service will be used.

Distributed Component Servers

This scenario allows you to start a standalone OpenCCM Component Server on each node. However all the main OpenCCM services continue to run on the single node Host_A.

Distributed Component Servers

The following table lists step by step the OpenCCM scripts to run on the various nodes.

StepHost_AHost_BHost_CHost_DHost_E
1 - 16 Run the steps 1 to 16 described in section Distributed Clients.
17   jcs_start ComponentServer_B      
18     jcs_start ComponentServer_C    
19       jcs_start ComponentServer_D  
20         jcs_start ComponentServer_E

Let's note that steps 17 to 20 could be executed in parallel as they have no dependency.

Distributed Node Managers

This scenario allows you to start an OpenCCM DCI Node Manager on each node. However all the main OpenCCM services continue to run on the single node Host_A.

Distributed Node Managers

The following table lists step by step the OpenCCM scripts to run on the various nodes.

StepHost_AHost_BHost_CHost_DHost_E
1 - 16 Run the steps 1 to 16 described in section Distributed Clients.
17   node_start Host_B      
18     node_start Host_C    
19       node_start Host_D  
20         node_start Host_E

Let's note that steps 17 to 20 could be executed in parallel as they have no dependency.

Distributed CORBA Services

This scenario illustrates the distribution of CORBA services on distinct nodes. All the OpenCCM DCI daemons still run on the single node Host_A.

Distributed CORBA Services

The following table lists step by step the OpenCCM scripts to run on the various nodes.

StepHost_AHost_BHost_CHost_DHost_E
1 ccm_install
2   comanche_start    
3   ns_start      
4 ns_set http://Host_B:8080/NameService.IOR   ns_set http://Host_B:8080/NameService.IOR
5     trader_start    
6 trader_set http://Host_C:8080/TradingService.IOR   trader_set http://Host_C:8080/TradingService.IOR
7       ots_start  
8 ots_set http://Host_D:8080/TransactionService.IOR   ots_set http://Host_D:8080/TransactionService.IOR
9 jcs_start ComponentServer_A        
10 dci_start My_DCI        
11 factory_start My_Assembly_Factory        
12 node_start Host_A        
13 ccm_browser

Let's note that steps 5 and 6 are optional and only required if the CosTrading service will be used.

Let's note that steps 7 and 8 are optional and only required if the CosTransactions service will be used.

Fully Distributed Execution

This scenario illustrates the distribution of all OpenCCM scripts on distinct nodes.

Fully Distributed Execution

The following table lists step by step the OpenCCM scripts to run on the various nodes.

StepHost_AHost_BHost_CHost_DHost_E
1 ccm_install
2 comanche_start  
3   ns_start      
4 ns_set http://Host_B:8080/NameService.IOR   ns_set http://Host_B:8080/NameService.IOR
5     trader_start    
6 trader_set http://Host_C:8080/TradingService.IOR   trader_set http://Host_C:8080/TradingService.IOR
7       ots_start  
8 ots_set http://Host_D:8080/TransactionService.IOR   ots_set http://Host_D:8080/TransactionService.IOR
9 jcs_start ComponentServer_A        
10   jcs_start ComponentServer_B      
11     jcs_start ComponentServer_C    
12       jcs_start ComponentServer_D  
13         jcs_start ComponentServer_E
14 dci_start My_DCI        
15   dci_set http://Host_A:8080/DCI.IOR
16         factory_start My_Assembly_Factory
17 node_start Host_A        
18   node_start Host_B      
19     node_start Host_C    
20       node_start Host_D  
21         node_start Host_E
22 ccm_browser

Let's note that steps 5 and 6 are optional and only required if the CosTrading service will be used.

Let's note that steps 7 and 8 are optional and only required if the CosTransactions service will be used.

Let's note that steps 9 to 13 could be executed in parallel as they have no dependency.

Let's note that steps 17 to 21 could be executed in parallel as they have no dependency.

Copyright © 1999-2005, ObjectWeb Consortium | contact | webmaster | Last modified at 2005-07-07 02:04 PM