In our book we talked about the difference between the agents offered by ICS, namely the Connection  and Execution agents. Whilst we differentiated the two, we did focus on the connection agent as this is the type we expect to see used in most cases. However the execution agent still suffers from a level of confusion, and it has been helped by being called  ‘ICS on-premises’.

As part of a number of recent conversations the questions and confusion of what the execution agent is and how it works has come up. There is the well known saying ‘a picture is as good as a 1000 words’ which prompted us to develop the diagram below as a power point slide – in its power point form much of the detail is used as an animated build up.

ICS Agent Comparison
Differences

The diagram should give you the differences, but let’s call them out …

ICSAgentComprison

AspectConnectionExecution
Data communicated back to the cloud- Agent Status
- Data Gathered
- Status
Data retrieved from the cloud- Details for status reporting
- Connection configuration
- Details for status reporting
- Everything else is built using the local server
On-Premises Connectivity OptionsAll connectors including File connectivityLimited connectors available - File is not an option
Prerequisites- Java- Java
- Database
Components DeployedManaged Server - Managed Server
- Admin Server for configuration
- creation of integrations

When to use the Execution Agent

The execution agent is intended to help address the following scenarios:

  • the 2 systems being integrated are on-premises, therefore the ‘cost’ of sending the data to the cloud for processing makes little sense,
  • When ICS comes up against security considerations such as data residency restrictions. So processing of data can be achieved in a location considered acceptable.

What to be Aware of when using the execution agent

Whilst the execution agent addresses some challenges, it does introduce additional considerations, particularly …

  • Monitoring is only limited to a heartbeat between the cloud and the agent, so log gathering will need to be implemented on-premises by what ever monitoring tool is being used,
  • with only one managed server, the resilience of the deployment needs to be considered,
  • Need to ensure the deployment is patched and maintained. Otherwise you risk the possibility of the execution agent nolonger even able to heartbeat back to the ICs parent. Plus the cosnideration for remaining within support agreements,
  • An executrion agent can not be connected to a connection agent today.