Requirements
Supported Platforms and Architecture
The Scalr agent is distributed as a multi-architecture Docker image, scalr/agent, that supports amd64 and arm64 Linux operating systems. This image can be deployed as a Docker service on a VM, within a Kubernetes cluster, or on a containerized serverless platform. Refer to the installation documentation for deployment details.
All agents within an agent pool should have the same operating system, platform, hardware resources, and configuration. If agents differ in these aspects, Scalr Run performance or behavior may vary significantly across the pool.
Supported Software Versions
Scalr agents provide execution support for the following infrastructure-as-code (IaC) tools and versions:
- Terraform versions 0.12 to 1.5
- OpenTofu versions 1.6 and higher
- Terragrunt versions 0.58.13 and higher
System Requirements
Infrastructure
Scalr agents execute workloads defined by IaC configurations and custom scripts. While resource consumption is highly dependent on your specific IaC configuration and workload type, the following recommendations provide a baseline for optimal performance.
Disk Space
At least 20GB of free disk space
Each run requires the agent to temporarily clone a local copy of the IaC configuration (*.tf
files), any required Terraform providers or modules defined in configuration, and software distributions for Terraform, OpenTofu, Terragrunt, OPA, etc. (these may come as binaries or Docker images).
The agent also stores the Terraform provider plugin cache, which is limited to 2.5GB by default.
You will likely need more disk space if you use large repositories, include many providers and modules in your IaC configuration, or have a wide variety of Terraform providers and software versions across the runs executed by Scalr Agents. Monitor you SCALR_AGENT_DATA_DIR
to and adjust disk space to your needs.
CPU and RAM
At least 2GB of RAM and 1 CPU for a single run The agent service itself requires between 512MB and 1GB of RAM. A single agent instance can handle up to 5 concurrent runs. For each additional concurrent run, reserve at least an extra 512MB of RAM and one additional CPU.
You should monitor memory, CPU, and disk space usage, and adjust resources as needed to ensure optimal resource utilization and performance.
Networking
The agent must be able to make outbound TCP connections to the Scalr platform APIs and the following endpoints:
Hostname | Port/Protocol | Directionality | Purpose |
---|---|---|---|
scalr.io | tcp/443, HTTPS | Outbound | Polling for new tasks, posting task status updates and pushing logs, downloading private modules from the Scalr Module Registry, and downloading IaC configuration versions |
docker.io docker.com cloudfront.net | tcp/443, HTTPS | Outbound | Pulling the scalr/runner golden image or software distributions |
registry.opentofu.org | tcp/443, HTTPS | Outbound | Downloading public providers and modules from the OpenTofu Registry |
registry.terraform.io | tcp/443, HTTPS | Outbound | Downloading public providers and modules from the Terraform Registry |
Additionally, ensure the Scalr Agent can access all services required by your OpenTofu/Terraform configurations or hook scripts, for example, cloud provider APIs, VCS provider APIs, or custom software distribution services.
You will also need to make additional adjustments if you are using custom modules or provider registries in your configuration, or if you have configured custom Docker registry mirrors.
Updated 1 day ago