OpenStack Icehouse 先睹为快

还没有读者喜欢这个。
OpenStack Icehouse

Opensource.com

仿佛就在昨天,OpenStack 社区还聚集在香港,为 Icehouse 版本的发布设定设计目标。当我们进入三月份时,开发工作仍在如火如荼地进行,为版本的功能冻结做准备,但现在尘埃已经开始落定,我们能够开始真正感受到 OpenStack 用户和运营商可以在 Icehouse 版本中期待什么。

今天,我将先睹为快地介绍构成最初 OpenStack 版本的两个项目之一中所做的一些更改,而如今它仍然是最大的项目之一——创新丝毫没有放缓的迹象——OpenStack Compute (Nova)。OpenStack Compute 是云计算结构控制器,是基础设施即服务 (IaaS) 系统的核心组件。它负责管理虚拟机实例最终运行的虚拟机监控程序,并管理这些虚拟机实例的生命周期。此列表绝非详尽无遗,但重点介绍了一些关键功能以及构成 OpenStack 社区的贡献者在六个月发布周期内取得的快速进展。

Libvirt/基于内核的虚拟机 (KVM) 驱动程序增强功能

OpenStack 用户调查结果在香港发布,结果显示高达 62% 的受访者正在使用 Libvirt/KVM 虚拟机监控程序来支持其 OpenStack 云提供的计算服务。Libvirt 虚拟化抽象层与 KVM 虚拟机监控程序提供的性能安全性相结合的强大功能已在数据中心得到巩固,现在已扩展到弹性云。OpenStack 贡献者在 Icehouse 版本中继续找到新的创新方法,以公开此技术组合提供的功能,供弹性 OpenStack 云的运营商和用户使用,从而在此计算驱动程序提供的抽象层中交付了许多实际功能

  • 现在可以向计算实例添加 Virtio RNG 设备以提供更高的熵。Virtio RNG 是一种半虚拟化随机数生成设备。它允许计算节点向计算实例提供熵,以便填充其熵池。主机上使用的默认熵设备是 /dev/random,但是,也可以使用物理连接到主机的硬件 RNG 设备。可以使用用于构建实例的映像的元数据中的 hw_rng 属性启用 Virtio RNG 设备的使用。
  • 已添加 Watchdog 支持,允许基于实例内检测到的崩溃或内核崩溃触发实例生命周期事件。使用的 Watchdog 设备是 i6300esb。通过将映像属性或 flavor 额外规范中的 hw_watchdog_action 属性设置为 disabled 以外的值来启用它。支持的 hw_watchdog_action 属性值(表示 watchdog 设备在检测到实例故障时要采取的操作)为 poweroffresetpausenone
  • 现在可以配置实例以使用默认视频驱动程序以外的视频驱动程序。这允许指定不同的视频驱动程序模型、不同的视频 RAM 量以及不同数量的视频头。这些值分别通过在映像元数据中设置 hw_video_modelhw_video_vram 属性来配置。头的数量在客户操作系统中配置。当前支持的视频驱动程序模型为 vgacirrusvmvgaxenqxl
  • 现在可以为启动计算实例提供修改后的内核参数。内核参数从存储在 OpenStack 镜像服务 (Glance) 中的映像元数据中的 os_command_line 键中检索,前提是提供了该键的值。如果未提供值,则继续使用默认内核参数。
  • 现在可以使用 VirtIO SCSI (virtio-scsi) 而不是 VirtIO Block (virtio-blk) 来为实例提供块设备访问。VirtIO SCSI 是一种半虚拟化 SCSI 控制器设备,旨在作为 VirtIO Block 的未来继任者,旨在提供更高的可扩展性和性能。通过在映像属性中将 hw_disk_bus_model 设置为 virtio-scsi,为客户实例启用 VirtIO SCSI。
  • 已对 /etc/nova/nova.conf 配置文件的预期格式进行了更改,目的是确保文件中的所有配置组都使用描述性名称。许多特定于驱动程序的标志(包括 Libvirt 驱动程序的标志)也已移动到它们自己的选项组。

计算 API 增强功能

