LogoLogo
Reliability HubAPI DocsPlatform
  • Welcome to Steadybit
  • Quick Start
    • First Steps
    • Compatibility
    • Install Agent and Extensions
    • Run an Experiment
    • Deploy Example Application
  • Concepts
    • Actions
    • Discovery
    • Query Language
  • Install and Configure
    • Install Agent
      • Architecture
      • Install on Kubernetes
      • Install on Linux Hosts
      • Install using Docker Compose
      • Install on Amazon ECS
      • Extension Registration
      • Using Mutual TLS for Extensions
      • Configuration Options
      • Agent State
      • Agent API
    • Install On-Prem Platform
      • Install on Minikube
      • Advanced Agent Authentication
      • Configuration Options
      • Maintenance & Incident Support
      • Syncing Teams via OIDC Attribute
    • Manage Environments
    • Manage Teams and Users
      • Users
      • Teams
      • Permissions
    • Manage Experiment Templates
  • Use Steadybit
    • Experiments
      • Design
      • Run
      • Run History
      • Schedule
      • Variables
      • Emergency Stop
      • Share
        • Templates
        • Duplicate
        • File
      • OpenTelemetry Integration
    • Explorer
      • Landscape
      • Targets
      • Advice
    • Reporting
  • Integrate with Steadybit
    • Extensions
      • Anatomy of an Extension
      • Extension Installation
      • Extension Kits
      • Available Extensions
    • API
      • Interactive API Documentation
    • CLI
    • Badges
    • Webhooks
      • Custom Webhooks
      • Preflight Webhooks
    • Preflight Actions
    • Slack Notifications
    • Audit Log
    • Hubs
  • Troubleshooting
    • How to troubleshoot
    • Common fixes
      • Extensions
      • Agents
      • On-prem platform
Powered by GitBook

Extension Docs

  • ActionKit
  • DiscoveryKit
  • EventKit

More Resources

  • Reliability Hub
  • API Docs
On this page
  • Configuration
  • Extension Registrations
  • Execution State

Was this helpful?

Edit on GitHub
  1. Install and Configure
  2. Install Agent

Agent State

Last updated 4 months ago

Was this helpful?

The agent keeps most of its state in memory.

However, some information is persisted to ensure that the agent can recover from a restart.

Configuration

The default state provider is a file-based provider that stores the agent's state by default in the directory /var/lib/steadybit-agent. The path can be configured via the STEADYBIT_AGENT_STATE_PATH environment variable. The helm chart is, by default, creating a statefulset with a persistent volume claim to store the agent's state.

Another option is to use as a state provider. The following set of environment variables can be used to configure this.

Environment Variable
Required
Description

STEADYBIT_AGENT_IDENTIFIER

yes

The unique agent identifiert, required if redis is used. Should be stable across restarts.

STEADYBIT_AGENT_STATE_PROVIDER

yes

Needs to be set to redis

STEADYBIT_AGENT_STATE_REDIS_HOST

yes

The redis host

STEADYBIT_AGENT_STATE_REDIS_PORT

no

The redis port, defaults to 6379

STEADYBIT_AGENT_STATE_REDIS_USERNAME

no

The redis username

STEADYBIT_AGENT_STATE_REDIS_PASSWORD

no

The redis password

STEADYBIT_AGENT_STATE_REDIS_DB

no

The redis database, defaults to 0

STEADYBIT_AGENT_STATE_REDIS_SSL_ENABLED

no

Should SSL be used

Extension Registrations

The agent persists extension registrations to ensure they are not lost after a restart. Extension registrations can be maintained via the agent API, see .

If redis is used as the state provider, existing file-based extension registrations are ignored.

Auto discovered extensions from Kubernetes are independently registered and not persisted via the configured persistence provider. They are also not visible or manageable via the agent API.

Execution State

The agent keeps track of an experiment's current execution state. This state is persisted so that actions can be rolled back in case of an agent restart.

Redis
Extension Registration