Warning: Since the StaticPlanner is intended for debugging and demo purposes, it is not very robust or forgiving, nor is it very user-friendly. Use it at your own risk.
Several Conductor properties can be used to customize the behavior of the StaticPlanner:
Property Name | Type | Default Value | Description |
---|---|---|---|
StaticPlanner.IncludeAllNodes | boolean | false | Normally, the StaticPlanner does not include a node in a plan if no adaptors are to be depoyed on that node. If this property is set to "true", all nodes will be included in the plan. |
StaticPlanner.ConfigFile | filename | ./config/adaptors.cfg | The default configuration file. For more information, see Section 3.4 |
StaticPlanner.ConfigFile.<N> (where <N> is an int) | filename | (none) | The configuration file to use for connections to port <N>. For more information see Section 3.3. |
When Conductor is centrally configured or run from an NFS mounted directory, it may be useful to include ${HOSTNAME} in the names of specified configuration files. More information about Conductor properties is available here.
UserPrefs.StaticPlanner.configFile
in the planning
information it receives from the client node. If present, the value for
this attribute specifies the name of the file from which to read the
configuration. This file is expected to be found on the planner node.
The easiest way to cause this attribute to be set in the planning information is to use the StaticMonitor. A example configuration is available in Conductor/config/UserPrefs.example.StaticPlanner
More information about the proper format for the configuration file can be found in Section 4.
For adaptors to deploy in the upstream direction, the attribute
UserPrefs.StaticPlanner.upConfig.<N>
is used, where <N> is replaced by the node
number. The first node (client) is number 0. Similarly, for
adaptors to deploy in the downstream direction, the attribute
UserPrefs.StaticPlanner.downConfig.<N>
is used.
For example, consider the following set of adaptors to be deployed on a 4 node network.
A -> B C -> -> D Client -------- Node 1 --------- Node 2 --------- Server <- E <- F G <- HThe following attribute/value pairs should be delivered in the client's planning information:
Note that if there are more configuration entries than actual nodes in the connection, the extra entries will be ignored. If there are more nodes than entries an error will likely result.
The easiest way to cause these attributes to be set in the planning information is to use the StaticMonitor. A sample StaticMonitor configuration file for specifying a static plan can be found in Conductor/config/UserPrefs.example.StaticPlanner.
StaticPlanner.ConfigFile.<N>
can be used
to specify a configuration file to use for particular protocols, where
<N> is replaced by the destination port number used by
that protocol (eg, 80 for HTTP).
More information about the proper format for the configuration file can be found in Section 4.
StaticPlanner.ConfigFile
can be
used to specify a default configuration file to use when no other
configuration has been specified. The default value for this property
is ./adaptors.cfg
More information about the proper format for the configuration file can be found in Section 4.
Each configuration file consists of two sections. Lines in the first section begin with a plus ('+') and indicate the adaptors to deply in the upstream direction. Each line contains a space-delimeted list of fully-qualified adaptor class names. Lines in the second section begin with a minus ('-') and indicate the adpators to deploy in the downstream direction. The format is the same as the first section. There MUST be the same number of lines in the first and second sections.
For example, consider the following set of adaptors to be deployed on a 4 node network.
A -> B C -> -> D Client -------- Node 1 --------- Node 2 --------- Server <- E <- F G <- HThe following configuration file could be used to generate the corresponding plan:
+ A
+ B C
+
+ D
-
- E
- G F
- H
Notice that both the upstream and downstream sections of the file sequentially list nodes from client to server. Within a given node, adaptors are listed in the direction of data flow (so, B is listed before C and G is listed before F).
Note that if there are more entries in the configuration than nodes, some adpators will not be deployed. Also, if there are more nodes than entries in the configuration, an error will result.
Conductor is a product of Mark Yarvis
(yarvis@fmg.cs.ucla.edu) and the
FMG Research Group at
UCLA's Department of Computer Science.
Copyright © 2001 The Regents of the University of California. All Rights Reserved. |