许多贡献者一直在努力扩展计算 v2 API,同时更新后的 API 的工作也在继续进行,该 API 有朝一日可能会取代它,即计算 v3。近几周来,这一直是热门话题,因为贡献者讨论了如何仔细平衡对 API 创新的渴望与运营商和用户的需求。与此同时,计算 v2 API 的开发仍在继续,Icehouse 版本中进行的一些关键扩展和更改是

  • 已添加 API 功能,用于定义、列出和检索实例组的详细信息。实例组提供了一种在启动时对相关虚拟机实例进行分组并应用策略以确定它们必须如何相对于组的其他成员进行调度的工具。当前支持的策略是 affinity,表示组中的所有实例都应调度到同一主机,以及 anti-affinity,表示组中的所有实例都应调度到不同的主机。 使用更新后的 API 检索实例组的详细信息也会返回组成员列表。
  • 计算 API 现在公开了一种永久删除已停用计算节点的机制。以前,即使计算服务已被禁用且系统已重新配置,这些节点也会继续列出。此功能由 ExtendedServicesDelete API 扩展提供。
  • 计算 API 现在公开了虚拟机监控程序 IP 地址,允许管理员使用“nova hypervisor-show”命令检索它。
  • 计算 API 当前支持 XML 和 JSON 格式。对 XML 格式的支持现已标记为已弃用,并将在未来版本中停用。

通知

计算对通知的支持随着每个版本的发布而不断增长,越来越多的操作逐渐被修改为生成通知,运营商、用户和编排系统可以捕获这些通知来跟踪事件。Icehouse 版本中添加的值得注意的通知是

  • 现在,当计算主机启用、禁用、开机、关机、重启、置于维护模式和退出维护模式时,会生成通知。
  • 现在,在创建和删除密钥对时会生成通知。

调度器

计算调度器负责根据一系列可配置的过滤器和权重来确定启动的实例将放置在哪些计算节点上。虽然仍在努力将调度器与 Nova 进一步解耦,但这仍然是项目内部丰富创新的领域。在 Icehouse 版本中

  • 已对调度器进行了修改,以添加可扩展框架,使其能够根据资源利用率做出决策。在即将发布的版本中,预计会看到该领域的更多开发,特别是当它扩展到处理特定资源类时。
  • 添加了缓存调度器驱动程序的初始实验性实现。缓存调度器使用现有工具来应用调度器过滤器和权重,但会缓存可用主机的列表。当用户请求传递到缓存调度器时,它会尝试根据缓存的主机列表执行调度,以提高调度器性能。
  • 引入了一个新的调度器过滤器 AggregateImagePropertiesIsolation。新的过滤器根据命名空间图像属性与主机聚合属性的匹配情况将实例调度到主机。不属于任何主机聚合的主机仍然是基于所有映像的实例的有效调度目标。新的计算服务配置键 aggregate_image_properties_isolation_namespaceaggregate_image_properties_isolation_separator 用于确定过滤器检查哪些映像属性。

测试

在 Icehouse 发布周期中,工作仍在继续,以促进位于 OpenStack Compute 源代码树中的虚拟机监控程序驱动程序的第三方测试。这允许第三方提供持续集成 (CI) 基础设施,以针对每个提议的 OpenStack Compute 补丁运行回归测试,并记录结果,以便在代码审查时可以参考这些结果。这不仅确保了这些驱动程序的测试覆盖率,而且还为 OpenStack Compute 项目本身提供的共享组件提供了宝贵的额外测试覆盖率。

升级

计算服务现在允许一定程度的滚动升级,由此可以将控制服务升级到 Icehouse,同时它们继续与运行来自 Havana 版本代码的计算服务进行交互。与过去通常可能的情况相比,这允许以更渐进的方式升级 OpenStack 云或逻辑指定的子集。

稳定 Icehouse 的工作将在一段时间内继续进行,然后社区将在五月份再次聚集在亚特兰大 OpenStack 峰会 2014 上,以定义下一个六个月发布周期的设计愿景。如果您想帮助测试上述某些功能,为什么不使用基于第三个 Icehouse 发布里程碑的最新软件包参与即将到来的 RDO 测试日 呢?

最初发布在 Red Hat Stack:OpenStack 博客。经许可转载。这个故事最初错误地归因于 Gordon Haff,后来已更新以反映正确的作者。

标签
User profile image.
地理位置分散的澳大利亚人。Stephen 专注于使用虚拟化、容器化和裸机配置技术为计算用例构建基础设施解决方案,目前是 Red Hat 在加拿大多伦多担任首席产品经理。

评论已关闭。

© . All rights reserved.