Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 尝试将AWS ec2实例用作节点时,无法注册Selenium网格节点_Amazon Web Services_Selenium_Selenium Webdriver_Amazon Ec2_Selenium Grid - Fatal编程技术网

Amazon web services 尝试将AWS ec2实例用作节点时,无法注册Selenium网格节点

Amazon web services 尝试将AWS ec2实例用作节点时,无法注册Selenium网格节点,amazon-web-services,selenium,selenium-webdriver,amazon-ec2,selenium-grid,Amazon Web Services,Selenium,Selenium Webdriver,Amazon Ec2,Selenium Grid,我正在本地PC上运行Selenium集线器,现在我正在尝试通过SSH从ec2实例注册一个节点。这就是我运行中心的方式: java -jar -Dwebdriver.chrome.driver=C:\\Users\\NROLL97\\Documents\\chromedriver.exe selenium-server-standalone-3.141.59.jar -role hub -port 4444 这就是我如何判断它的工作原理: 我已通过SSH连接到我的ec2实例中,并尝试了以下操作

我正在本地PC上运行Selenium集线器,现在我正在尝试通过SSH从ec2实例注册一个节点。这就是我运行中心的方式:

java -jar -Dwebdriver.chrome.driver=C:\\Users\\NROLL97\\Documents\\chromedriver.exe selenium-server-standalone-3.141.59.jar -role hub -port 4444
这就是我如何判断它的工作原理:

我已通过SSH连接到我的ec2实例中,并尝试了以下操作:

java -jar selenium-server-standalone-3.141.59.jar -role node -port 5555 -hub http://192.168.86.31:4444/grid/register
但这是我得到的回报:

我读到它可能与AWS阻止端口4444有关,所以我尝试在AWS控制台中编辑它,如下所示:

但还是什么都没有。如何让此节点注册?当我在本地PC上创建节点时,它工作正常

但像这样,节点实际上并没有注册

编辑:我还尝试了以下方法:

