From e9df8b8eee66ba71a0141fba72406798757baef9 Mon Sep 17 00:00:00 2001 From: salonichf5 <146118978+salonichf5@users.noreply.github.com> Date: Wed, 20 Mar 2024 16:36:44 -0600 Subject: [PATCH] Add test results for zero downtime scaling (#1733) Adds tests results for zero downtime scaling for 1.2.0 release --- .../results/1.2.0/1.2.0.md | 600 ++++++++++++++++++ .../1.2.0/10-node/abrupt-down-http.png | Bin 0 -> 11200 bytes .../1.2.0/10-node/abrupt-down-https.png | Bin 0 -> 11309 bytes .../results/1.2.0/10-node/abrupt-up-http.png | Bin 0 -> 11471 bytes .../results/1.2.0/10-node/abrupt-up-https.png | Bin 0 -> 11585 bytes .../1.2.0/10-node/gradual-down-http.png | Bin 0 -> 11750 bytes .../1.2.0/10-node/gradual-down-https.png | Bin 0 -> 11749 bytes .../results/1.2.0/10-node/gradual-up-http.png | Bin 0 -> 11374 bytes .../1.2.0/10-node/gradual-up-https.png | Bin 0 -> 11375 bytes .../1.2.0/25-node/abrupt-down-http.png | Bin 0 -> 11484 bytes .../1.2.0/25-node/abrupt-down-https.png | Bin 0 -> 11582 bytes .../results/1.2.0/25-node/abrupt-up-http.png | Bin 0 -> 11522 bytes .../results/1.2.0/25-node/abrupt-up-https.png | Bin 0 -> 11518 bytes .../1.2.0/25-node/gradual-down-http.png | Bin 0 -> 11522 bytes .../1.2.0/25-node/gradual-down-https.png | Bin 0 -> 11518 bytes .../results/1.2.0/25-node/gradual-up-http.png | Bin 0 -> 12067 bytes .../1.2.0/25-node/gradual-up-https.png | Bin 0 -> 12067 bytes 17 files changed, 600 insertions(+) create mode 100644 tests/zero-downtime-scaling/results/1.2.0/1.2.0.md create mode 100644 tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-down-http.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-down-https.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-up-http.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-up-https.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/10-node/gradual-down-http.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/10-node/gradual-down-https.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/10-node/gradual-up-http.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/10-node/gradual-up-https.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/25-node/abrupt-down-http.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/25-node/abrupt-down-https.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/25-node/abrupt-up-http.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/25-node/abrupt-up-https.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/25-node/gradual-down-http.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/25-node/gradual-down-https.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/25-node/gradual-up-http.png create mode 100644 tests/zero-downtime-scaling/results/1.2.0/25-node/gradual-up-https.png diff --git a/tests/zero-downtime-scaling/results/1.2.0/1.2.0.md b/tests/zero-downtime-scaling/results/1.2.0/1.2.0.md new file mode 100644 index 000000000..d8457c8b8 --- /dev/null +++ b/tests/zero-downtime-scaling/results/1.2.0/1.2.0.md @@ -0,0 +1,600 @@ +# Results + +## Versions + +Kubernetes: + +```text +Server Version: version.Info{Major:"1", Minor:"27", GitVersion:"v1.27.8-gke.1067004", GitCommit:"6f460c12ad45abb234c18ec4f0ea335a1203c415", GitTreeState:"clean", BuildDate:"2024-01-04T22:48:32Z", GoVersion:"go1.20.11 X:boringcrypto", Compiler:"gc", Platform:"linux/amd64"} +``` + +NGF: + +```text +"version":"edge" +"commit":"5b9f37c6556388e28d2cd168810b728cca4c0e46" +"date":"2024-03-19T20:53:54Z" +``` + +with NGINX: + +```text +nginx version: nginx/1.25.4 +Built by gcc 12.2.1 20220924 (Alpine 12.2.1_git20220924-r10) +OS: Linux 5.15.133+ +``` + +## Summary + +Results are similar with 1.1.0 test results. Noticed some spikes in NGF log errors when downgrading the number of replicas from 25 to 1 related to telemetry. Further investigating might be needed. + +Added a new issue related to telemetry collection failure when scaling down NGF + +- https://github.com/nginxinc/nginx-gateway-fabric/issues/1738 + +## 10 Node Cluster Test Results + + +### Scale Up Gradually + +HTTP wrk output + +```text +wrk -t2 -c2 -d5m --latency --timeout 2s http://cafe.example.com/coffee +Running 5m test @ http://cafe.example.com/coffee + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.50ms 773.48us 34.14ms 92.03% + Req/Sec 687.59 106.56 0.97k 70.74% + Latency Distribution + 50% 1.37ms + 75% 1.67ms + 90% 2.06ms + 99% 4.20ms + 351750 requests in 4.28m, 125.39MB read + Socket errors: connect 0, read 16, write 0, timeout 0 +Requests/sec: 1368.69 +Transfer/sec: 499.62KB +``` + +HTTP Graph: + +![gradual-up-http.png](10-node/gradual-up-http.png) + + +HTTPS wrk output + +```text +wrk -t2 -c2 -d5m --latency --timeout 2s https://cafe.example.com/tea +Running 5m test @ https://cafe.example.com/tea + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.60ms 769.01us 36.29ms 92.22% + Req/Sec 641.09 97.84 0.96k 70.71% + Latency Distribution + 50% 1.47ms + 75% 1.77ms + 90% 2.16ms + 99% 4.27ms + 328759 requests in 4.29m, 114.88MB read + Socket errors: connect 0, read 16, write 0, timeout 0 +Requests/sec: 1276.21 +Transfer/sec: 456.64KB +``` + +HTTPS Graph: + +![gradual-up-https.png](10-node/gradual-up-https.png) + +Logs: + +- NGF error logs: none +- NGINX error/warn logs: none +- NGINX access logs + - 842986 [200 Oks] + - One 499 `INFO 2024-03-19T21:28:15.266352183Z [resource.labels.containerName: nginx] 10.150.0.27 - - [19/Mar/2024:21:28:15 +0000] "GET /tea HTTP/1.1" 499 0 "-" "-"` + + +### Scale Down Gradually + +HTTP wrk output + +```text +wrk -t2 -c2 -d20m --latency --timeout 2s http://cafe.example.com/coffee +Running 20m test @ http://cafe.example.com/coffee + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 8.99ms 71.48ms 1.07s 98.65% + Req/Sec 704.32 82.44 0.95k 74.78% + Latency Distribution + 50% 1.35ms + 75% 1.63ms + 90% 2.03ms + 99% 326.29ms + 1603461 requests in 19.81m, 570.38MB read + Socket errors: connect 0, read 21, write 0, timeout 10 +Requests/sec: 1349.02 +Transfer/sec: 491.38KB +``` + +HTTP Graph + +![gradual-down-http.png](10-node/gradual-down-http.png) + + +HTPPS wrk output + +```text +wrk -t2 -c2 -d20m --latency --timeout 2s https://cafe.example.com/tea +Running 20m test @ https://cafe.example.com/tea + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 7.13ms 61.54ms 1.07s 98.98% + Req/Sec 661.77 77.50 0.90k 75.68% + Latency Distribution + 50% 1.43ms + 75% 1.73ms + 90% 2.13ms + 99% 85.50ms + 1500047 requests in 19.75m, 523.58MB read + Socket errors: connect 0, read 27, write 0, timeout 12 +Requests/sec: 1265.79 +Transfer/sec: 452.41KB +``` + +HTTPS Graph + +![gradual-down-https.png](10-node/gradual-down-https.png) + +Logs: + +- NGF error logs: 25 + +All or most errors were related to failure collecting telemetry. The below error occurred 25 times. + +```text +{"error":"failed to collect cluster information: failed to get NodeList: Get "https://10.119.32.1:443/api/v1/nodes?timeout=10s": context canceled", "level":"error", "logger":"telemetryJob", "msg":"Failed to collect telemetry data", "stacktrace":"github.com/nginxinc/nginx-gateway-fabric/internal/mode/static.createTelemetryJob.CreateTelemetryJobWorker.func4 + /home/runner/work/nginx-gateway-fabric/nginx-gateway-fabric/internal/mode/static/telemetry/job_worker.go:29 +k8s.io/apimachinery/pkg/util/wait.JitterUntilWithContext.func1 + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:259 +k8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1 + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:226 +k8s.io/apimachinery/pkg/util/wait.BackoffUntil + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:227 +k8s.io/apimachinery/pkg/util/wait.JitterUntil + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:204 +k8s.io/apimachinery/pkg/util/wait.JitterUntilWithContext + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:259 +github.com/nginxinc/nginx-gateway-fabric/internal/framework/runnables.(*CronJob).Start + /home/runner/work/nginx-gateway-fabric/nginx-gateway-fabric/internal/framework/runnables/cronjob.go:53 +sigs.k8s.io/controller-runtime/pkg/manager.(*runnableGroup).reconcile.func1 + pkg/mod/sigs.k8s.io/controller-runtime@v0.17.2/pkg/manager/runnable_group.go:223", "ts":"2024-03-20T16:56:30Z"} +``` + +- NGINX error/warn logs: none +- NGINX access logs: + - 3.06 million 200s + + +### Scale Up Abruptly + +HTTP wrk output + +```text +wrk -t2 -c2 -d2m --latency --timeout 2s http://cafe.example.com/coffee +Running 2m test @ http://cafe.example.com/coffee + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.52ms 1.00ms 42.25ms 94.80% + Req/Sec 693.39 100.35 0.94k 70.54% + Latency Distribution + 50% 1.35ms + 75% 1.64ms + 90% 2.08ms + 99% 5.19ms + 165726 requests in 2.00m, 58.95MB read + Socket errors: connect 0, read 2, write 0, timeout 0 +Requests/sec: 1380.12 +Transfer/sec: 502.71KB +``` + +HTTP Graph + +![abrupt-up-http.png](10-node/abrupt-up-http.png) + +HTTPS wrk output + +```text +wrk -t2 -c2 -d2m --latency --timeout 2s https://cafe.example.com/tea +Running 2m test @ https://cafe.example.com/tea + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.60ms 0.95ms 31.53ms 93.64% + Req/Sec 651.71 93.73 0.88k 69.42% + Latency Distribution + 50% 1.43ms + 75% 1.74ms + 90% 2.20ms + 99% 5.14ms + 155793 requests in 2.00m, 54.38MB read +Requests/sec: 1297.29 +Transfer/sec: 463.67KB +``` + +HTTPS Graph + +![abrupt-up-https.png](10-node/abrupt-up-https.png) + +Logs: + +- NGF error logs - none +- NGINX error/warn logs - none +- NGINX access logs + - 24289 200s + + +### Scale Down Abruptly + + +HTTP wrk output + +```text +wrk -t2 -c2 -d2m --latency --timeout 2s http://cafe.example.com/coffee +Running 2m test @ http://cafe.example.com/coffee + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.60ms 1.00ms 34.67ms 94.04% + Req/Sec 653.17 105.34 0.95k 73.63% + Latency Distribution + 50% 1.41ms + 75% 1.75ms + 90% 2.23ms + 99% 5.61ms + 138169 requests in 2.00m, 49.15MB read +Requests/sec: 1150.52 +Transfer/sec: 419.08KB +``` + +HTTP graph + +![abrupt-down-http.png](10-node/abrupt-down-http.png) + +HTTPS wrk output + +```text +wrk -t2 -c2 -d2m --latency --timeout 2s https://cafe.example.com/tea +Running 2m test @ https://cafe.example.com/tea + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.70ms 1.07ms 41.66ms 94.23% + Req/Sec 612.48 95.98 0.96k 76.40% + Latency Distribution + 50% 1.50ms + 75% 1.86ms + 90% 2.37ms + 99% 5.68ms + 126165 requests in 2.00m, 44.04MB read +Requests/sec: 1051.24 +Transfer/sec: 375.73KB +``` + +HTTPS graph + +![abrupt-down-http.png](10-node/abrupt-down-http.png) + +Logs + +- NGINX error/warn logs - none +- NGF error logs - 25 + +All errors were related to failure collecting telemetry. The below error occurred 25 times. + +```text +{"error":"failed to collect cluster information: failed to get NodeList: Get "https://10.119.32.1:443/api/v1/nodes?timeout=10s": context canceled", "level":"error", "logger":"telemetryJob", "msg":"Failed to collect telemetry data", "stacktrace":"github.com/nginxinc/nginx-gateway-fabric/internal/mode/static.createTelemetryJob.CreateTelemetryJobWorker.func4 + /home/runner/work/nginx-gateway-fabric/nginx-gateway-fabric/internal/mode/static/telemetry/job_worker.go:29 +k8s.io/apimachinery/pkg/util/wait.JitterUntilWithContext.func1 + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:259 +k8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1 + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:226 +k8s.io/apimachinery/pkg/util/wait.BackoffUntil + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:227 +k8s.io/apimachinery/pkg/util/wait.JitterUntil + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:204 +k8s.io/apimachinery/pkg/util/wait.JitterUntilWithContext + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:259 +github.com/nginxinc/nginx-gateway-fabric/internal/framework/runnables.(*CronJob).Start + /home/runner/work/nginx-gateway-fabric/nginx-gateway-fabric/internal/framework/runnables/cronjob.go:53 +sigs.k8s.io/controller-runtime/pkg/manager.(*runnableGroup).reconcile.func1 + pkg/mod/sigs.k8s.io/controller-runtime@v0.17.2/pkg/manager/runnable_group.go:223", "ts":"2024-03-20T16:56:30Z"} +``` + +- NGINX access logs + - 265 K 200s + - Four 499 + +```text +INFO 2024-03-20T03:02:03.477744939Z [resource.labels.containerName: nginx] 10.150.0.26 - - [20/Mar/2024:03:02:03 +0000] "GET /coffee HTTP/1.1" 499 0 "-" "-" +INFO 2024-03-20T03:02:03.477834719Z [resource.labels.containerName: nginx] 10.150.0.26 - - [20/Mar/2024:03:02:03 +0000] "GET /coffee HTTP/1.1" 499 0 "-" "-" +10.150.0.27 - - [20/Mar/2024:03:02:06 +0000] "GET /tea HTTP/1.1" 499 0 "-" "-" +10.150.0.27 - - [20/Mar/2024:03:02:06 +0000] "GET /tea HTTP/1.1" 499 0 "-" "-" +``` + + + +## 25 Node Cluster Test Results + + +### Scale up gradually + +HTTP wrk output + +```text +wrk -t2 -c2 -d5m --latency --timeout 2s http://cafe.example.com/coffee +Running 5m test @ http://cafe.example.com/coffee + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.47ms 697.26us 45.93ms 91.30% + Req/Sec 695.91 96.01 0.96k 70.37% + Latency Distribution + 50% 1.37ms + 75% 1.65ms + 90% 1.99ms + 99% 3.68ms + 415650 requests in 5.00m, 148.17MB read + Socket errors: connect 0, read 15, write 0, timeout 0 +Requests/sec: 1385.14 +Transfer/sec: 505.62KB +``` + + +HTTP graph + +![gradual-up-http.png](25-node/gradual-up-http.png) + + +HTTPS wrk output + +```text +wrk -t2 -c2 -d5m --latency --timeout 2s https://cafe.example.com/tea +Running 5m test @ https://cafe.example.com/tea + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.57ms 674.38us 29.21ms 89.90% + Req/Sec 651.41 93.81 0.92k 67.69% + Latency Distribution + 50% 1.45ms + 75% 1.75ms + 90% 2.11ms + 99% 3.93ms + 386578 requests in 4.97m, 135.08MB read + Socket errors: connect 0, read 14, write 0, timeout 0 +Requests/sec: 1296.69 +Transfer/sec: 463.96KB +``` + + +HTTPS graph + +![gradual-up-https.png](25-node/gradual-up-https.png) + +Logs + +- NGF error logs - none +- NGINX error/warn logs - none +- NGINX Access Logs: + - 260K 200s + - Zero 499s + + + +### Scale down gradually + + +HTTP wrk output + +```text +wrk -t2 -c2 -d20m --latency --timeout 2s http://cafe.example.com/coffee +Running 20m test @ http://cafe.example.com/coffee + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 5.63ms 53.03ms 1.06s 99.24% + Req/Sec 673.05 87.81 0.97k 72.66% + Latency Distribution + 50% 1.42ms + 75% 1.71ms + 90% 2.07ms + 99% 6.44ms + 1480823 requests in 18.87m, 527.88MB read + Socket errors: connect 0, read 19, write 2, timeout 5 +Requests/sec: 1307.77 +Transfer/sec: 477.38KB +``` + +HTTP graph + +![gradual-down-http.png](25-node/gradual-down-http.png) + +HTTPS wrk output + +```text +wrk -t2 -c2 -d20m --latency --timeout 2s https://cafe.example.com/tea +Running 20m test @ https://cafe.example.com/tea + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 5.73ms 53.29ms 1.07s 99.24% + Req/Sec 639.25 88.03 0.96k 71.21% + Latency Distribution + 50% 1.49ms + 75% 1.79ms + 90% 2.17ms + 99% 6.47ms + 1402055 requests in 18.88m, 489.91MB read + Socket errors: connect 0, read 18, write 0, timeout 8 +Requests/sec: 1237.80 +Transfer/sec: 442.90KB +``` + +HTTPS graph + +![gradual-down-http.png](25-node/gradual-down-http.png) + +Logs + +- NGF error logs - 25 +- NGINX error/warn logs - none +- NGINX Access Logs: + - 3.7 million 200s + - Four 499s + +```text +10.150.0.26 - - [20/Mar/2024:16:26:29 +0000] "GET /coffee HTTP/1.1" 499 0 "-" "-" +10.150.0.26 - - [20/Mar/2024:16:26:29 +0000] "GET /coffee HTTP/1.1" 499 0 "-" "-" +10.150.0.26 - - [20/Mar/2024:16:26:29 +0000] "GET /coffee HTTP/1.1" 499 0 "-" "-" +10.150.0.27 - - [20/Mar/2024:16:26:31 +0000] "GET /tea HTTP/1.1" 499 0 "-" "-" +``` + + +### Scale up abruptly + +HTTP wrk output + +```text + wrk -t2 -c2 -d2m --latency --timeout 2s http://cafe.example.com/coffee +Running 2m test @ http://cafe.example.com/coffee + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.59ms 827.86us 24.57ms 92.30% + Req/Sec 651.66 109.00 0.97k 71.96% + Latency Distribution + 50% 1.45ms + 75% 1.76ms + 90% 2.17ms + 99% 4.68ms + 155782 requests in 2.00m, 55.53MB read +Requests/sec: 1297.24 +Transfer/sec: 473.54KB +``` + +HTTP Graph + +![abrupt-up-http.png](25-node/abrupt-up-http.png) + +HTTPS wrk output + +```text +wrk -t2 -c2 -d2m --latency --timeout 2s https://cafe.example.com/tea +Running 2m test @ https://cafe.example.com/tea + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 3.86ms 39.67ms 1.06s 99.59% + Req/Sec 640.00 110.00 0.94k 71.55% + Latency Distribution + 50% 1.47ms + 75% 1.79ms + 90% 2.23ms + 99% 6.24ms + 152404 requests in 2.00m, 53.25MB read +Requests/sec: 1269.04 +Transfer/sec: 454.07KB +``` + +HTTP Graph + +![abrupt-up-https.png](25-node/abrupt-up-https.png) + +Logs + +- NGF error logs - none +- NGINX error/warn logs - none +- NGINX Access Logs: + - 309K 200s + + +### Scale down abruptly + +HTTP wrk output + +```text +wrk -t2 -c2 -d2m --latency --timeout 2s http://cafe.example.com/coffee +Running 2m test @ http://cafe.example.com/coffee + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.63ms 0.94ms 37.11ms 93.21% + Req/Sec 634.30 100.40 0.96k 78.64% + Latency Distribution + 50% 1.47ms + 75% 1.81ms + 90% 2.27ms + 99% 4.74ms + 126662 requests in 2.00m, 45.15MB read + Socket errors: connect 0, read 0, write 0, timeout 2 +Requests/sec: 1055.32 +Transfer/sec: 385.23KB +``` + + +HTTP Graph + +![abrupt-down-http.png](25-node/abrupt-down-http.png) + +HTTPS wrk output + +```text +wrk -t2 -c2 -d2m --latency --timeout 2s https://cafe.example.com/tea +Running 2m test @ https://cafe.example.com/tea + 2 threads and 2 connections + Thread Stats Avg Stdev Max +/- Stdev + Latency 1.70ms 0.97ms 36.95ms 93.59% + Req/Sec 603.54 96.80 0.90k 77.44% + Latency Distribution + 50% 1.53ms + 75% 1.89ms + 90% 2.37ms + 99% 4.74ms + 118369 requests in 2.00m, 41.36MB read + Socket errors: connect 0, read 2, write 0, timeout 2 +Requests/sec: 986.21 +Transfer/sec: 352.87KB +``` + + +HTTPS Graph + +![abrupt-down-https.png](25-node/abrupt-down-https.png) + +Logs + +- NGF error logs - 25 + +All errors were related to failure collecting telemetry. The below error occurred 25 times. + +```text +{"error":"failed to collect cluster information: failed to get NodeList: Get "https://10.119.32.1:443/api/v1/nodes?timeout=10s": context canceled", "level":"error", "logger":"telemetryJob", "msg":"Failed to collect telemetry data", "stacktrace":"github.com/nginxinc/nginx-gateway-fabric/internal/mode/static.createTelemetryJob.CreateTelemetryJobWorker.func4 + /home/runner/work/nginx-gateway-fabric/nginx-gateway-fabric/internal/mode/static/telemetry/job_worker.go:29 +k8s.io/apimachinery/pkg/util/wait.JitterUntilWithContext.func1 + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:259 +k8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1 + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:226 +k8s.io/apimachinery/pkg/util/wait.BackoffUntil + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:227 +k8s.io/apimachinery/pkg/util/wait.JitterUntil + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:204 +k8s.io/apimachinery/pkg/util/wait.JitterUntilWithContext + pkg/mod/k8s.io/apimachinery@v0.29.3/pkg/util/wait/backoff.go:259 +github.com/nginxinc/nginx-gateway-fabric/internal/framework/runnables.(*CronJob).Start + /home/runner/work/nginx-gateway-fabric/nginx-gateway-fabric/internal/framework/runnables/cronjob.go:53 +sigs.k8s.io/controller-runtime/pkg/manager.(*runnableGroup).reconcile.func1 + pkg/mod/sigs.k8s.io/controller-runtime@v0.17.2/pkg/manager/runnable_group.go:223", "ts":"2024-03-20T16:56:30Z"} +``` + +- NGINX error/warn logs - none +- NGINX Access Logs: + - 246K 200s + - Four 499s + +```text +10.150.0.26 - - [20/Mar/2024:16:57:40 +0000] "GET /coffee HTTP/1.1" 499 0 "-" "-" +10.150.0.26 - - [20/Mar/2024:16:57:40 +0000] "GET /coffee HTTP/1.1" 499 0 "-" "-" +10.150.0.27 - - [20/Mar/2024:16:57:42 +0000] "GET /tea HTTP/1.1" 499 0 "-" "-" +10.150.0.27 - - [20/Mar/2024:16:57:42 +0000] "GET /tea HTTP/1.1" 499 0 "-" "-" +``` diff --git a/tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-down-http.png b/tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-down-http.png new file mode 100644 index 0000000000000000000000000000000000000000..97e28a3e5af5acb8bfa0d98a46371d9e8fcf3d38 GIT binary patch literal 11200 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 ZRmEohH!0%=xROiK)Hwcg+E2gS{9j6FTAu&_ literal 0 HcmV?d00001 diff --git a/tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-down-https.png b/tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-down-https.png new file mode 100644 index 0000000000000000000000000000000000000000..309066dd53b91802e437660d994839317cefd454 GIT binary patch literal 11309 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 E07`3h&;S4c literal 0 HcmV?d00001 diff --git a/tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-up-http.png b/tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-up-http.png new file mode 100644 index 0000000000000000000000000000000000000000..1d09d5f7fc72272b447a5f8835f04b2204d780e2 GIT binary patch literal 11471 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 Zvh`baf#yn6Frkc6Q`NYTe(v^@e*?t_-TeRn literal 0 HcmV?d00001 diff --git a/tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-up-https.png b/tests/zero-downtime-scaling/results/1.2.0/10-node/abrupt-up-https.png new file mode 100644 index 0000000000000000000000000000000000000000..f843e45228a7c553b77fc61d56895eedbf220fc3 GIT binary patch literal 11585 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 literal 0 HcmV?d00001 diff --git a/tests/zero-downtime-scaling/results/1.2.0/10-node/gradual-down-http.png b/tests/zero-downtime-scaling/results/1.2.0/10-node/gradual-down-http.png new file mode 100644 index 0000000000000000000000000000000000000000..ae7c32e541a060baf2a72b88ee5f4024911bde2c GIT binary patch literal 11750 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 literal 0 HcmV?d00001 diff --git a/tests/zero-downtime-scaling/results/1.2.0/10-node/gradual-up-https.png b/tests/zero-downtime-scaling/results/1.2.0/10-node/gradual-up-https.png new file mode 100644 index 0000000000000000000000000000000000000000..898963eef915fc556e443f92c7fb78bbb8d93e79 GIT binary patch literal 11375 zcmeHtcT|)4wszD}9391xCS6AnMnFaZ>0}%QL=+C96zL)$Aib9)b|tg{#E6tApdcVs zdI>5;K#BBDD4{n)4M|Aue$Sk_-&t$UJ@=mPtaaD@W7cv;#pHc|W$$M{&$D;vU-WhM z>=N3ALZSBPo;!O9h1zxyh1zPmb1VFWkC#spe*4zroS8QYwYL`eZ%dr?USSmKAWHY_ z>B|9$^Mk=2ajQvmn&iINpMSZ}9VsJ!&p*lB&Z?4@q6q zzI)|@p`qZ*Z~!#-g?WGPMzucUM#|ynq<^BH9HT;1yr4)4%x`kZmbnqdH^0R(G z)hk@0`efs}Ix$3zI_Ryh-+nFM^c&RA$`>P7wxduAr?&1!9sKF`cGSM7HCs_TFW78B zeRDJqw!mYGLf!sW26e0E8-CQ!Hvjd1dcD81eRodjD4xioO7`~lrYHIJ_2k@b#;1AWM0n? z<=Zt_1&+s61+5;Fl^x8p{g9>`J3%Jm)_NUrv^s%@rCw*erDDbI30MUjqFIN>8fXR% z*W3=3TdZ7eStN1TN~Dd881>`(zLmLg{iM9STvx^+D{|>A7~ccCXU>;cdo@bXDxN92 ztWjePj<$%X2Y8I;9NAsXT&NJR4)F}*msRzf3#j8W3Hkbt%aGU7uh-st;!`{thrN2W z&%_#YW$aQzgm8D3Nv?EGX$s>VEH*+|X(7pfXoJYvARZAYB*%#dQln$_RbQJGI!Gq@ zw4LGB;6<0Zbm!=Z1yUay={t30_x_lkxHMNtK5FbTSiahBfX2WZuRA)HxOBVC_2d(A z?2VTMt7l0`7}(S%EefYz`g*;XqU&Bd^1yAd{0eD3(Ys}X%wdtKQ9~(OVg2r;D)SPz zH|8bmMGkurqq(9fVf8~c)8JsEJxa0e)@5T;Q`1d}_odVA={klhlW2|#e^`W=hN`5b zV^_9Wf|7f(inoKdcD|Gf=0U zz4p!}r|hVwiR*6TD_4q~J7;cliS<+lE96p3eDbIw-xqJBK(+V?3zDK|57X1;{7@a4saQqQq#`8~ef zmfgj!{YpatsRac~a2icbO+gTwW0bbcD_Pmu*{~J&!E)b$Qcpu(->EOQLzRJie0+zs z!#_4QzRt){E`81I(*|EZj8AE6YopVyWEpE2D!30-QWKuW#>U3Q72SleXePM#E+ zjyYGJJs@70mX@}FzD*@;={T5ou&8rqHXP}3i_)LaXf)OXwj(Gg$gN4Y8NK)YVeQ)8 zHmft8hP)ROPRU|Jm}~Q{{l$asHWFq(v8^)JDLC9>Shj55c|E;Usb?qcn>2OQ*z~d7 z@|nyd0!DV@cszb(WhInHvdh%54$o)ETLpn0dN@@(qUrNz*q4h8ze{K46_(+s^jSlN zYqgK)1Zk6;@RS?0(K;@r)!X{z!Rrfa^Zf#Re0AJU9zTBT)b6mpFsLi0!5=nGrCNA@ zR%{g4C??hPEgBqr;xl`@Dll~4r6IM&%2@hr-o)nw>)`pKP3C$OTD0JLV@#5oKRisy z(`#|4s=2AD8Ws~ExH8izja8SIFJw3s=@!_WK7IP(UQx#SB961Uj-!t}^d+%j58G6& z5?<;N7KW-IMurq4NtNOLNK6G_fT~n4AzPqi)YOm)xo~SQT^D zn!~6Qu$D0|o_pq!qsyM6@hvSa&8+ccc4Bc`eapUku6lcWgieXuAY4QVY+E|F(yRT| zMMGZ5repXNh}F)31qL8z7?;i}C6Y!x563OOzXZM^M2f!tP6{8XwosZ*#4=`cNmj)- z&0x!reQQI(ixOqSPh`!l0!HpHPm(FjoDvE)c(&^eT(yDM3B}r6*`Y0sQ3L`(hpSEE zp{B2>q{jMycZJXNNtdqdczMT($w_OURxKuG<-@Dn7CX{*!9vf&_tOoC)d93oc%3Fb z1&YI~^mG$W75nQ4?vk6mUU0)u7|t6QM3G_+l)&d|=i#Pjv(IOHB2G+}^m_m$X?zMGM#HsyxSH<3z(BaEKKKqLU<`@LTIOS&NReIuocp^4j4xjv z@N5t@XG^dY0WGq6dt-amx^Rpt~*)9MlKm_W< z#1jGm-XZK>nGfkH4B-f{ICMB%Sn0U5v zMY69N!(19~hD6f5*^_5lMEW5+GZW9@vt?}#<~uL0M%G<}e~V0+Dw|9W!wKS2Towk( z01i%H5DKf)++1ltdhwZpQ``040{hUrx~EP^N=niMqIHkpVuLNQTN~xJWt_G-?cDEZ z<4URCgbLWw+$=38M}gG5%dOc1Sq#CPV_Bj9^rsh$cqskzu-Ku>jhfrrcJJQJGg5%v zWZd4yH9@6P$H(`GYld`W7=~8F$SB)4J(h1#J}fDj4lDx0STQU2abg8HIZXpSAx1}k z&k258C2LXowMjZR+`92~dh%5Z3kx%|_)?|Dx(?Go04{jh#>NKVt7W;5puEE;C=_=2 zJ@Ef9Jbr0;8Hz@^|6=maN2W>3qX%DUKGGfAwQHBY<_2{}Cq|ty@?AESW4Sd`FRbpG z&P=2H^V5P**#iSN02Lxv?xWJw7vKHPy(T1n0m`L*_un97zw@@XsFm#^woXn?I*k3O zTZd)%!|q#ty}_NGA%=am=i=3?S5t{6R8{L0>{2}y!ky~1$8H=b)J%4z?LYL7_@0MP z*-D#UdnT|vJ0LCotDPpejd6kwqm4~&5XZ6lDeU6nU`o*Jo95#c*${Q{@$r(09`9vK z29`c6Q98zjXW9Eiez@I9S7eabkJN0{E;jxC91SFZ-KHzwWt-u}3u)U|mi(`DGa*9J&y zq%*u-z{2CSu5P0v5mW3j^8PSJg}FYJ8pY4gKZIq@H;4t_EOhwXqB@%m7n*HV6;vNC z2%Dj!f$63g8E7ctQwj=nEB#Rw1-H*{g4-dh*BkOe|>cxWvyI`t;fp zJ_Dq&SsQRg)|k~R5qfVjGN9g{Sv?HwFud-X(x6ZK5Tz8TX7EB;y7y!YYzhct#l}QJ z36%5oGe^qk7%SUNLAB!O5L9W+)>|2G-zwl!j$4+)^T`_PyaED*$B!>xz6^ih7FAst zCs;=k{Qw(Uk~Nq`-B#xL*XkAqD~Lfeughhu`tKy1a-HeUwYIgj1q^~!!QXd$cVM4Z zE0MjDzGd5v6)2nhVWR#6o{Gl8KiSkU7fCqSbtPjai-K9VT&-AR*N=R7NQQb1ga@h+ zobWRh?}>Zg@~koUeOqK{i#ecnO4iCGRQSh>Hd{O{L$&IMB+!l$8!U7rhsjmbfh;Ed zWcwcAHn*BFGdDM9&0ZpWfa)RdaDi6~j;Ry4#QF2*Tc9w2+Ca(!td(hrZoJb>kju@^ zu4FAW7Zw)cmSTw)fG5IvF)ck-;CVVxR^>j^uxsR{g>dmN9*Xq=of~p=>wD`2zwGM6 zRmLA1A@sj|Dn%2+sDy*|<&207@QK~43Om**tOslE2n6Q2AE$+2Csfp89Ea^*Nz>-l z0wK~{=IuzS#_&i2WK?8l&%uTskt8Zja;<1%aCe;sSr=or@7}db)o1Dp3CDrs<9y&o zXOGn>x%RC<3AKU>x-#7kr1p}rF#vrBKwp*hg`2G@b%1*SDOe7Zf~1&$rB7?3ig&R) z#j1e|pE5O^^Y!P>u1h}-nr_{FD^-6qcPE-TR|x3@M}&}22);)tQtY)?Vj4k5cHIQ& zW61l)npB;V@&i5vIPQ@yCxBe6xOC$kP-n1{vYE^*U>{}jWc5M_JVXeI>f8WII{fZ# zx_(kQ@ci`TAZMV0>x2H3q4YsGmF?TN!v$Uo3SwA7DS9sVRkVpuY#h|1PA+`>GvqfY zCKIbbdzRhat3}RyTCKp9uW_ajB9Y$7Se@meh#BPE6UWjIc_O5MCalXJo-$QB78%T# zPA9P$vyg17Q>}IgC$3r_+7j^vV!_<4>?Is9a`~R!=I&LBw(svX#!8YvGex1; z4B^;S+@dL``H}A^f#sChf!UAT&R2M~LQN$7Au4^Q+s>Z5f-Wo$Gw{0qVgQFLAorff zx}O2@t=tESEfBJ-0gw?1`AAWrH9!Q4z z2;qh(abiM3Kkz6iJdi5{4A8FV*w}W+O2}Lp%W?&5<=eL_^sy-N$B(9PZxMPCIQ3fKHBW(F zf@B0PbLh;2Y#=y9iZYM_NU&4DCIHeQc)RJeG5M1xj~zSaoET3Xb*XrthYw4w;uwi@ zzcpC>ew$N%D)aEy_O{41A_~Rj3Q!N!36bY*0&NF60xCL3LOk;{uN~Bw^MZdrWOdoD z;nm9pW=`g^m<;OqiyI=o5dE#}t?`7NTZW}f#7_(h{tuj%-wXSHW61pZvERwmzh-3p zubtc6!ELi|N`}hk3YxE$xFrFzc>k^BfLF6DC1m+xkMuUwIYTZU(|^u)=&M^$X^C%5 zW&EB~mUB6bT%gt)fCP_~mjEODXF8_i9h1wZUnShJvZ~V4Q+o=5`sGH4&Ub0zwd=qL zI+WW$)zro*g0MME{{U0<;)s{6cmQhk#50`HV0J98XS4SFVJA3k-RyX&d zJbcPI?8hNuR2!=wME*!021&HFes^&+mIYt}Gz1O2T{rfq2J7nw-AIZzSp%q`goFh6 zDDa0f5BFk#CZ?695qu#z>dB`kt__G`04D%d z4ioBF=vKAb1%w6xKpbZsM@Dm4V5X4j3yq3I4Nh?msY^e_Gxwl=%w#7wWkwNpa!&|m zzq**9344HwmH^Q7>!CA%u3)f$VqkZgSW9f={6BxfSH1f0?2a^WEbQ&=twU&9e{eTK zd7Ra(#5?#EL*pQ0;G~x3w#Wf=VOR) zWwru}rb=BUVKM*6ZCD1EKv>JrwP6ctZ#qg`0gm|Z%50SQ2BP-Yp{6ThQ^5>qjq1H@ zxipq#{06_7y4<2Bhff&;17JFx2qin0AZy+Q+{^aE11Qzc$nGX85 z!4&;Bk9ORuKg4D#Z7fc04h>B%ZVvCIYc&{XZlpbbZUeVQqSwh~ij#n40*7EPHOqk$ zxlk|c9y0af;b?<_^2j|Fiv>}O0Si@B)dvx-Ze`<7W+>U~2Iovot%4B`c>kG9Cc?!4vzhf`iBF(=2$qWcC=rL%l~dU}Xkyuj1N!Cp=?@RN zaU=HypaPQS!MlbMj@&+2HE@?HQssXrwVmTYvdKWThrNr`gPzmn{Na%((%(%8XP&|c{;Vf%FD|uEv4V%(SMXO1(bSoH5aFW zV3*ea&rA_an#oPHtxl9koaYom0qPG7+npV~$0dV$|~z3K6f5P^uk z`#SOgp0h?*1RAiLM^YaO=QuZ-^#wQ+IOX0gDw2(~tCQ;{_fWs?x-^@+Gir@|0$odd zUBC6#hv!ykx63y71*ne43Q^CKMIIP<37C#-aDMpaR;tC_fLJvYs_}o)YWQD6=>Ly4 z$e(NbKVEhJywiWu#QQUP|HbI_qi>xRAknq@szLQgH2N304Kn;mOiPv@cpk|iOO4xt zzP!83g>>||aIGK$j&FKsnu0HY-k`>AV>|)rU!8n>2cTg<=swiJydB@0LUAYs%U{)h zAu&F_7xYMidvzedKCL2?bk=n6k6pyomu?mF#UQz$S+w*j!L1L(kL|N9s9~KwKjb0u z$bVq~98d6JKzO@Aqmbw5g>znP@Jx)r;JkF{5{Neo3w1Cfpr@*W?FQn=>2t~b40?II zDGmr_yqf=lZ9ED!%n{kBL0AC%0-Mac>Bscz4h~k}#Dj1OT>h-&qQ?1ej2q|(hYQLh z#*NBk;$OFtrVD1ON_Z*?b+*-ZZ#Fc$y6HUcp@H=rN_mCf{4psh`sN}I2UHn(6Et3W zt1-c@VKQa~*C$(&FwC`!BGZEv{$^&q&>YPNTVDzvv^v9w9)eX4RRwo1UqGQ0MZ0Qd z;4gFHNxofXhP;39DHIW|7zTFsA$$sAjvRCSPjdv?KfjqH`d~z7QKC_(H7~054TF}vr#FfD-KohS|wH{{M z1KWbb94!IsIT;8K&~$JvfGtZHA5e0$aC2LL_5rlYz;9m~4U;>%ph~Od0nZ!BEeS3Fi>L&qi1b?t z1SRMqg6I!ktWxsq{_^4s*B+q`AS9hxCftH2sUDxVpuTcm))58OoL{~aokwp$DK~ZM zd?&Ku2*V0Og8$9{!=KpqFJj;SQCaNpm5MBM?aHF^m3iZx=>IOIXIK!1^cmCsf8pW6zu$=As(1`XQ^}m>;S_G33fX-@@ ziQfFOS07)GKH}JgiDr0D$uB^c1;#A^j9Xe-s)z6F1|ytwnN)J<(*X%lc{flK@IAfi zb2D!C16aqKbaS)*a4_u4!M7VT!Ggj7b+W9>?=;LjaQ}e3Z^_Axxb81CB}-r6v&;jX zBi6~#LjZ|54@&o9!8yE}{d=tAcV%(;+9P0^dh=?5&{m8jCu>wd4FQ&)laYaFdO(^d za@N&kzL-R_b*-7s7i49alK?#d{bXndW@cnaNlVXyX43egHDm5-SC4_Y2#}tQO-<(u zeu2eWSUUW+SZMmnNlBR&-|Pjff^JTHT-+*5&CGk>e?W@L-)Hw~!T4y|l8_MFSd02 zz~*dDg&R@&h)N+eld{ev=4WO?>u44xHqMJ6mN)bTxNk&%cwT%0w6+FV1F#hEB_*Pw zItH6mTb}MWFCz;Aj;2Tj%@=j=*8#5}nn)y(`GnY-^?L(9!KbJuR%bp?n$9GikXSom z%p|FM>Jg5AZfbId0f`v;xz;xqdKSZNOA4YZ&zi!R4j7q2Tpac~iSXpf+H||5XIfsK z2Q-0b{ZLK(;RArfF~s9J^|XjGJy6}yt6dR z^QQgfNkOA)((5YFC=!LXBx$psBoRrSoXmw8AGklmT?=+TAOCioQrk0epqZ&3qd|~oVk_Zsa6#Wy#6=v*(_~Dg!lVQd#2s`6I4cI6l`m(wwG7{0 ztHVp-p_vk+EQ?0tVDbc%DLD1fI%1)9*Wja#X18?UdEIGZLU2Ke4E?J|ZH zQ2Df`;=rpVNeo#6_kRIA0jOI-ls4t!lbOrmor*ngvR&(ikPaP>fqFhD*}tvcm{4wR zHrABNJAj;YWBeY+da3EBz!rv~)e;sK<`SZ3*Vk13$#n3AyZvWegHbDVKaid?6m@lI z5<#yR2R8_fBx4{95ExQ;FE6kCj`i*)pqPQfF?K-PYe*U-SFZ1Zh)vyR zcQkFmcmXr6sK9!ozJh#GQ(L!z1&#zb?wpAPcLxWDqh^O*mJ~$FAHCPxv`I>fzXR>C zr0D1qkTgoRZ$gI>@RTW{xgY{r_dqX}6UGkJ3%d`%RST^#M=JrAMAr9Y{Id-fM#`~ae zw-)@jr;O|?De&B3%(8TXku#2nRx6O*{SDwywnHldK(#}e1TN2Cua=Q$!`bUoUj^3F z^h0qh(rmq(bb{ge33^~1G!|rYIk~jt0V%H2kp-8-SeZ8Z%U^y1m&7ho#eq1PKB}qB zr8zNl$wfL#&mu5l>~(1zm+IIMfPpqTvJ5CF(3MFlwHB@Dystj5DX=i%zl6t^ zo0kEQ_vKX9Lug8KW9k8A4d?BS18g(0u7(oG$k2|EG{h@JO^vx(x5-K2V(`U$=KEGR z*C{Xq2W0Y6P*4!dTgKtj)9AQ3Md+B)8}2AV+oU*ZyPlWBpulUBhnjX^$LedWcEDg8 z)C1_nrKhJGJX81)YqBjK0P^X#ObqT41OSv9C_=71G`T+K&h0Oj!Pf-y)OCE36jMoAqvmlWdC(pCuRA= vB!chkM%~)habO5WIlesK`LDKjINVlziE}@N)fd79F-liU|7^}LHh2C56@~HT literal 0 HcmV?d00001 diff --git a/tests/zero-downtime-scaling/results/1.2.0/25-node/abrupt-down-http.png b/tests/zero-downtime-scaling/results/1.2.0/25-node/abrupt-down-http.png new file mode 100644 index 0000000000000000000000000000000000000000..38074e0c5007a3ef910c01e602a720cc1bfbc3c9 GIT binary patch literal 11484 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 literal 0 HcmV?d00001 diff --git a/tests/zero-downtime-scaling/results/1.2.0/25-node/abrupt-up-http.png b/tests/zero-downtime-scaling/results/1.2.0/25-node/abrupt-up-http.png new file mode 100644 index 0000000000000000000000000000000000000000..638618272beea155b0a275ea899b5d812475008d GIT binary patch literal 11522 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 literal 0 HcmV?d00001 diff --git a/tests/zero-downtime-scaling/results/1.2.0/25-node/gradual-up-https.png b/tests/zero-downtime-scaling/results/1.2.0/25-node/gradual-up-https.png new file mode 100644 index 0000000000000000000000000000000000000000..8e4a6e6bdb2906dfe2c08859ac1ebb474285ec5b GIT binary patch literal 12067 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 PPSV#k{4xD6$FBSbE8l-l literal 0 HcmV?d00001