-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Closed
Labels
Description
What happened?
Context
We use Selenium with the Python client on a self-hosted EKS grid.
We are using a proxy to get out of our EKS cluster.
Problem
When upgrading Chrome node to 127.0 we noticed a significant increase in CPU on these pods, which was accompanied by numerous execution failures "Could not start a new session. New session request timed out".
It correctly works with node-chrome:126.0.
Command used to start Selenium Grid with Docker (or Kubernetes)
docker-compose
selenium-node-chrome:
build:
context: ./node/chrome/
depends_on:
- selenium-hub
environment:
SE_EVENT_BUS_HOST: "selenium-hub"
SE_EVENT_BUS_PUBLISH_PORT: 4442
SE_EVENT_BUS_SUBSCRIBE_PORT: 4443
SE_START_XVFB: "false"
TZ: "Europe/Paris"
LANG: "fr_FR.UTF-8"
restart: on-failure
ports:
- 6002:5555
shm_size: 2gb
links:
- selenium-hub
manifest k8s
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: my-selenium-node-chrome-integration
app.kubernetes.io/component: selenium-node-chrome
name: my-selenium-node-chrome-deployment-integration
namespace: my-robots
spec:
selector:
matchLabels:
app: my-selenium-node-chrome-integration
template:
metadata:
labels:
app: my-selenium-node-chrome-integration
app.kubernetes.io/component: selenium-node-chrome
spec:
containers:
- env:
- name: SE_DRAIN_AFTER_SESSION_COUNT
value: "1000"
- name: SE_ENABLE_TRACING
value: "false"
- name: SE_EVENT_BUS_HOST
value: my-selenium-hub-service-integration
- name: SE_EVENT_BUS_PUBLISH_PORT
value: "4442"
- name: SE_EVENT_BUS_SUBSCRIBE_PORT
value: "4443"
- name: SE_NODE_MAX_SESSIONS
value: "2"
- name: SE_START_XVFB
value: "false"
image: selenium/node-chrome:127.0
imagePullPolicy: IfNotPresent
lifecycle:
preStop:
exec:
command:
- bash
- -c
- |
echo "[PRESTOPHOOK] Starting..." > /proc/1/fd/1
curl -X POST localhost:5555/se/grid/node/drain --header 'X-REGISTRATION-SECRET;' && (echo "[PRESTOPHOOK] Drain order sent successfully !" > /proc/1/fd/1) || (echo "[PRESTOPHOOK] Drain order failed !" > /proc/1/fd/1)
while curl localhost:5555/status; do echo "[PRESTOPHOOK] Status page is still up, waiting..." > /proc/1/fd/1; sleep 1; done;
echo "[PRESTOPHOOK] Status page down, exiting..." > /proc/1/fd/1
Relevant log output
SessionNotCreatedException: Message: Could not start a new session. New session request timed out Host info: host: 'my-selenium-hub-deployment-integration-69dccc8f96-qs9cv', ip: 'XX.XX.XX.XX' Build info: version: '4.25.0', revision: '030fcf7918' System info: os.name: 'Linux', os.arch: 'amd64', os.version: '5.10.225-213.878.amzn2.x86_64', java.version: '17.0.12' Driver info: driver.version: unknown Stacktrace: at org.openqa.selenium.grid.sessionqueue.local.LocalNewSessionQueue.addToQueue (LocalNewSessionQueue.java:221) at org.openqa.selenium.grid.sessionqueue.NewSessionQueue.lambda$new$0 (NewSessionQueue.java:68) at org.openqa.selenium.remote.http.Route$TemplatizedRoute.handle (Route.java:192) at org.openqa.selenium.remote.http.Route.execute (Route.java:69) at org.openqa.selenium.remote.http.Route$CombinedRoute.handle (Route.java:360) at org.openqa.selenium.remote.http.Route.execute (Route.java:69) at org.openqa.selenium.grid.sessionqueue.NewSessionQueue.execute (NewSe... [ Message content over the limit has been removed. ] ...org.openqa.selenium.remote.http.Route$CombinedRoute.handle (Route.java:360) at org.openqa.selenium.remote.http.Route.execute (Route.java:69) at org.openqa.selenium.remote.AddWebDriverSpecHeaders.lambda$apply$0 (AddWebDriverSpecHeaders.java:35) at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0 (ErrorFilter.java:44) at org.openqa.selenium.remote.http.Filter$1.execute (Filter.java:63) at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0 (ErrorFilter.java:44) at org.openqa.selenium.remote.http.Filter$1.execute (Filter.java:63) at org.openqa.selenium.netty.server.SeleniumHandler.lambda$channelRead0$0 (SeleniumHandler.java:44) at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:539) at java.util.concurrent.FutureTask.run (FutureTask.java:264) at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1136) at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:635) at java.lang.Thread.run (Thread.java:840)
Operating System
EKS
Docker Selenium version (image tag)
node-chrome:127.0
Selenium Grid chart version (chart version)
No response