扫一扫微信二维码

女王的新装 | Q版新功能集锦之三:Tempest 18.0.0新增支持Q版本 发布时间:2018-04-04


摘要:2月28日,OpenStack Queens版本正式发布,这也标志着部署最为广泛的开源OpenStack云平台的第17版诞生。根据OpenStack基金会披露,为满足边缘计算,HA和AI的工作负载需求,Queens扩展了对GPU和容器的支持,Queens不仅增加了多项新功能,同时也对诸多旧功能进行了优化。在本期九州云将围绕Queens版本,对 Tempest项目的新特性进行展示,业界需要掌握的关键点都在这里。
 
当我们使用ovs hardware offload功能时,我们需要在Neutron中创建具有相应特性的端口。Neutron通过binding profile创建具有某种特性的端口。为了在Tempest中测试ovs hardware offload,我们需要在Tempest中实现profile功能。
 
Tempest 18.0.0 正式发布,并支持Queens版,同时将不再支持Newton版。
 
一、Tempest新增功能
 
下面来看看在Queens版本中Tempest项目具体有哪些重要的新功能:
 
1、在volume.v3.group_types_client库中新增了volume group specs api的client,新增了以下测试用例:
create_or_update_group_type_specs
list_group_type_specs
show_group_type_specs_item
update_group_type_specs_item
delete_group_type_specs_item
 
2、配置文件中,Neutron组下面添加了配置项port_profile。这个配置项被用来指定端口特性,默认为空。
 
3、在network.quotas_client库中添加了项目默认网络quota api的client,用于显示指定项目的默认网络quota。
 
4、在volume.v2.encryption_types_client库中新增了volume encryption specs api的client,用于显示指定volume type绑定的encryption specs。
 
5、在network.quotas_client库中添加了networking quota extension api的client,用于获取指定项目quota信息,包括每种资源的使用量、总量、可用量。
 
6、在volume.v3.group_types_client库添加了update group type api的client,update group type功能是在Cinder api 3.11版本中加入的。
 
7、重构了config drive的挂载和卸载函数,统一了Tempest中config drive挂载和卸载操作。
 
8、修改了Tempest CLI的实现,由内部调用testrepository改为使用stestr库。这意味stestr所有的功能和bug fixes对Tempest CLI都是有效的。
 
9、Tempest run command新增参数,--black-regex,运行所有不符合给定格式的测试用例。
 
10、更新配置文件,在compute-feature-enabled组中新增布尔型配置项volume_backed_live_migration,默认不开启。如果开启volume_backed_live_migration,则会执行验证Nova volume-backed 热迁移功能的测试用例。
 
二、Tempest功能更新
 
同时在Queens版本中Tempest项目有些功能进行了更新,重点更新情况如下:
 
1、不再使用/废弃了以下配置选项,在当前Tempest支持的OpenStack稳定版中,这些配置项均被妥善的处理了:
[identity-feature-enabled].forbid_global_implied_dsr
[image-feature-enabled].deactivate_image
[default].resources_prefix
config group [orchestration]
[service_available].heat
 
2、移除lib/decorators.py中修饰器skip_unless_attr。
 
3、移除tox ostestr任务,通常使用tox –eostestr执行该任务。这个任务使用得比较少,之后的版本会把ostestr移出Tempest依赖列表。如果你依赖于这个功能,那么你可以使用tox venv-tempest任务替代tox ostestr任务。执行tox -evenv-tempest -- ostestr命令,会完成和tox ostestr任务一样工作。
 
4、Tempest CLI将不再依赖testr,这意味着Tempest内部使用的所有testr数据都会被移除。例如,.testr目录将被忽略。对于依赖于testr保存的测试数据的用户,这里有一个潜在的兼容问题。之前依赖testr的操作都将使用stestr实现。
 
三、其他
 
1、修复了Tempest CLI参数之间互斥的现象,不再会出现Bug#1751201那样的问题。
 
2、当CLIClient class调用client函数时,使--os-project-name替--os-tenant-name,同时也传递--os-identity-api-version(默认为空)参数。在当前Tempest支持的OpenStack版本上,CLI client通过调用cmd_with_auth函数来传递上面两个参数。
 
3、配置文件中,在compute-feature-enabled组下面添加了配置项volume_multiattach(默认值为False)。当volume_multiattach设置为True时,验证volume重复挂载功能的测试用例将会执行。这些测试用例要求compute api版本在2.6.0以上,block storage api版本在3.44以上。在Queens版本中,只有libvirt driver支持volume重复挂载,还要求qemu版本<2.10或者libvirt版本>=3.10。另外,只有lvm backend支持volume重复挂载。
 
4、18.0.0发布后,Tempest维护的OpenStack发布版本有Queens、Pike和Ocata,当前开发版本是Rocky。这意味着,在Rocky开发周期中,每个Tempest commit也被用于测试master分支的patch。但这并不意味着使用这个版本的Tempest可以测试Rocky版本或者后面版本的OpenStack环境。

相关阅读
女王的新装 | Q版新功能集锦之四:Cinder十大新特性尽在掌握
女王的新装 | Q版新功能集锦之三:Tempest 18.0.0新增支持Q版本
女王的新装 | Q版新功能集锦之二:Ironic实现救援模式支持
女王的新装 | Q版新功能集锦之一:Kolla从升级到零宕机升级

 
更多参考信息
https://docs.openstack.org/releasenotes/tempest/v18.0.0.html

© 2012-2017 九州云信息科技有限公司 99Cloud 版权所有 咨询热线:400 006 0472 售后服务热线:400 670 7810 培训咨询热线:400 826 0070   ICP证:浙ICP备12032350号-1

网站建设:信达互联

北京网站建设公司