About the StackState Agent
StackState Self-hosted v5.0.x
This page describes StackState version 5.0.
The StackState Agent functions as a collector and gateway. It connects to external systems to retrieve data and pushes this to StackState.
StackState Agent V2 can be run on Linux or Windows systems or inside a Docker container. It is not necessary to deploy the StackState Agent on every machine to retrieve data. Each deployed StackState Agent can run multiple checks to collect data from different external systems.
StackState Agent architecture
- On Kubernetes or OpenShift clusters, a single Cluster Agent is deployed per cluster and one Agent on each node. The ClusterCheck Agent can optionally be deployed to run checks that are configured on the Cluster Agent.
In StackState, the StackState Agent V2 StackPack includes all the settings required to integrate with a number of external systems. Data from other external systems can be retrieved by installing additional StackPacks in StackState.
To integrate with an external system, an Agent must be deployed in a location that can connect to both the external system and StackState. An Agent check configured on the Agent can then connect to the external system to retrieve data.
Documentation for the available StackState integrations, including how to configure the associated Agent checks, can be found on the StackPacks > Integrations pages.
StackState Agent V2 is open source and can be found on GitHub at: https://github.com/StackVista/stackstate-agent.
StackState Agent V2 consists of up to four different processes -
cluster-agent. To run the basic Agent, the resources named below are required. These were observed running StackState Agent V2 v2.13.0 on a c5.xlarge instance with 4 vCPU cores and 8GB RAM. They give an indication of the overhead for the most simple set up. Actual resource usage will increase based on the Agent configuration running. This can be impacted by factors such as the Agent processes that are enabled, the number and nature of checks running, whether network connection tracking and protocol inspection are enabled, and the number of Kubernetes pods from which metrics are collected on the same host as the Agent.
up to 0.96%
less than 0.04%
less than 16.8MB
On Kubernetes, limits are placed on CPU and memory usage of the Agent, Cluster Agent and Cluster checks. These can be configured in the Agent Helm chart (github.com).
Deployment instructions, commands to work with StackState Agent V2 and other platform-specific details can be found on the pages listed below:
StackState Agent connects to the StackState Receiver API at the configured address.
For StackState running on Kubernetes, the Receiver API is hosted by default at:
<STACKSTATE_BASE_URL>is set during StackState installation. For details see Kubernetes install - configuration parameters.
For StackState running on Linux, the Receiver API is hosted by default at:
<STACKSTATE_RECEIVER_BASE_URL>is set during StackState installation. For details see Linux install - configuration parameters.
For the StackState SaaS product, the StackState Receiver API address will be provided on the StackState UI Agent StackPack page after the StackPack has been installed.
StackState Agent requires the StackState Receiver API key to communicate with the StackState Receiver API.
For StackState running on Kubernetes, the Receiver API Key is set during installation. For details see StackState Kubernetes install - configuration parameters
For StackState running on Linux, the Receiver API Key is set during installation. For details see StackState Linux install - configuration parameters
For the StackState SaaS product, the StackState Receiver API key will be provided on the StackState UI Agent StackPack page after the StackPack has been installed.
For details of how to set the Agent log level to debug and access the Agent logs, see the platform-specific Agent pages:
Release notes for StackState Agent V2 can be found on GitHub at: https://github.com/StackVista/stackstate-agent/blob/master/stackstate-changelog.md