簡體   English   中英

從雲端開始 jmeter 分布式測試

[英]Start jmeter distributed testing from clouds

我想通過 jmeter 運行分布式負載測試,其中服務器(linux)在雲中,我可以從本地電腦開始測試。 甚至有可能還是客戶端和服務器應該在同一個子網中? 如果可能的話,您能否逐步指導我如何實現這一目標? 我累了

https://jmeter.apache.org/usermanual/remote-test.html

https://cloud.google.com/community/tutorials/ssh-port-forwarding-set-up-load-testing-on-compute-engine?hl=ja

但我一個接一個地出錯。 在我禁用 ssl 驗證之前,出現下一個錯誤:

error during JRMP connection establishment; nested exception is:
        javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake

禁用 ssl 驗證我有下一個錯誤:

Error in rconfigure() method java.rmi.MarshalException: error marshalling argume
nts; nested exception is:
        java.net.SocketException: Connection reset by peer: socket write error

我有感覺,就像我在設置 ip、端口或防火牆時弄錯了,但不明白是什么

絕對可以從本地系統啟動負載代理(jmeter-server)。 唯一的條件是流量不應被防火牆阻止。

根據您的錯誤,看起來 jmeter 進程沒有打開端口的權限,端口已經打開(盡管有一個特定的例外)

您還可以嘗試允許所有傳入流量到您的從屬設備(雲 linux 盒)並嘗試再次運行測試。

根據您提到的手冊,您只需執行以下步驟:

  1. 在您的本地機器上設置 SSH 隧道:

     ssh -L 24000:127.0.0.1:24000 -R 25000:127.0.0.1:25000 -L 26000:127.0.0.1:26000 username@hostname_of_cloud_machine
  2. 在雲機上啟動 JMeter 從機

    ./jmeter -s -Jserver.rmi.ssl.disable=true -Jserver_port=24000 -Jserver.rmi.localhostname=127.0.0.1 -Jserver.rmi.localport=26000 -j jmeter.log
  3. 再次在本地機器上啟動 JMeter 主機:

     ./jmeter -Jserver.rmi.ssl.disable=true -Jremote_hosts=127.0.0.1:24000 -Jclient.rmi.localport=25000 -Jmode=Statistical -n -t test.jmx -l result.jtl

您不需要配置任何防火牆,因為所有通信都通過SSH 隧道進行

更多信息:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM