Up to 2,000 users

In the 2,000 users architecture, there is a moderate increase in traffic, suggesting a growing user base or expanding operations. This setup is well-suited for mid-sized companies experiencing growth or for universities seeking to accommodate their expanding user populations.

Users can be evenly distributed between 2 regions or be attached to different clusters.

Target load: API: up to 300 RPS

High Availability: The mode is enabled; multiple replicas provide higher deployment reliability under load.

Hardware recommendations

Coderd nodes

UsersNode capacityReplicasGCPAWSAzure
Up to 2,0004 vCPU, 16 GB memory2 nodes / 1 coderd eachn1-standard-4t3.xlargeStandard_D4s_v3

Provisioner nodes

UsersNode capacityReplicasGCPAWSAzure
Up to 2,0008 vCPU, 32 GB memory4 nodes / 30 provisioners eacht2d-standard-8t3.2xlargeStandard_D8s_v3

Footnotes:

  • An external provisioner is deployed as Kubernetes pod.
  • It is not recommended to run provisioner daemons on coderd nodes.
  • Consider separating provisioners into different namespaces in favor of zero-trust or multi-cloud deployments.

Workspace nodes

UsersNode capacityReplicasGCPAWSAzure
Up to 2,0008 vCPU, 32 GB memory128 / 16 workspaces eacht2d-standard-8t3.2xlargeStandard_D8s_v3

Footnotes:

  • Assumed that a workspace user needs 2 GB memory to perform
  • Maximum number of Kubernetes workspace pods per node: 256
  • Nodes can be distributed in 2 regions, not necessarily evenly split, depending on developer team sizes

Database nodes

UsersNode capacityReplicasStorageGCPAWSAzure
Up to 2,0004 vCPU, 16 GB memory11 TBdb-custom-4-15360db.t3.xlargeStandard_D4s_v3

Footnotes:

  • Consider adding more replicas if the workspace activity is higher than 500 workspace builds per day or to achieve higher RPS.
See an opportunity to improve our docs? Make an edit.