PKB 介绍可参考:https://testerhome.com/topics/32067PKB,本文旨在介绍如何使用
官方介绍需使用 python3 以上版本,已安装验证 python3.7 可成功执行
操作系统推荐 MacOS、linux,win 系统未做验证
代码库地址:https://github.com/GoogleCloudPlatform/PerfKitBenchmarker
git clone https://github.com/GoogleCloudPlatform/PerfKitBenchmarker
pip3 install -r requirements.txt
ALIYUN-CLI 是阿里云命令行工具(Alibaba Cloud Command Line Interface),可以在命令行 shell 中,使用 aliyun 命令与阿里云服务进行交互,管理阿里云资源
1.安装 CLI
brew install aliyun-cli
2.配置 CLI,安装提示填写账号标识 Access Key Id、Access Key Secret、region、Output Format 信息即可
aliyun configure --profile akProfile
3.验证 CLI 安装成功
aliyun --help
./pkb.py --cloud=AliCloud --machine_type=实例规格 --benchmarks=iperf --image=镜像id --ali_system_disk_type=系统盘类型 --zones=可用区id
常用参数介绍(注意 flag 是两个 - )
--helpmatch=PKB : 查看全局标志
--benchmarks: 要运行的基准测试或基准测试集列表,以逗号分隔,例如 --benchmarks=iperf,fio,要查看完整的列表,可运行 ./pkb.py --helpmatch=benchmarks | grep perkitbenchmarker
--cloud: 运行基准测试的云产商,AWS、Azure、AliCloud 等
--machine_type:实例规格
--zones:可用区
--data_disk_type:数据盘类型
--image:镜像 id(推荐使用 ubuntu)
--ali_system_disk_type:阿里云系统盘类型
ErrorCode: Zone.NotOnSale
检查命令行参数中的实例规格和可用区是否对应正确
ERROR Exception occurred while calling CreateAndBootVm
检查生成的 PKB 密钥对是否正确
验证方法:PKB 运行 log 中找到没有生成的路径,使用秘钥连接 ECS,如果连接失败就是使用的秘钥不正确,在 PKB 运行参数中指定 --ali_user_name=本地的用户名(admin、root、xxx 等)
如果秘钥正确,手动可连接 ECS,但 PKB 中无法连接实例,可能是秘钥路径太长导致的,执行运行参数 ssh_control_path,路径为 秘钥路径公共部分,可多执行两次,截取秘钥的公共部分即可
持续踩坑,持续更新~~~