Skip to content

Advanced runner specification

NOTE 🗒: The sizes have each individual sizes of help and service containers. If you are not using them specifically you can ignore the following specification

NOTE 🗒: The specification is in format lower-upper. Lower number in the range is guaranteed the upper number is the limit.

Container sizes

Cores Memory (GiB) Disk (GiB)
kgr1-instance-mini
main container 0.5 - 0.5 1.6 - 2 4 - 13
service container 0.2 - 0.3 0.4 - 0.8 2 - 4
helper container 0.1 - 0.15 0.5 - 0.5 0.25 - 0.5
kgr1-instance-standard
main container 1 - 1 2.8 - 3.7 10 - 26
service container 0.3 - 0.6 1 - 2 2 - 8
helper container 0.2 - 0.3 0.5 - 0.75 0.25 - 1
kgr1-instance-extraordinary
main container 4 - 6 44 - 45 44 - 92
service container 1 - 1 4 - 8 12 - 24
helper container 0.8 - 0.9 1 - 4 1 - 4

Expert size modification

WARNING ❗: The resource limit ranges has been tailored to fit the underlying infrastructure and should work fine with most of the workloads. If you change it, runners may not be starting or failing.

In some use cases you might need special resource setup. For such case you can overwrite the request (minimal guaranteed) and limit (maximal guaranteed) of each resources, but within predefined overwrite ranges. This is enabled only for standard and extraordinary runners.

NOTE 🗒: The sizes are in format lower-upper - lower size in the range is guaranteed, the upper number is the ressource limit.

Cores Memory (GiB) Disk (GiB)
kgr1-instance-standard
main container 1.5 - 1.56 5.37 - 5.47 24 - 32
service container 1 - 1 2 - 2.25 8 - 16
helper container 0.3 - 0.4 0.75 - 1 1 - 2
kgr1-instance-extraordinary
main container 7 - 7 50 - 53 116 - 116
service container 2 - 2 16 - 16 64 - 64
helper container 1 - 1 4 - 8 16 - 16

Concurrency and its limits

Runner concurrency limit

Each runner has assigned limit for concurrency, which limits how many jobs it can run at once (for all users together).

Global concurrency limit

alt text Exlanational diagram

In our cluster no global concurrency is set by configuration, but by the hardware size. Our goal is to always use maximally the whole clusters for runners, so there is no hardcoded number for limitation. Still there exist a limit which globally borders the global concurrency, this limit is lower then total sum of each runner concurrences limits.