首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Selenium Grid 4节点没有在集线器中注册

Selenium Grid 4节点没有在集线器中注册
EN

Stack Overflow用户
提问于 2022-04-22 17:10:26
回答 1查看 1.6K关注 0票数 0

我们尝试将selenium节点从一台机器迁移到多台机器,并将一半的节点迁移到云。

目前,Selenium网格的结构如下所示:

  • 托管在AWS EC2
  • Mac mini节点上,在办公中
  • 节点在
  • 2 Linux节点上,AWS EC2

当我试图将节点连接到集线器时,节点不会显示在集线器中,节点无限地向集线器发送注册事件。

集线器4444、4443和4442端口可直接连接事件和集线器。

当节点发送注册事件时,以下日志显示在集线器中:节点:

代码语言:javascript
运行
复制
java -jar selenium-server-4.1.3.jar node --hub http://admin:admin@my.server.ip.address:4444 --config node.toml
22:00:24.981 INFO [LoggingOptions.configureLogEncoding] - Using the system default encoding
22:00:24.985 INFO [OpenTelemetryTracer.createTracer] - Using OpenTelemetry for tracing
22:00:25.154 INFO [UnboundZmqEventBus.<init>] - Connecting to tcp://52.14.198.246:4442 and tcp://52.14.198.246:4443
22:00:25.201 INFO [UnboundZmqEventBus.<init>] - Sockets created
22:00:26.202 INFO [UnboundZmqEventBus.<init>] - Event bus ready
22:00:26.499 INFO [NodeServer.createHandlers] - Reporting self as: http://192.168.46.1:5555
22:00:26.723 INFO [NodeOptions.getSessionFactories] - Detected 12 available processors
22:00:26.724 WARN [NodeOptions.getSessionFactories] - Overriding max recommended number of 12 concurrent sessions. Session stability and reliability might suffer!
22:00:26.725 WARN [NodeOptions.getSessionFactories] - One browser session is recommended per available processor. Safari is always limited to 1 session per host.
22:00:26.726 WARN [NodeOptions.getSessionFactories] - Overriding this value for Internet Explorer is not recommended. Issues related to parallel testing with Internet Explored won't be accepted.
22:00:26.726 WARN [NodeOptions.getSessionFactories] - Double check if enabling 'override-max-sessions' is really needed
22:00:26.764 INFO [NodeOptions.report] - Adding Chrome for {"browserName": "chrome","se:webDriverExecutable": "D:\\selenium\\chromedriver.exe","platformName": "WIN10"} 12 times
22:00:26.774 INFO [Node.<init>] - Binding additional locator mechanisms: relative, name, id
22:00:27.169 INFO [NodeServer$1.start] - Starting registration process for Node http://192.168.46.1:5555
22:00:27.170 INFO [NodeServer.execute] - Started Selenium node 4.1.3 (revision 7b1ebf28ef): http://192.168.46.1:5555
22:00:27.181 INFO [NodeServer$1.lambda$start$1] - Sending registration event...

node.toml

代码语言:javascript
运行
复制
[node]
override-max-session = true
max-session = 5

枢纽:

