Agent Architecture

An overview on how Agents can be deployed.

Ossi Galkin avatar
Written by Ossi Galkin
Updated over a week ago

Task and other process elements

Frends Tasks and other Process Elements are the building blocks of Frends Processes. A Task could, for example, write something to a database. Tasks are configured by using the Parameter Editor

Processes and Subprocesses 

The Process is used to create the integration flow functionality and them for the orchestration layer. Processes consist of Tasks, other Process elements, and Subprocesses. Subprocess can be used to wrap smaller parts of Processes to create reusable microservices across other Processes.

Agents and Agent Groups

 Agents execute Processes. Agents are grouped in Agent Groups.  Processes are deployed to Agent Groups, and they might run any Agent in that group if there are multiple Agents. 

Installation of ground/on-premises Agents is described in their own article.


One or many Agent Groups are grouped in Environments. The idea is that, for example, there could be a Production Environment with two Agent Groups. One for cloud and one for ground. Each Agent Group could contain two Agents or more, so Agent Groups can form a High Availability environment. In addition to at least two Agents, a High Availability Environment needs a database so Agents can sync their state.

There can only be one development Agent Group. Other Environments can have any number of agent groups. The number of Agents in Agents is not limited.

The following picture illustrates setup where there is one development Agent, one test Agent, and three production Agents. One production Agent is installed inside company premises and is inside the company domain. Therefore it can easily access other systems inside company premises without any VPN connections or firewall openings. 

Security outline 

Frends website is accessed by a secured HTTPS connection. Login to the website is done using either a frendsapp Azure AD credential, the tenant's own SSO, or a local user credential if the Frends UI is installed on-premises.

Configuration and log data in Azure are Encrypted-at-Rest

Frends uses internal NuGet packages to deliver Processes and Tasks to Agents. The NuGet store is located in Azure Blob Storage and accessed with a TLS secured connection for cloud and hybrid installations. In the case of on-premises installations, the NuGet store is accessed through a file share. 

Access to the Service Bus (either on Azure or on-premises) is secured by a TLS connection. Azure Blob Storage is used for the Large Message Store (for transmitting large messages offloaded from the Service Bus) in cloud and hybrid installations, and a file share is used for on-premises installations.

Did this answer your question?