【发布时间】:2020-10-18 22:16:30
【问题描述】:
我有一个 Jmeter 服务器(使用 jmeter-maven-plugin)在我的 Kubernetes 集群的一个 pod 中运行,它用于对在同一集群中的其他 pod 中运行的微服务进行性能测试。我通常通过在终端中使用 CLI 命令调用服务器来运行性能测试(执行到 k8 pod 并运行测试)。这仅在我具有 Kubernetes 身份验证时才有效。我现在需要允许没有 k8 访问权限的用户使用 GUI 客户端而不是 CLI 来调用 Jmeter 服务器。我不希望他们编写任何测试脚本。我该怎么做?
这是我一直在想的:
选项 1:客户端也必须在 k8 中运行,并且用户必须能够使用浏览器访问客户端。我认为这是不可能的,因为 Jmeter GUI 客户端是使用 bin 文件夹中的 sh 脚本运行的(https://octoperf.com/blog/2018/03/29/jmeter-tutorial/),不确定我们如何托管它?
选项 2:将 Jmeter 服务器暴露给外部世界,以便没有 k8 访问权限的用户可以使用此外部 IP 调用它。尝试关注https://kubernetes.io/docs/tutorials/stateless-application/expose-external-ip-address/ 之类的内容,但这会在我的性能测试响应时间中包含网络时间吗?
最好的方法是什么?我可以探索哪些其他可能的解决方案?是否有任何其他性能测试工具可以轻松实现这一目标?任何帮助表示赞赏。
【问题讨论】:
-
请注意,您不应在 GUI 模式下运行负载测试,请参阅 jmeter.apache.org/usermanual/get-started.html#load_test_running
标签: kubernetes jmeter performance-testing jmeter-maven-plugin