java -jar selenium-server-standalone-3.141.59.jar -role node -port 5555 -hub http://192.168.86.31:4444/grid/register
  • 启动中心:
    java-jar selenium-server-standalone-3.141.59.jar-角色中心
  • 从我通过SSH连接到的ec2实例启动节点:
    java-jar selenium-server-standalone-3.141.59.jar-role node-hubhttp://192.168.86.31:4444/grid/register
  • ]java-jar selenium-server-standalone-3.141.59.jar-角色节点-hubhttp://192.168.86.31:4444/grid/register
    23:16:40.963信息[GridLauncherV3.parse]-Selenium服务器版本:3.141.59,修订版:e82be7d358
    23:16:41.167信息[GridLauncherV3.lambda$buildLaunchers$7]-在端口11391上启动Selenium网格节点
    2020-09-11 23:16:41.302:INFO::main:Logging initialized@698ms到org.seleniumhq.jetty9.util.log.StdErrLog
    23:16:41.666信息[WebDriverServlet.]-初始化WebDriverServlet
    23:16:41.795信息[SeleniumServer.boot]-SeleniumServer已启动并在端口11391上运行
    23:16:41.799信息[GridLauncherV3.lambda$buildLaunchers$7]-Selenium网格节点已启动并准备注册到集线器
    23:16:41.918信息[SelfRegisteringRemote$1.run]-启动自动注册线程。将尝试每5000毫秒注册一次。
    

    它看起来只是不断尝试,但从未连接。我转到网格控制台,然后我可以看到没有连接的节点,它是空的。

    假设要求在默认端口
    4444
    上运行集线器,在默认端口
    5555
    上运行节点,则需要按如下方式配置和启动它们:

  • 启动Selenium网格中心:

    java -jar selenium-server-standalone-3.141.59.jar -role hub
    
  • 以下日志确认您的Selenium Grid Hub运行正常:

    2017-07-24 15:31:46.139:INFO:osjs.Server:main: Started @2757ms
    15:31:46.140 INFO - Nodes should register to http://192.168.0.107:4444/grid/register/
    15:31:46.140 INFO - Selenium Grid hub is up and running
    
    15:35:44.939 INFO - Selenium Grid node is up and ready to register to the hub
    15:35:44.958 INFO - Starting auto registration thread. Will try to register every 5000 ms.
    15:35:44.958 INFO - Registering the node to the hub: http://localhost:4444/grid/register
    15:35:45.231 INFO - The node is registered to the hub and ready to use
    
  • 通过URL访问Selenium网格控制台:

    http://localhost:4444/grid/console
    
  • 启动Selenium网格节点:

    java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://192.168.86.31:4444/grid/register
    
  • 以下日志确认Selenium网格节点运行正常:

    2017-07-24 15:31:46.139:INFO:osjs.Server:main: Started @2757ms
    15:31:46.140 INFO - Nodes should register to http://192.168.0.107:4444/grid/register/
    15:31:46.140 INFO - Selenium Grid hub is up and running
    
    15:35:44.939 INFO - Selenium Grid node is up and ready to register to the hub
    15:35:44.958 INFO - Starting auto registration thread. Will try to register every 5000 ms.
    15:35:44.958 INFO - Registering the node to the hub: http://localhost:4444/grid/register
    15:35:45.231 INFO - The node is registered to the hub and ready to use
    
  • 通过控制台URL访问Selenium网格控制台以查看已注册的节点:

    http://localhost:4444/grid/console
    

  • 参考文献 您可以在以下内容中找到一些相关的详细讨论:


    假设要求在默认端口
    4444
    上运行集线器,在默认端口
    5555
    上运行节点,则需要按如下方式配置和启动它们:

  • 启动Selenium网格中心:

    java -jar selenium-server-standalone-3.141.59.jar -role hub
    
  • 以下日志确认您的Selenium Grid Hub运行正常:

    2017-07-24 15:31:46.139:INFO:osjs.Server:main: Started @2757ms
    15:31:46.140 INFO - Nodes should register to http://192.168.0.107:4444/grid/register/
    15:31:46.140 INFO - Selenium Grid hub is up and running
    
    15:35:44.939 INFO - Selenium Grid node is up and ready to register to the hub
    15:35:44.958 INFO - Starting auto registration thread. Will try to register every 5000 ms.
    15:35:44.958 INFO - Registering the node to the hub: http://localhost:4444/grid/register
    15:35:45.231 INFO - The node is registered to the hub and ready to use
    
  • 通过URL访问Selenium网格控制台:

    http://localhost:4444/grid/console
    
  • 启动Selenium网格节点:

    java -jar selenium-server-standalone-3.141.59.jar -role node -hub http://192.168.86.31:4444/grid/register
    
  • 以下日志确认Selenium网格节点运行正常:

    2017-07-24 15:31:46.139:INFO:osjs.Server:main: Started @2757ms
    15:31:46.140 INFO - Nodes should register to http://192.168.0.107:4444/grid/register/
    15:31:46.140 INFO - Selenium Grid hub is up and running
    
    15:35:44.939 INFO - Selenium Grid node is up and ready to register to the hub
    15:35:44.958 INFO - Starting auto registration thread. Will try to register every 5000 ms.
    15:35:44.958 INFO - Registering the node to the hub: http://localhost:4444/grid/register
    15:35:45.231 INFO - The node is registered to the hub and ready to use
    
  • 通过控制台URL访问Selenium网格控制台以查看已注册的节点:

    http://localhost:4444/grid/console
    

  • 参考文献 您可以在以下内容中找到一些相关的详细讨论:



    我使用AWS弹性IP解决了这个问题。使用弹性IP,我可以使我的私有IP公开。因此,我将集线器和节点都设置为AWS EC2实例,如果将弹性IP提供给集线器,则集线器对节点可见。

    我使用AWS弹性IP解决了此问题。使用弹性IP,我可以使我的私有IP公开。因此,我将集线器和节点都设置为AWS EC2实例,如果将弹性IP提供给集线器,则集线器对节点可见。

    这不起作用。这基本上是我已经拥有的,所以它给了我同样精确的日志<代码>Selenium网格节点已启动并准备注册到中心23:07:24.585信息[SelfRegisteringRemote$1.run]-启动自动注册线程。将尝试每5000毫秒注册一次。。当节点和集线器位于同一台计算机上,但我的节点位于ec2上时,这种方法就可以工作instance@mastercool依我看,你忽略了什么。您需要在不使用二进制文件的情况下启动集线器。不过,我的操作与您的操作完全相同,并且出现了相同的错误。我试着不用二进制文件。我不知道还能有什么be@mastercool你能用Hub和Node的完整错误跟踪日志更新这个问题吗?我刚刚添加了它!这不管用。这基本上是我已经拥有的,所以它给了我同样精确的日志<代码>Selenium网格节点已启动并准备注册到中心23:07:24.585信息[SelfRegisteringRemote$1.run]-启动自动注册线程。将尝试每5000毫秒注册一次。。当节点和集线器位于同一台计算机上,但我的节点位于ec2上时,这种方法就可以工作instance@mastercool依我看,你忽略了什么。您需要在不使用二进制文件的情况下启动集线器。不过,我的操作与您的操作完全相同,并且出现了相同的错误。我试着不用二进制文件。我不知道还能有什么be@mastercool你能用Hub和Node的完整错误跟踪日志更新这个问题吗?我刚刚添加了它!ip 192.168.86.31是一个本地/专用地址,可能无法从外部访问。除非您设置了VPN,否则您必须使用外部IP,并使用指向本地地址的NAT规则。我认为这很好,因为如果我记得正确,我可以使用该IP从另一台计算机访问selenium网格,但我如何确定如果该站位于同一网络上,它将在另一台计算机上工作。以192.168开头的IP是专用IP,只能在同一网络中直接访问。您的ec2实例位于不同的网络上