当前位置: 首页 > 工具软件 > Rally > 使用案例 >

ES esrally 部署

邢昂然
2023-12-01

安装记录

## 安装 python 3.8.13
cd /data/es/Python-3.8.13
./configure --prefix=/usr/local/python38
make && make install
ln -s /usr/local/python38/bin/python3 /usr/bin/python3
python3 -V

## 安装 git
cd /data/es/third_packges/git-2.7.5
./configure --prefix=/usr/local/git
make && make install



## 重新部署一个 ES 压测客户端
# 1. 部署
ansible es_client -m command -a "ls -l /data/es/"

ansible es_client -m command -a "mkdir -pv /data/es"
ansible es_client -m copy -a "src=/data/es/Python-3.8.13.tgz dest=/data/es/"
ansible es_client -m copy -a "src=/root/root_rally.tgz dest=/root/"
ansible es_client -m copy -a "src=/data/data_es.tar.gz dest=/data/"

ansible es_client -m copy -a "src=/usr/local/python38/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so dest=/usr/local/python38/lib/python3.8/lib-dynload/"
ansible es_client -m command -a "chmod +x /usr/local/python38/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so"

cd /data/es/ && tar -zxvf Python-3.8.13.tgz
cd /root/ && tar -zxvf root_rally.tgz
cd /data/ && tar -zxvf data_es.tar.gz

# 2. 启动验证
source /data/es/venv_es_rally/bin/activate
esrally race --pipeline=benchmark-only --target-hosts=XX.14.40.198 --track=geonames --challenge=append-no-conflicts  --offline




## bzip2 压缩
bzip2 -k documents-2.json
bzip2 -kv documents-2.json




修改源码的地方

1. 解压码压缩包
vim /data1/es/venv_es_rally/lib/python3.8/site-packages/esrally/track/loader.py
第 486 行,注释掉代码 io.decompress

2. 注释掉需要提前下载文档
vim /data1/es/venv_es_rally/lib/python3.8/site-packages/esrally/track/loader.py
第 452 行,def prepare_docs 函数中,注释掉 preparator.prepare_document_set

3. 
vim /data1/es/venv_es_rally/lib/python3.8/site-packages/esrally/racecontrol.py

部署问题解决参考

安装时候提示 documents.json.bz2 无法下载成功
https://blog.csdn.net/laoyang360/article/details/52155481

Python 3.8 解决ModuleNotFoundError: No module named ‘_bz2’
https://www.jianshu.com/p/b722adc2ba52

 类似资料: