Skip to content

Commit 01c4297

Browse files
committed
Clusters
1 parent feb8f9f commit 01c4297

File tree

2 files changed

+33
-22
lines changed

2 files changed

+33
-22
lines changed

docs/admin/scale.md

Lines changed: 32 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -117,54 +117,65 @@ This will delete all workspaces and users with the prefix `scaletest-`.
117117

118118
## Scale testing template
119119

120-
Besides the CLI utility, consider using a dedicated
120+
Consider using a dedicated
121121
[scaletest-runner](https://github.com/coder/coder/tree/main/scaletest/templates/scaletest-runner)
122-
template for testing large scale Kubernetes clusters.
122+
template alongside the CLI utility for testing large-scale Kubernetes clusters.
123123

124-
The template deploys a main workspace with scripts used to orchestrate Coder to
125-
create workspaces, generate workspace traffic, or load tests workspace apps.
124+
The template deploys a main workspace with scripts used to orchestrate Coder,
125+
creating workspaces, generating workspace traffic, or load-testing workspace
126+
apps.
126127

127128
### Parameters
128129

129130
The _scaletest-runner_ offers the following configuration options:
130131

131-
- workspace template selecting Kubernetes cluster size:
132+
- Workspace template selecting Kubernetes cluster size:
132133
minimal/small/medium/large (_default_: minimal)
133-
- number of workspaces
134-
- wait duration between scenarios or staggered approach
134+
- Number of workspaces
135+
- Wait duration between scenarios or staggered approach
135136

136137
The template exposes parameters to control the traffic dimensions for SSH
137138
connections, workspace apps, and dashboard tests:
138139

139-
- traffic duration of the load test scenario
140-
- traffic percentage of targeted workspaces
141-
- bytes per tick and tick interval
140+
- Traffic duration of the load test scenario
141+
- Traffic percentage of targeted workspaces
142+
- Bytes per tick and tick interval
142143
- _For workspace apps_: modes (echo, read random data, or write and discard)
143144

144145
Scale testing concurrency can be controlled with the following parameters:
145146

146-
- enable parallel scenarios - interleave different traffic patterns (SSH,
147+
- Enable parallel scenarios - interleave different traffic patterns (SSH,
147148
workspace apps, dashboard traffic, etc.)
148-
- workspace creation concurrency level (_default_: 10)
149-
- job concurrency level - generate workspace traffic using multiple jobs
149+
- Workspace creation concurrency level (_default_: 10)
150+
- Job concurrency level - generate workspace traffic using multiple jobs
150151
(_default_: 0)
151-
- cleanup concurrency level
152+
- Cleanup concurrency level
152153

153154
### Kubernetes cluster
154155

155156
Depending on the traffic projections, operators can deploy different sample
156-
clusters to perform scale tests. It is recommend to learn how to operate the
157+
clusters to perform scale tests. It is recommended to learn how to operate the
157158
scaletest-runner before running it against the staging cluster (or production at
158159
your own risk).
159160

160-
There are a few cluster options available:
161+
There are a few cluster options
162+
[available](https://github.com/coder/coder/tree/main/scaletest/templates/scaletest-runner):
161163

162-
- minimal
163-
- small
164-
- medium
165-
- large
164+
| Cluster size | vCPU | Memory | Persisted storage | Details |
165+
| ------------ | ---- | ------ | ----------------- | ----------------------------------------------------- |
166+
| minimal | 1 | 2 Gi | None | |
167+
| small | 1 | 1 Gi | None | |
168+
| medium | 2 | 2 Gi | None | Medium-sized cluster offers the greedy agent variant. |
169+
| large | 4 | 4 Gi | None | |
166170

167-
TODO greedy
171+
#### Greedy agent
172+
173+
The greedy agent variant is a template modification that forces the Coder agent
174+
to transmit large metadata (size: 4K) while emitting stats. The transmission of
175+
large chunks puts extra overhead on coderd instances and agents while processing
176+
and storing the data.
177+
178+
Use this template variant to verify limits of the cluster performance.
168179

169180
### Observability
170181

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# kubernetes-minimal
22

3-
Provisions a medium-sized workspace with no persistent storage. Greedy agent variant.
3+
Provisions a minimal-sized workspace with no persistent storage.
44

55
_Requires_: `cloud.google.com/gke-nodepool` = `big-workspaces`

0 commit comments

Comments
 (0)