From 45628ac016e896d2d22ead200ab973a33d2477fb Mon Sep 17 00:00:00 2001 From: Manuel Gerding Date: Tue, 26 Nov 2024 15:06:33 +0100 Subject: [PATCH] feat: Adding docs for migrating to client locations --- README.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/README.md b/README.md index 7324e95..ee81d91 100755 --- a/README.md +++ b/README.md @@ -80,3 +80,19 @@ This can be set via helm using the extraEnv variable --set "extraEnv[0].name=HTTPS_PROXY" \ --set "extraEnv[0].value=https:\\user:pwd@CompanyProxy.com:8888" ``` + +## Location Selection +When multiple k6 extensions are deployed in different subsystems (e.g., multiple Kubernetes clusters), it can be tricky to ensure that the load test is performed from the right location when testing cluster-internal URLs or having different load testing hardware sizings. +To solve this, you can activate the location selection feature. +Once you do that, the k6 extension discovers itself as a k6 location. +When configuring the experiment, you can optionally define which extension's deployment should execute the loadtest. +Also, the execution locations are part of Steadybit's environment concept, so you can assign permissions for execution locations. + +### Migration Guideline +Before activating the location selection feature, be sure to follow these steps: +1. The installed agent version needs to be >= X.XX, and - only for on-prem customers - the platform version needs to be >=X.X +2. Activate the location selection via environment or helm variable when deploying the latest extension version (see [configuration options](#configuration). +3. Configure every environment that should be able to run k6 load tests by including the execution location in the environment configuration. + One option is to add the statement `or target via the query language.type="com.steadybit.extension_k6.location"` to your existing query. + You can also filter the available execution locations down, e.g., via the clustername by using `(target.type="com.steadybit.extension_k6.location" and k8s.cluster-name="CLUSTER-NAME")` +