代码语言:javascript
运行
复制
java -jar selenium-server-4.1.3.jar hub --config hub.toml
18:59:15.183 INFO [LoggingOptions.configureLogEncoding] - Using the system default encoding
18:59:15.189 INFO [OpenTelemetryTracer.createTracer] - Using OpenTelemetry for tracing
18:59:15.352 INFO [BoundZmqEventBus.<init>] - XPUB binding to [binding to tcp://*:4442, advertising as tcp://172.31.45.214:4442], XSUB binding to [binding to tcp://*:4443, advertising as tcp://172.31.45.214:4443]
18:59:15.412 INFO [UnboundZmqEventBus.<init>] - Connecting to tcp://172.31.45.214:4442 and tcp://172.31.45.214:4443
18:59:15.449 INFO [UnboundZmqEventBus.<init>] - Sockets created
18:59:16.450 INFO [UnboundZmqEventBus.<init>] - Event bus ready
18:59:17.267 INFO [Hub.createHandlers] - Requiring authentication to connect
18:59:17.420 INFO [Hub.execute] - Started Selenium Hub 4.1.3 (revision 7b1ebf28ef): http://172.31.45.214:4444
19:00:24.011 INFO [Node.<init>] - Binding additional locator mechanisms: id, name, relative
19:00:34.785 INFO [Node.<init>] - Binding additional locator mechanisms: relative, name, id

hub.toml

代码语言:javascript
运行
复制
[router]
username = admin
password = admin

我在配置中错过了什么?

更新:

当我在调试模式下运行时,我看到了到节点的连接超时:

代码语言:javascript
运行
复制
13:45:22.386 DEBUG [LocalDistributor.add] - Exception while adding Node http://52.14.57.227:5555
java.io.UncheckedIOException: java.net.ConnectException: connection timed out: /52.14.57.227:5555
        at org.openqa.selenium.remote.http.netty.NettyHttpHandler.makeCall(NettyHttpHandler.java:80)
        at org.openqa.selenium.remote.http.AddSeleniumUserAgent.lambda$apply$0(AddSeleniumUserAgent.java:42)
        at org.openqa.selenium.remote.http.Filter.lambda$andFinally$1(Filter.java:56)
        at org.openqa.selenium.remote.http.netty.NettyHttpHandler.execute(NettyHttpHandler.java:51)
        at org.openqa.selenium.remote.http.AddSeleniumUserAgent.lambda$apply$0(AddSeleniumUserAgent.java:42)
        at org.openqa.selenium.remote.http.Filter.lambda$andFinally$1(Filter.java:56)
        at org.openqa.selenium.remote.http.netty.NettyClient.execute(NettyClient.java:124)
        at org.openqa.selenium.remote.tracing.TracedHttpClient.execute(TracedHttpClient.java:55)
        at org.openqa.selenium.grid.node.remote.RemoteNode.getStatus(RemoteNode.java:208)
        at org.openqa.selenium.grid.distributor.local.LocalDistributor.add(LocalDistributor.java:305)
        at org.openqa.selenium.grid.distributor.local.LocalDistributor.register(LocalDistributor.java:291)
        at org.openqa.selenium.events.EventListener.accept(EventListener.java:43)
        at org.openqa.selenium.events.EventListener.accept(EventListener.java:25)
        at org.openqa.selenium.events.zeromq.UnboundZmqEventBus$PollingRunnable.lambda$notifyListeners$2(UnboundZmqEventBus.java:301)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
        at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.net.ConnectException: connection timed out: /52.14.57.227:5555
        at org.asynchttpclient.netty.channel.NettyConnectListener.onFailure(NettyConnectListener.java:179)
        at org.asynchttpclient.netty.channel.NettyChannelConnector$1.onFailure(NettyChannelConnector.java:108)
        at org.asynchttpclient.netty.SimpleChannelFutureListener.operationComplete(SimpleChannelFutureListener.java:28)
        at org.asynchttpclient.netty.SimpleChannelFutureListener.operationComplete(SimpleChannelFutureListener.java:20)
        at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:578)
        at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:571)
        at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:550)
        at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:491)
        at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:616)
        at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:609)
        at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:117)
        at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1.run(AbstractNioChannel.java:262)
        at io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)
        at io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:170)
        at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:503)
        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        ... 1 more
Caused by: io.netty.channel.ConnectTimeoutException: connection timed out: /52.14.57.227:5555
        at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe$1.run(AbstractNioChannel.java:261)
        ... 9 more
13:45:22.386 FINEST [LoggingHandler.channelUnregistered] - [id: 0xef015bd6] UNREGISTERED
EN

回答 1

Stack Overflow用户

发布于 2022-04-26 16:26:48

当我在日志级别上运行集线器时,我发现集线器无法通过端口5555连接到节点。

解决方案是打开机器上的端口5555:

  • AWS EC2使用安全组
  • Windows,macOS使用防火墙入站规则
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71972399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档