nGrinder安装指南 - 玩转压测nGrinder

先决条件

  • nGrinder是web应用程序(控制器)和Java应用程序(代理、监视器)的组合。如果您不知道什么是控制器和代理,请参考 nGrinder简介
    要安装nGrinder控制器和代理,您需要Oracle JDK 1.6~或OpenJDK 1.7~。
  • 如果您的java路径位于路径的开头,请检查PATH环境变量,以便能够运行合适的java。
  • nGrinder使用多个端口与agent及agent进行通信。如果防火墙阻止了一些端口,您应该要求网络管理员打开防火墙中的以下端口。这些端口可以通过配置进行配置。
    • 代理端:Any ==> 控制器:16001
    • 代理端:Any ==> 控制器:12000 ~ 12000+(允许并发测试次数)
    • 控制器:Any ==> 监视器:13243
    • 控制器 ==> 公共用户:这取决于您的tomcat配置。默认情况下,它被设置为8080。

下载

您可以从以下链接下载 nGridner控制器

安装控制器

nGrinder是作为一个自执行web存档文件(WAR)分发的,就像Jenkins一样,您可以将此存档文件放入您熟悉的web应用服务器(如Tomcat)或在命令行中运行包。
!小心,永远不要将war文件放在包含像这样的文件夹的空间中 "C:\Program Files\Tomcat\webapps"

通过Docker运行

如果你喜欢通过docker运行。请参阅 https://hub.docker.com/r/ngrinder/controller/

作为可执行文件运行

1、请确保您提前正确配置了PATH和JAVA_HOME。
2、使用以下命令运行nGrinder控制器。

java -jar ngrinder-controller-X.X.war

3、然后您将看到以下错误消息。nGrinder需要非常大的PermGen内存,因为它包含很多库,比如SVNKit、maven、Jetty webserver、groovy和python。重新运行ngrinder,并添加PermGen设置。nGrinder需要相当大的perm-gen内存。请使用以下命令运行nGrinder。

java -XX:MaxPermSize=200m -jar  ngrinder-controller-3.4.war

4、默认情况下,nGrinder为web服务器端口使用8080。如果您想使用另一个端口,请指定--port port_number作为参数。

java -XX:MaxPermSize=200m -jar  ngrinder-controller-3.4.war --port 80

5、当执行war文件时,将提取war到 ~/.ngrinder/webapp 目录,并创建多个默认数据文件,比如DBs到.ngrinder目录
6、如果您可以在屏幕上看到以下日志,那么ngridner控制器现在就可以运行了。

INFO 14. 1. 20 오후 4:39:liquibase: ChangeSet ngrinder_datachange_logfile/db.changelog_schema_22.xml::22::ngrinder.3.3 r
an successfully in 4ms
INFO 14. 1. 20 오후 4:39:liquibase: ChangeSet ngrinder_datachange_logfile/db.changelog_schema_23.xml::23::ngrinder.3.3 r
an successfully in 7ms
INFO 14. 1. 20 오후 4:39:liquibase: ChangeSet ngrinder_datachange_logfile/db.changelog_schema_24.xml::24::ngrinder.3.3 r
an successfully in 2ms
INFO 14. 1. 20 오후 4:39:liquibase: ChangeSet ngrinder_datachange_logfile/db.changelog_schema_25.xml::25::ngrinder.3.3 r
an successfully in 7ms
INFO 14. 1. 20 오후 4:39:liquibase: ChangeSet ngrinder_datachange_logfile/db.changelog_schema_26.xml::26::ngrinder.3.3 r
an successfully in 8ms
2014-01-20 16:39:30.633:INFO:/:Initializing Spring FrameworkServlet 'appServlet'
2014-01-20 16:39:31.141:INFO::Started SocketConnector@@0.0.0.0:8080

7、然后打开浏览器,进入 http://localhost:8080/

运行在TOMCAT

1、将war文件放到tomcat的webapps文件夹${TOMCAT_HOME}/webapps中。如果您想在没有ngrinder-controller上下文路径的情况下访问ngrinder,您应该将war文件名更改为ROOT.war

2、打开 catalina.sh 或者 catalina.bat ,然后把下面的内容放在文件的开头。

