From 44b98e103a5ed0f98f8c9eb816baec8e097ae18d Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Wed, 14 Aug 2024 20:39:27 +0000 Subject: [PATCH 1/5] moved scaling docs under admin/infastructure --- .../scale-testing.md | 22 ++++++++------- .../scale-utility.md | 15 ++++++----- docs/admin/networking/workspace-proxies.md | 13 ++++----- docs/admin/scaling/README.md | 1 - docs/manifest.json | 27 +++++++------------ 5 files changed, 37 insertions(+), 41 deletions(-) rename docs/admin/{scaling => infrastructure}/scale-testing.md (93%) rename docs/admin/{scaling => infrastructure}/scale-utility.md (95%) delete mode 100644 docs/admin/scaling/README.md diff --git a/docs/admin/scaling/scale-testing.md b/docs/admin/infrastructure/scale-testing.md similarity index 93% rename from docs/admin/scaling/scale-testing.md rename to docs/admin/infrastructure/scale-testing.md index f107dc7f7f071..e41ef86e5f40f 100644 --- a/docs/admin/scaling/scale-testing.md +++ b/docs/admin/infrastructure/scale-testing.md @@ -90,11 +90,11 @@ Database: ## Available reference architectures -[Up to 1,000 users](../../architecture/1k-users.md) +[Up to 1,000 users](./validated-architectures/1k-users.md) -[Up to 2,000 users](../../architecture/2k-users.md) +[Up to 2,000 users](./validated-architectures/2k-users.md) -[Up to 3,000 users](../../architecture/3k-users.md) +[Up to 3,000 users](./validated-architectures/3k-users.md) ## Hardware recommendation @@ -112,13 +112,14 @@ on the workload size to ensure deployment stability. #### CPU and memory usage -Enabling [agent stats collection](../../cli.md#--prometheus-collect-agent-stats) +Enabling +[agent stats collection](../../reference/cli/README.md#--prometheus-collect-agent-stats) (optional) may increase memory consumption. Enabling direct connections between users and workspace agents (apps or SSH traffic) can help prevent an increase in CPU usage. It is recommended to keep -[this option enabled](../../cli.md#--disable-direct-connections) unless there -are compelling reasons to disable it. +[this option enabled](../../reference/cli/README.md#--disable-direct-connections) +unless there are compelling reasons to disable it. Inactive users do not consume Coder resources. @@ -148,18 +149,19 @@ Terminal (bidirectional), and Workspace events/logs (unidirectional). If the Coder deployment expects traffic from developers spread across the globe, be aware that customer-facing latency might be higher because of the distance between users and the load balancer. Fortunately, the latency can be improved -with a deployment of Coder [workspace proxies](../workspace-proxies.md). +with a deployment of Coder +[workspace proxies](../networking/workspace-proxies.md). **Node Autoscaling** We recommend disabling the autoscaling for `coderd` nodes. Autoscaling can cause interruptions for user connections, see -[Autoscaling](scale-utility.md#autoscaling) for more details. +[Autoscaling](./scale-utility.md#autoscaling) for more details. ### Control plane: Workspace Proxies -When scaling [workspace proxies](../workspace-proxies.md), follow the same -guidelines as for `coderd` above: +When scaling [workspace proxies](../networking/workspace-proxies.md), follow the +same guidelines as for `coderd` above: - `1 vCPU x 2 GB memory` for every 250 users. - Disable autoscaling. diff --git a/docs/admin/scaling/scale-utility.md b/docs/admin/infrastructure/scale-utility.md similarity index 95% rename from docs/admin/scaling/scale-utility.md rename to docs/admin/infrastructure/scale-utility.md index 05e6e031b2278..717688d03adda 100644 --- a/docs/admin/scaling/scale-utility.md +++ b/docs/admin/infrastructure/scale-utility.md @@ -6,15 +6,15 @@ infrastructure. For scale-testing Kubernetes clusters we recommend to install and use the dedicated Coder template, [scaletest-runner](https://github.com/coder/coder/tree/main/scaletest/templates/scaletest-runner). -Learn more about [Coder’s architecture](../../architecture/architecture.md) and -our [scale-testing methodology](./scale-testing.md). +Learn more about [Coder’s architecture](./architecture/architecture.md) and our +[scale-testing methodology](./scale-testing.md). ## Recent scale tests > Note: the below information is for reference purposes only, and are not > intended to be used as guidelines for infrastructure sizing. Review the -> [Reference Architectures](../../architecture/validated-arch.md#node-sizing) -> for hardware sizing recommendations. +> [Reference Architectures](./validated-architectures/README.md#node-sizing) for +> hardware sizing recommendations. | Environment | Coder CPU | Coder RAM | Coder Replicas | Database | Users | Concurrent builds | Concurrent connections (Terminal/SSH) | Coder Version | Last tested | | ---------------- | --------- | --------- | -------------- | ----------------- | ----- | ----------------- | ------------------------------------- | ------------- | ------------ | @@ -249,6 +249,7 @@ an annotation on the coderd deployment. ## Troubleshooting If a load test fails or if you are experiencing performance issues during -day-to-day use, you can leverage Coder's [Prometheus metrics](../prometheus.md) -to identify bottlenecks during scale tests. Additionally, you can use your -existing cloud monitoring stack to measure load, view server logs, etc. +day-to-day use, you can leverage Coder's +[Prometheus metrics](../integrations/prometheus.md) to identify bottlenecks +during scale tests. Additionally, you can use your existing cloud monitoring +stack to measure load, view server logs, etc. diff --git a/docs/admin/networking/workspace-proxies.md b/docs/admin/networking/workspace-proxies.md index b9883f9fb2ba0..024e09fd632e0 100644 --- a/docs/admin/networking/workspace-proxies.md +++ b/docs/admin/networking/workspace-proxies.md @@ -4,8 +4,9 @@ Workspace proxies provide low-latency experiences for geo-distributed teams. Coder's networking does a best effort to make direct connections to a workspace. In situations where this is not possible, such as connections via the web -terminal and [web IDEs](../../user-guides/workspace-access/README.md#web-ides), workspace proxies are able to -reduce the amount of distance the network traffic needs to travel. +terminal and [web IDEs](../../user-guides/workspace-access/README.md#web-ides), +workspace proxies are able to reduce the amount of distance the network traffic +needs to travel. A workspace proxy is a relay connection a developer can choose to use when connecting with their workspace over SSH, a workspace app, port forwarding, etc. @@ -26,8 +27,8 @@ Workspace proxies can be used in the browser by navigating to the user ## Requirements -- The [Coder CLI](../../reference/cli/README.md) must be installed and authenticated as a user with - the Owner role. +- The [Coder CLI](../../reference/cli/README.md) must be installed and + authenticated as a user with the Owner role. ## Step 1: Create the proxy @@ -149,8 +150,8 @@ coder wsproxy server ### Running as a system service -If you've installed Coder via a [system package](../../install/README.md), you can -configure the workspace proxy by settings in +If you've installed Coder via a [system package](../../install/README.md), you +can configure the workspace proxy by settings in `/etc/coder.d/coder-workspace-proxy.env` To run workspace proxy as a system service on the host: diff --git a/docs/admin/scaling/README.md b/docs/admin/scaling/README.md deleted file mode 100644 index 1333ed77b7e1e..0000000000000 --- a/docs/admin/scaling/README.md +++ /dev/null @@ -1 +0,0 @@ -TODO diff --git a/docs/manifest.json b/docs/manifest.json index ef2135bed7bc9..f802c6fbfeec1 100644 --- a/docs/manifest.json +++ b/docs/manifest.json @@ -169,6 +169,16 @@ "path": "./admin/infrastructure/validated-architectures/3k-users.md" } ] + }, + { + "title": "Scale Testing", + "description": "Ensure your deployment can handle your organization's needs", + "path": "./admin/infrastructure/scale-testing.md" + }, + { + "title": "Scaling Utilities", + "description": "Tools to help you scale your deployment", + "path": "./admin/infrastructure/scaling-utility.md" } ] }, @@ -381,23 +391,6 @@ "path": "./admin/security/secrets.md" } ] - }, - { - "title": "Scaling", - "description": "Scale your deployment to meet your organization's needs", - "path": "./admin/scaling/README.md", - "children": [ - { - "title": "Scale Testing", - "description": "Ensure your deployment can handle your organization's needs", - "path": "./admin/scaling/scale-testing.md" - }, - { - "title": "Scaling Utilities", - "description": "Tools to help you scale your deployment", - "path": "./admin/scaling/scaling-utility.md" - } - ] } ] }, From 36600e7780c930b3985388c9497d7d3b2582f759 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Wed, 14 Aug 2024 21:44:30 +0000 Subject: [PATCH 2/5] fixed typos, link --- docs/start/coder-tour.md | 4 ++-- docs/start/local-deploy.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/start/coder-tour.md b/docs/start/coder-tour.md index 8dff99993f495..1abd3a6f479b7 100644 --- a/docs/start/coder-tour.md +++ b/docs/start/coder-tour.md @@ -7,8 +7,8 @@ is completely free and leverages our We'll use [Docker](https://docs.docker.com/engine) to manage the compute for a slim deployment to experiment with -[workpsaces](../tutorials/workspaces/README.md) and -[templates](../tutorials/templates/README.md). +[workspaces](../user-guides/README.md) and +[templates](../admin/templates/README.md). Docker is not necessary for every Coder deployment and is only used here for simplicity. diff --git a/docs/start/local-deploy.md b/docs/start/local-deploy.md index 59d97e3909e33..f77719e73c91d 100644 --- a/docs/start/local-deploy.md +++ b/docs/start/local-deploy.md @@ -6,8 +6,8 @@ Coder deployment from our We'll use [Docker](https://docs.docker.com/engine) to manage the compute for a slim deployment to experiment with -[workpsaces](../tutorials/workspaces/README.md) and -[templates](../tutorials/templates/README.md). +[workspaces](../user-guides/README.md) and +[templates](../admin/templates/README.md). Docker is not necessary for every Coder deployment and is only used here for simplicity. From f3baf6ad87beb9b4f9d74c72dca60e915d79b66c Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Wed, 14 Aug 2024 21:45:39 +0000 Subject: [PATCH 3/5] jetbrains typo --- docs/start/local-install.mnd | 2 -- docs/user-guides/workspace-access.md | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) delete mode 100644 docs/start/local-install.mnd diff --git a/docs/start/local-install.mnd b/docs/start/local-install.mnd deleted file mode 100644 index 431e07d72b10e..0000000000000 --- a/docs/start/local-install.mnd +++ /dev/null @@ -1,2 +0,0 @@ -## INs -t diff --git a/docs/user-guides/workspace-access.md b/docs/user-guides/workspace-access.md index dd92a5456c340..0d65530e0ddb4 100644 --- a/docs/user-guides/workspace-access.md +++ b/docs/user-guides/workspace-access.md @@ -9,4 +9,4 @@ TODO: - port forwarding - coder apps - VSCode -- Jetbrains +- JetBrains From 8f63637e12cf6b37fb4d6d76dc2f5fb38b84c5fa Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Thu, 15 Aug 2024 16:22:38 +0000 Subject: [PATCH 4/5] fmt --- docs/start/coder-tour.md | 3 +-- docs/start/local-deploy.md | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/docs/start/coder-tour.md b/docs/start/coder-tour.md index 1abd3a6f479b7..9263b11e6313d 100644 --- a/docs/start/coder-tour.md +++ b/docs/start/coder-tour.md @@ -6,8 +6,7 @@ is completely free and leverages our [open source repository](https://github.com/coder/coder). We'll use [Docker](https://docs.docker.com/engine) to manage the compute for a -slim deployment to experiment with -[workspaces](../user-guides/README.md) and +slim deployment to experiment with [workspaces](../user-guides/README.md) and [templates](../admin/templates/README.md). Docker is not necessary for every Coder deployment and is only used here for diff --git a/docs/start/local-deploy.md b/docs/start/local-deploy.md index f77719e73c91d..b373eb8c06a49 100644 --- a/docs/start/local-deploy.md +++ b/docs/start/local-deploy.md @@ -5,8 +5,7 @@ Coder deployment from our [open source repository](https://github.com/coder/coder). We'll use [Docker](https://docs.docker.com/engine) to manage the compute for a -slim deployment to experiment with -[workspaces](../user-guides/README.md) and +slim deployment to experiment with [workspaces](../user-guides/README.md) and [templates](../admin/templates/README.md). Docker is not necessary for every Coder deployment and is only used here for From 0c4236a7a024256f0e238bd7526dadbd13a685a4 Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Thu, 15 Aug 2024 19:38:20 +0300 Subject: [PATCH 5/5] Update docs/manifest.json --- docs/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/manifest.json b/docs/manifest.json index f802c6fbfeec1..eee6b7ae0b963 100644 --- a/docs/manifest.json +++ b/docs/manifest.json @@ -178,7 +178,7 @@ { "title": "Scaling Utilities", "description": "Tools to help you scale your deployment", - "path": "./admin/infrastructure/scaling-utility.md" + "path": "./admin/infrastructure/scale-utility.md" } ] },