About Scaling Older Browser Versions to Zero in Kubernetes #2616
-
Hello Selenium team, We are currently using Selenium Grid in our Kubernetes clusters, and we have successfully implemented via Helm the cross-browser testing to support both the latest and older browser versions. The solution is working well, and we can execute tests on different browser versions as needed. However, I was wondering if it is possible to scale the replicas of older browser versions down to zero when they are not in use and only spin them up when a request specifically requires them. The goal is to optimize resource utilization in the Kubernetes cluster by only running older browser versions on demand, while keeping the latest version as warm startup. I would like to know if Selenium Grid supports this functionality nativelyor if there is a recommended approach to achieve this. Thank you for your time and for the excellent work on Selenium Grid! |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hi, as per your requirement, I think you can try this. Via Helm configs, in each Node, you will see the config key crossBrowsers:
chromeNode:
- nameOverride: '{{ $.Release.Name }}-node-chrome-latest'
scaledOptions:
minReplicaCount: 5
maxReplicaCount: 45
pollingInterval: 20
hpa:
platformName: 'Linux'
browserVersion: ''
- nameOverride: '{{ $.Release.Name }}-node-chrome-131'
imageTag: '131.0'
scaledOptions:
minReplicaCount: 0
maxReplicaCount: 15
pollingInterval: 30
hpa:
platformName: 'Linux'
browserVersion: '131.0' |
Beta Was this translation helpful? Give feedback.
Hi, as per your requirement, I think you can try this. Via Helm configs, in each Node, you will see the config key
scaledOptions
to override the global config which applies for all scalers created. You can set different options for each scaler, for example theminReplicaCount
as below.