1

背景:我们的团队正在尝试在 lambda 上运行 UI 性能测试。现在我们正在运行性能测试用例,将我们的代码上传到 lambda 上的 zip 文件。这里的挑战是随着我们的应用程序不断增长,我们正在达到 50 MB 的 lambda zip 文件大小限制。然后我们遇到了图像大小限制高达 10GB 的 Lambda 容器。

问题:我们使用所需的依赖项构建我们的 docker 镜像,并且我们能够在本地以及在 Jenkins 代理上运行我们的测试用例。但是当我们尝试在 lambda 上运行相同的 docker 映像时,它会给出错误 - “Lambda 用户对给定目录没有写权限”。谷歌浏览器在运行自动化脚本时创建文件。Lambda 仅在临时文件夹内具有读写访问权限。临时文件夹大小 lint 为 512MB。有什么方法可以让容器内的 lambda 访问来运行测试用例?

4

1 回答 1

1

作为一个有根据的猜测,答案是否定的。如果 Lambda 允许读/写容器,那么镜像就有可能恶意或意外消耗其运行节点上的所有磁盘空间,并影响其他容器的执行。

如果您需要更多空间,那么一种选择是将 EFS 文件系统挂载到您的 Lambda 中。但是,我不知道它是否适用于容器,或者仅适用于 ZIP 部署。

但是,鉴于您已经将应用程序容器化,我认为更好的解决方案是使用 ECS 而不是 Lambda。这将为您提供20 GB 的临时存储空间,如果您需要更多,您可以挂载 EFS 卷。ECS 的另一个好处是您不限于 15 分钟的执行时间。

于 2021-03-19T12:51:48.870 回答