Cluster Deployment Descriptor (CDD)

The Cluster Deployment Descriptor (CDD) is an XML file to configure a project for deployment. You can use the TIBCO BusinessEvents Studio CDD editor to configure these settings and properties.

One EAR file and one CDD file define all the settings for all the engines and agents you want to deploy for a single application. Because the deploy-time configuration settings for all processing units are in the CDD file, you do not have to rebuild the EAR file to make changes to deploy-time settings.

When you deploy a processing unit, you specify these items:

Note: For deployment using TIBCO Administrator, the CDD file you specify can be in the file system or in the EAR file. To specify a CDD located in an EAR file, provide its project path and name. The CDD file does not accept global variables as values.

You can configure multiple CDD files for a project for different purposes such as testing a design, trying out different object and cluster management options, dividing the work differently between agents and processing units (engines), and so on. However, it is a good approach to use the same CDD file to deploy all processing units for an application in a specific environment.

For details about the procedure to add a CDD, see Adding a CDD File to the Project.

CDD Settings at Runtime

It is important to understand the effect of design-time settings in the runtime environment. The tab and section within a tab where you set values in the CDD can affect the scope of those values, and how they can be overridden.

Note: You can disable a channel for a specific Process Unit or Agent Class by adding CDD property be.channel.deactivate on Process Unit or Agent Class tab and set it's value to a comma, separated lists of channels.

Using Properties at Different Levels

The scope of a property depends on the property sheet you add it to. Not all properties are valid at all levels. Use your judgment.

For example, properties that include the agent class name, such as Agent.AgentClassName.checkDuplicates, can be used at different levels. Here is the scope of each level for these AgentClassName properties:

Cluster level
 Applies to all AgentClassName agents in the cluster.
Processing unit level
 Applies to any AgentClassName agent deployed in the specified processing unit.
Agent class level
 Applies to any AgentClassName agent, used in any processing unit.

(Not all agent-level properties include the agent class in the property name.)

Only one value for a property is used when a processing unit is deployed.

Order of precedence at runtime can affect decisions made at design time. For more information, see Order of Precedence at Run time.

For details about the available configuration properties, see Configuration Properties Reference.

Global Variables Setup in CDD (for Command Line Startup)

Global variables are added to a project and their value is set using the TIBCO BusinessEvents Studio Global Variables editor.

You can also set global variable values in the CDD file. This can sometimes be useful when you start the agent at the command line.

Note: Global variables set in TIBCO Administrator override those set in the CDD.  

Add properties using this format:

tibco.clientVar.GVName = value

The GVName must exactly match the name set in the TIBCO BusinessEvents Studio Global Variables editor.

Note:  If global variables are defined in the TIBCO BusinessEvents project using groups, specify the group path using forward slashes. For example, if a variable JMSuri is located under a group called URIs, specify the variable as tibco.clientVar.URIs/JMSuri.

Add such properties at the appropriate level in the CDD, depending on the desired scope: Cluster, Process Unit, or Agent Class.