【问题标题】:Docker-Selenium Maximum number of chrome containersDocker-Selenium最大镀铬容器数
【发布时间】:2017-05-07 10:02:07
【问题描述】:

我正在使用 Azure 和 Docker - Selenium HUB 和 Chrome 映像

设置测试基础架构

在 AZURE 上运行最新版本的 Ubuntu

系统配置

Ubuntu:16* 码头工人:最新版本 内存:6GB 固态硬盘:120GB

如果容器数量为 ,则能够在 Chrome 容器中运行自动化脚本而不会出现任何问题。

当我扩大数字时,整个系统冻结并且没有响应并且测试没有运行。

PS:我也在创建容器时挂载/dev/shm:/dev/shm。

运行至少 75 个容器的最佳系统配置应该是什么?

【问题讨论】:

  • 75 个并行容器?我是 elgalu/docker-selenium 的作者,也是github.com/zalando/zalenium 的合著者,所以我对工具有一些经验,我可以向你保证,机器不能超过 10 个是完全有道理的。 Diego 和明年我可能会研究水平可扩展性,但现在您只能垂直扩展并将实例大小调整为当前负载。如果可能的话,我会将负载分布在不同机器上的不同网格中,而不是尝试在同一实例上同时运行所有 75 个。
  • @LeoGallucci 是的,75 个并行容器。我认为在一台机器上并行运行更多容器会降低我的测试基础设施成本。也许我过于雄心勃勃:) 我会尝试你提到的方法。

标签: selenium docker protractor


【解决方案1】:

75 个容器的 6GB RAM 意味着大约 80 MB/容器。那你也想在里面运行firefox/chrome吗?这可能是无头/无显示运行,但这并不意味着它们不占用内存。

您需要为此类节点停放 500MB 内存/容器。您可以设置内存限制,但一旦您的容器超过它,噗!!!容器已死,您的浏览器和测试也已死。最好是使用 Docker Swarm 部署一个自我修复的 Selenium Grid

或者您可以使用@Leo Galluci 提到的https://github.com/zalando/zalenium。

PS:我写了一篇关于如何在 swarm http://tarunlalwani.com/post/deploy-selenium-grid-using-docker-swarm-aws/ 上设置 Grid 的文章。您可以查看相同的内容以了解网格的水平缩放

【讨论】:

    猜你喜欢
    • 2017-12-23
    • 2017-08-05
    • 1970-01-01
    • 2011-09-15
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 2013-10-26
    • 1970-01-01
    相关资源
    最近更新 更多