An operational policy enables you to define a common approach to
controlling particular node properties, such as connection credentials,
and certain aspects of message flow behavior, including flow rate.
Operational policies provide a shared and managed definition that
you can reuse, and they enable the following user capabilities:
- Developers - the ability to reuse configuration information in
multiple places.
- Administrators - the ability to define key configuration data
for each environment.
- Operators - the ability to monitor and dynamically modify configuration
data.
Policies can be created and updated at any time in the solution
lifecycle. A policy instance is made up of a set of defined operational
properties that are stored in a policy document, and a policy instance
can be attached to one or more entities that you want to control,
for example, message flows, message flow nodes, or other administrative
entities.
For message flows and message flow nodes, you can attach a policy
during development, or at build time with a BAR file override. Some types of
policy can be attached after a solution is deployed.
For message flow nodes, you can set a property value in several
places; during flow development, with a
BAR file override, or by attaching
a policy. The following precedence rules apply to the operational
property values for message flow nodes:
- An operational property value set in a policy takes precedence
over a value that is overridden in a BAR file
or set on the node.
- When there is no policy for an operational property value, the
value that is overridden in a BAR file
takes precedence over the value that is set on the node.
- When there is no policy or BAR file
override for an operational property value, the value that is set
on the node takes precedence.
Tip: If you designed your message flow to include a local
environment override, any property value that is set by the local
environment override takes precedence over a value that is set by
an operational policy, a BAR file
override, or on the node.
When a policy instance is attached to a message
flow, or to a message flow node, and updates are made to that policy
instance, a dynamic refresh of the affected message flow, or message
flow node, takes place. You do not need to redeploy your resources
for the updates to take effect. Update requests can be viewed in the
web user interface by clicking in the navigation tree.
The following operational policy types are available:
- MQEndpoint policy
- An MQEndpoint policy can
be attached to one or more MQ nodes in a message flow to control connection
details at run time. For more information, see MQEndpoint policy.
- MQTTPublish policy
- An MQTTPublish policy
can be attached to one or more MQTTPublish nodes in a message
flow to control the value of specific MQ
Telemetry Transport (MQTT) publishing properties
at run time. For more information, see MQTTPublish policy.
- MQTTSubscribe policy
- An MQTTSubscribe policy
can be attached to one or more MQTTSubscribe nodes in a message
flow to control the value of specific MQ
Telemetry Transport (MQTT) subscription properties
at run time. For more information, see MQTTSubscribe policy.
- Workload management policy
- A workload management policy can be attached
to a message flow to tune the performance of the message flow. For
more information, see Workload management policy.