OpenStack Icehouse在4.17正式公布,看了下release note,发现改变不小,说明openstack还是在高速发展中,有不少新的特性增加,也有些小的剔除。以下就我所关注的项目做个简单翻译,技术水平有限,眼界有限,哪里有错,还望各位大牛指出。 一、升级相关: 1、windows下环境变量不能是unicode,要使用 pbr 0.8避免这个BUG 2、log-config 更改为 log-config-append,disable_existing_loggers默认设置为False. 3、添加X-Tenant-ID来防止用户欺骗操作其它租户的port,获取其它租户主机信息。所以升级时,先升级网络Neutron,重新启动eutron-metadata-agent,再升级nova-compute,这样时间更少。 二、OpenStack Compute (Nova) 1、升级: 如今在一定程序上支持在线升级,能够先升级控制结点,再逐个计算结点升级,降低升级导致服务不可用的时间。 2、Libvirt (KVM) libvirt (1)Libvirt compute driver如今支持提供改动内核參数来启动实例,从镜像的metadata的os_command_line字段获取 (2)Libvirt driver如今支持VirtIO SCSI (virtio-scsi) 而不是 VirtIO Block (virtio-blk) 来提供块存储设备。VirtIO SCSI是为更好的扩展和性能而设计的半虚拟化SCSI控制器设备 (3)Libvirt compute driver如今支持添加一个Virtio RNG做为实例的内核熵池 (4)Libvirt driver如今支持很多其它的视频驱动,比方:vga, cirrus, vmvga, xen , qxl。在镜像的metadate中设置相关參数就可以。 (5)支持watchdog i6300esb,能够通过镜像的hw_watchdog_action 属性或者flavor 的extra_specs这个參数来指定实例故障后是关机,重新启动,还是休眠。 (6)在用实例创建时,禁用HPET(High Precision Event Timer)俗称高精度定时器,由于启用这个属性,windows在高负荷时会发生时钟偏移 (7)支持在创建实例时等待Neutron的结果。好像之前版本号创建实例时常常是由于网络没准备好,120秒超时,实例状态立刻变成ERROR。 3、API (1)V3 API不再支持OS-DCF:diskConfig (2)XML格式眼下已不推荐使用(depracated),在下个版本号会被正式废除,仅仅能用JSON格式了。 (3)通过扩展API:ExtendedServicesDelete,彻底删除没用的计算结点; (4)在V3中,把管理员权限的操作在逻辑上分开,这样能够使用当中的部分功能 (5)nova hypervisor-show能够添加了IP地址“| host_ip | 10.0.0.12 ” (6)Keystone V3同意租户名不唯一,所以Nova与Neutron交互时,採用租户标识而不是租户名称来验证身份 4、Scheduler (1)通过caching scheduler driver来缓存可用宿主机资源,用户有资源请求,直接使用缓存的数据来进行调度,以提高调度性能。
(2)添加了新的AggregateImagePropertiesIsolation过滤器,依据镜像属性和aggregate (3)属性过滤主机。添加了两个配置项(/etc/nova/nova.conf ):
# Options defined in nova.scheduler.filters.aggregate_image_properties_isolation## Force the filter to consider only keys matching the given# namespace. (string value)#aggregate_image_properties_isolation_namespace=(4)在进行权重计算时,将乘数因子标准化,0.0 到1.0。 (5)调度器支持实例组的亲和性、反亲和性,实例会根据提前定制的策略来布署。 5、其它特性: (1)创建和删除keypairs时有通知 (2)主机状态变化时有通知, enabled, disabled, powered on, shut down, rebooted, 进入退出 maintenance mode (3)compute服务stop时,不再接受新的请求,但正在处理的请求不受影响,服务软停止。# The separator used between the namespace and keys (string# value)#aggregate_image_properties_isolation_separator=.
(4)关于已经删除的实例还在执行,添加running_deleted_instance_action属性的一个參数:shutdown 。
旧:
# Action to take if a running deleted instance is# detected.Valid options are 'noop', 'log' and 'reap'. Set to# 'noop' to disable. (string value)#running_deleted_instance_action=log
新:
# Action to take if a running deleted instance is# detected.Valid options are 'noop', 'log', 'shutdown', or# 'reap'. Set to 'noop' to take no action. (string value)#running_deleted_instance_action=reap(5)默认不再支持文件注入,推荐使用ConfigDrive或metadata服务。假设要继续使用,须要配置inject_key=true,inject_partition,inject_password=true,只是这几个属性如今状态为不推荐使用,将来可能没了。 (6)/etc/nova/nova.conf 一些配置属性被重命名,看名字就知道是干嘛的。