openstack Rally使用
Rally 简介
Rally是一个通用的测试工具,可以自动化并统一 多节点OpenStack部署,验证,测试和性能分析。它可用作OpenStack CI / CD系统的基本工具,可以不断提高其SLA,性能和稳定性。
应用场景
![](https://img.haomeiwen.com/i1969601/4433caba02ffed5f.png)
![](https://img.haomeiwen.com/i1969601/41a7c3e1920ed325.png)
![](https://img.haomeiwen.com/i1969601/b04db788ec8342cd.png)
Rally安装
在普通用户权限下(root用户有大坑),使用curl安装
curl https://raw.githubusercontent.com/openstack/rally/master/install_rally.sh | bash
![](https://img.haomeiwen.com/i1969601/0481b962669fa083.png)
安装完成后,会有成功提示
![](https://img.haomeiwen.com/i1969601/4926e1e0ad3049bc.png)
安装 rally-openstack 插件
pip install rally-openstack
![](https://img.haomeiwen.com/i1969601/22b3882ebcab2628.png)
Rally 配置
首先是进入到 Rally 的虚拟环境, 在终端的光标行首前会出现 (rally)。
. ~/rally/bin/activate
![](https://img.haomeiwen.com/i1969601/8a9504ff668f91ef.png)
创建数据库
rally db recreate
![](https://img.haomeiwen.com/i1969601/17bcbd3e9439aace.png)
创建deployment
为了能让 Rally 和我们的云建立连接,我们需要一个 openrc 文件。直接使用系统openrc的话,只要先执行一下 . /root/admin-openrc.sh ,然后执行
rally deployment create --fromenv --name=existing
![](https://img.haomeiwen.com/i1969601/6c5fd1ece7757d2d.png)
但是不建议直接取用系统中的rc文件,因为这种方式生成的deployment,会导致部分配置项不正确,例如
![](https://img.haomeiwen.com/i1969601/f989aac05b10d335.png)
真正的region_name是RegionOne,这里不对导致后面的用例都跑失败了
这里使用第二种方式,自己创建一个existing.json
{
"openstack": {
"auth_url": "http://controller.singleregion.local.domain:5000/v3/",
"region_name": "RegionOne",
"endpoint_type": "public",
"admin": {
"username": "admin",
"password": "Passw0rD@admin",
"project_domain_name": "Default",
"project_name": "admin"
},
"https_insecure": false,
"https_cacert": ""
}
}
然后执行rally deployment create --file=existing.json --name=existing
![](https://img.haomeiwen.com/i1969601/143d39addfcf00e6.png)
使用rally deployment config
查看配置项
![](https://img.haomeiwen.com/i1969601/0aa1ec348826ad82.png)
完全正确
创建deployment完成后,rally deployment list
查看一下
![](https://img.haomeiwen.com/i1969601/7b82d6283130af8e.png)
status为
deploy->finished
表示创建成功,以后将会默认使用这个 deployment,同时在主目录下会有一个新的目录出现:.rally
检测一下deployment是否可用rally deployment check
![](https://img.haomeiwen.com/i1969601/f9998ffcd1f8258e.png)
以后只要进入Rally环境即可直接使用
执行测试
执行测试的时候,一开始会报错
![](https://img.haomeiwen.com/i1969601/220da075979ad768.png)
其实是因为openstack中缺少member这个role,添加一下即可
![](https://img.haomeiwen.com/i1969601/803015dca1b2974e.png)
用例执行成功后,可以按提示导出网页报表
![](https://img.haomeiwen.com/i1969601/296d2397450c05d5.png)
可以方便的在网页中查看结果
![](https://img.haomeiwen.com/i1969601/ceec5bd0032fb81d.png)