暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ElasticSearch 基准压测esrally

IT那活儿 2025-08-22
326
点击上方“IT那活儿”公众号--专注于企业全栈运维技术分享,不管IT什么活儿,干就完了!!!


esRally 是什么

esRally 是 Elastic 官方推出的 基准测试工具,专为 Elasticsearch 设计。
它可以模拟真实场景下的读写操作,测试集群的性能指标(如吞吐量、延迟、资源利用率),并提供以下核心功能:
  • 自动化测试
    自动部署集群、执行测试、收集指标。
  • 数据集管理
    支持自定义或预置数据集(如 NYC Taxi 数据、HTTP 日志)。
  • 赛道(Tracks)
    预定义的测试场景,覆盖不同用例(如搜索、聚合、写入)。
  • 结果对比
    支持不同版本、配置的测试结果对比。


安装esrally

2.1 安装环境
Python3.7+、Git1.9+、JDK1.8+
2.2 安装esrally
确保Python环境没问题,输入python3 -m pip install esrally安装。
注意事项:安装esrally时,确保pip3版本更新,旧版本无法下载。
2.3 更新pip版本
pip3 install--upgrade pip
推荐使用国内加速镜像下载:
pip3 install esrally -i https://pypi.tuna.tsinghua.edu.cn/simple
2.4 安装完esrally,配置环境变量后验证安装
验证安装:
2.5 Esrally配置文件目录
首次配置:
输入命令‘esrally configure’

## 命令后将会检测你的环境,以及需要填写JAVA_HOME。



运行第一个基准测试

3.1 运行第一个测试
注:es自带的jdk切记切换成1.8,es自带的版本太高无法运行会报错。
压测自建ES机器:
esrally --track=geonames \

        --target-hosts=192.168.10.100:9200 \

        --client-options="timeout:120,basic_auth_user:'elastic',basic_auth_password:'密码'" \

        --pipeline=benchmark-only \

        --on-error=abort

正在往自建ES机器中写入数据。
3.2 测试结果
注意这里有两点要提一下:
  • 1)ES6以后不允许root启动启动,所以,Esrally我们也要用普通用户去测试,否则会报错
  • 2)另外由于数据量过大,压测的时间一般会很久,可能在一个小时左右
我们的ES测试工具Esrally就陆陆续续搭建成功,这个过程,出现的问题,比较多,我这边文章是经过多次梳理后总结的。

END


本文作者:刘 睿(上海新炬中北团队)

本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论