Application Delivery Management

Architecture

The Citrix Application Delivery Management (ADM) database is integrated with the server, and the server manages all the key processes, such as data collection, NITRO calls. In its data store, the server stores an inventory of instance details, such as host name, software version, running and saved configuration, certificate details, entities configured on the instance. A single server deployment is suitable if you want to process small amounts of traffic or store data for a limited time.

Currently, ADM supports two types of software deployments: single server and high availability.

The following image shows the different subsystems within ADM and how communication happens between the ADM server and managed instances.

localized image

The Service subsystem in ADM acts as a web server that handles HTTP requests and responses that are sent to subsytems within ADM from the GUI or API, using ports 80 and 443. These requests are sent to the subsystems over the message bus (message processing system) by using the IPC (inter-process communication) mechanism. A request is sent to the Control subsystem, which either processes the information or sends it to the appropriate subsystem. Each of the other subsystems—Inventory, Stylebooks, Data Collector, Configuration, AppFlow Decoder, AppFlow Analytics, Performance, Events, Entities, SLA Manager, Provisioner, and Journal—has a specific role.

Instance plug-ins are shared libraries that are unique to each instance type supported by ADM. Information is transferred between ADM and managed instances by using NITRO calls, or through the SNMP, Secure Shell (SSH), or Secure Copy (SCP) protocol. This information is then processed and stored in the internal database (data store).

Architecture