Hardware requirements for Dynatrace Monaco CLI

This page provides an overview of the hardware requirements for Dynatrace Configuration as Code via Monaco.

Required memory

The main hardware requirement of the Dynatrace Monaco CLI is memory.

When executing in a container with a hard memory limit or limited physical hardware, make sure to set a reasonably high memory limit or ensure that swap space is available.

The required memory is mostly defined by the number of configurations and the size of their JSON template files. The following tables give you an idea of memory requirements for sample project sizes; your project might need more or less memory.

Note that the CLI in version 2.9.0 and earlier has higher memory requirements.

Memory limits

You can configure a soft memory limit for the Dynatrace Monaco CLI by setting the GOMEMLIMIT environment variable.

GOMEMLIMIT is a numeric value with an optional unit suffix of B, KiB, MiB, GiB, or TiB. If no suffix is supplied, the value is assumed to be in bytes (B).

For example, to set a limit of 3 gibibytes, set the environment variable as GOMEMLIMIT=3GiB.

As a soft limit, this limit can be exceeded if your deployment needs more memory. Setting too low a limit, however, will result in increased runtime, as more time is spent to free memory when the limit is exceeded. See the table above for estimated memory requirements.

Differences in CLI versions

  • Dynatrace Monaco CLI version 2.8.0+ A default memory limit of 2GiB is applied. To change it, set GOMEMLIMIT.

  • Dynatrace Monaco CLI version 2.7.0 or earlier No default memory limit is applied. The Dynatrace Monaco CLI may consume excessive memory. To apply a memory limit, set GOMEMLIMIT.

CPU impact on deployment times

Available CPU mostly impacts deployment time needed and, unlike memory, doesn't impose hard limits; on more limited hardware, deployments simply take more time.

For example, deploying from a container limited to a single vCPU takes significantly longer than one with several available vCPUs or running directly on a system with a multi-core processor.

The following tables give a rough overview of how the number of configurations impacts deployment times. This merely illustrates the relationship between project size and deployment time and probably won't match deployment time on your specific hardware.

  • With Dynatrace Monaco CLI version 2.7.0+, the deployment times are measured for parallel deployments, which are available by default.
  • With Dynatrace Monaco CLI version 2.6.0 or earlier, deployment is fully sequential and therefore notably slower than with newer versions.