JAVA_OPTS="-Xms600m -Xmx1024m -XX:MaxPermSize=200m"    # for catalina.sh
set JAVA_OPTS=-Xms600m -Xmx1024m -XX:MaxPermSize=200m   # for catalina.bat

3、运行 ${TOMCAT_HOME}/startup.sh 或者 startup.bat
4、打开浏览器访问http://localhost:8080/ngrinder-controller-X.X ,或者如果你将war文件重命名为ROOT.war 则访问 http://localhost:8080

更多

1、nGrinder通过集群多个控制器支持多个区域(运行独立的代理集属于多个网络区域)。参见 控制器集群指南
2、nGrinder有许多可配置选项,可根据每种需求定制nGrinder。参见 控制器配置指南

安装代理端

与以前的nGrinder不一样,nGrinder 3.3 agents是从controller中下载的。下载的代理程序包已经包含连接到控制器的默认代理配置。只要打开tar文件和运行run_agent.sh或者run_agent.bat就能让代理连接到控制器。

1、以admin身份登录。默认的管理密码也是admin。


登录界面

2、单击右上角菜单并单击下载代理菜单。


下载代理端

因为您是以admin身份登录的,所以可下载的代理包包含允许所有用户共享代理的配置。
如果您以非admin帐户的身份登录,链接将被更改为“下载私有代理”,其中包含允许代理只被当前用户占用的配置。
详情请见私人代理。

3、包含代理的tar存档将很快下载。
在widows系统,tar文件能被7zip提取,或者使用tar xvf tar_file.tar命令

4、解压tar并运行run_agent.shrun_agent.bat。代理将使用以下逻辑执行。
① 检查~/.ngrinder_agent文件夹,可以看到配置(agent.conf)是否存在
② 如果不存在,复制当前文件夹的__agent.conf配置文件到~/.ngrinder_agent/agent.conf和加载它。
③ 如果它存在,只需使用现有配置~/.ngrinder_agent/agent.conf直接运行

5、如果您想用最新的配置覆盖现有的配置,请将-o选项作为参数

run_agent.sh -o # 在 linux/mac 运行
run_agent_bg.sh -o # 在 linux/mac 后台运行
run_agent.bat –o # 在 windows 上运行

6、如果你想停止代理程序。

stop_agent.sh # 在 linux/mac 运行
stop_agent.bat # 在 windows 运行

7、从nGrinder 3.3开始,控制器将自动批准所连接的代理,如果你在控制器中提供下面配置,那您必须自己批准代理。

controller.enable_agent_auto_approval=true

8、要批准代理,请转到代理管理菜单并单击approve按钮。


代理管理

9、如果在Linux中运行代理,可能需要配置ulimit以运行多个线程。请检查下面的内容。

> ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 30676
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 16000
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 32768
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

当你运行ulimit -a时,如果你的机器设置的max user processesopen files很小, 请至少设置到10000以上。打开/etc/security/limits.conf文件,并使用root权限添加一下内容:

your_account soft    nproc           32768
your_account hard    nproc           32768
root         soft    nproc           32768
root         hard    nproc           32768
your_account soft    nofile          16000
your_account hard    nofile          16000
root         soft    nofile          16000
root         hard    nofile          16000

默认情况下,每台机器只支持一个代理。但是,如果希望在一台机器上运行多个代理,则必须配置一些代理选项。请参考 代理配置指南

安装监控器

nGrinder监控器是代理程序包的子集,安装在目标机器中以收集负载下的系统统计信息(如CPU、MEM和网络)。
你也可以从控制器下载监视器。

1、下载监视器。


下载监控器

2、然后解压监视器包并运行批处理或shell文件。

run_monitor_bg.sh  # 运行在 linux/mac
run_monitor.bat # 运行在 windows

3、如果要停止监视器,运行以下命令。

stop_monitor.sh # 运行在 linux / mac
stop_monitor.bat –o # 运行在 windows

好了。现在可以运行第一个性能测试了。快速入门

更多内容请查看: 压力测试平台(nGrinder)入门到精通教程

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,826评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,968评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,234评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,562评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,611评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,482评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,271评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,166评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,608评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,814评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,926评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,644评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,249评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,866评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,991评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,063评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,871评论 2 354

推荐阅读更多精彩内容