Links

About StackState Agent V2

StackState Self-hosted v5.1.x

Overview

StackState Agent V2 functions as a collector and gateway. It connects to external systems to retrieve data and pushes this to StackState.

About the Agent

Architecture

StackState Agent V2 can be run on Linux or Windows systems or inside a Docker container. It is not necessary to deploy StackState Agent V2 on every machine to retrieve data. Each deployed StackState Agent can run multiple checks to collect data from different external systems.
StackState Agent architecture
  • In Docker Swarm mode, the Cluster Agent is deployed on the manager node and one Agent on each node.
  • On Kubernetes or OpenShift clusters, a single Cluster Agent is deployed per cluster and one Agent on each node. The Checks Agent runs checks that are configured on the Cluster Agent.

Integrations

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.

Open source

StackState Agent V2 is open source and can be found on GitHub at: https://github.com/StackVista/stackstate-agent.

Processes and overhead

StackState Agent V2 consists of up to four different processes - stackstate-agent, trace-agent, process-agent and 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.
stackstate-agent
process-agent
trace-agent
Resource
Usage
CPU
~0.18%
Memory
95-100MB RAM
Disk space
416MB (includes stackstate-agent, process-agent and trace-agent)
Resource
Usage
CPU
up to 0.96%
Memory
52-56MB
Disk space
416MB (includes stackstate-agent, process-agent and trace-agent)
Resource
Usage
CPU
less than 0.04%
Memory
less than 16.8MB
Disk space
416MB (includes stackstate-agent, process-agent and trace-agent)
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).

Running the Agent

Deployment

Deployment instructions, commands to work with StackState Agent V2 and other platform-specific details can be found on the pages listed below:

Connect to StackState

Receiver API address

StackState Agent connects to the StackState Receiver API at the configured <STACKSTATE_RECEIVER_API_ADDRESS>.
Kubernetes
Linux
StackState SaaS
For StackState running on Kubernetes or OpenShift, the <STACKSTATE_RECEIVER_API_ADDRESS> is by default:
https://<STACKSTATE_BASE_URL>/receiver/stsAgent
The <STACKSTATE_BASE_URL> is set during StackState installation. For details see Kubernetes install - configuration parameters.
For StackState running on Linux, the <STACKSTATE_RECEIVER_API_ADDRESS> is by default:
https://<STACKSTATE_RECEIVER_BASE_URL>/stsAgent
The <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 V2 StackPack page after the StackPack has been installed.

Receiver API key

StackState Agent requires the StackState Receiver API key to communicate with the StackState Receiver API.
Kubernetes
Linux
StackState SaaS
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.

Troubleshooting

Log files and debug mode

For details of how to set the Agent log level to debug and access the Agent logs, see the platform-specific Agent pages:

Support knowledge base

Troubleshooting steps for any known issues can be found in the StackState support knowledge base.

Release notes

Release notes for StackState Agent V2 can be found on GitHub at: https://github.com/StackVista/stackstate-agent/blob/master/stackstate-changelog.md​

See also