ARO is built on the Cisco Observability Platform, outside of the customer's Kubernetes® clusters, and performs the following functions:

  • Fetches metrics from Kubernetes and App Service Monitoring to evaluate the performance of different configurations.
  • Communicates with the Cisco AppDynamics Smart Agent to start and stop  Servo.
  • Communicates with the Servo to start and stop tests.

The following architecture diagram identifies key components and shows the communication between the components and the customer's Kubernetes cluster. We have also provided descriptions for each component.

Architecture Diagram

Components

Description

Cisco AppDynamics Smart Agent

The Cisco AppDynamics Smart Agent enables the ARO users to deploy Servo to their clusters to test for the most optimal cluster configurations.

The Cisco AppDynamics Smart Agent is deployed to the customer's cluster and resides in the namespace appdynamics. The Cisco AppDynamics Smart Agent is installed with the Cisco AppDynamics Operators. 



Servo

Servo is a small container that facilitates the execution of tests prescribed by ARO on the customer's Kubernetes cluster.

Servo does the following:

  • Starts and stops the Tuning Pod
  • Interacts with the Kubernetes API to carry out tests as well as the management of the Tuning Pod
  • Sends results to ARO

Servo is deployed by the Cisco AppDynamics Smart Agent  to the customer's target workload namespace and needs to reach the ARO and Cisco Observability Platform.


Tuning Pods

The Tuning Pod receives some of the traffic from the Service in the namespaces. This generates metrics observed by ARO to provide feedback on the different configurations.  

The Tuning Pod is created by Servo and resides in the customer's namespaces.