跳转到: 导航, 搜索

ReleaseNotes/Folsom

OpenStack 2012.2 (Folsom) 发布说明

OpenStack 对象存储 (Swift)

主要新特性

  • 集群内尽可能唯一的数据放置
  • DB 预分配开关允许 Swift 利用固态硬盘与传统硬盘的速度/空间限制
  • swift3 中间件(AWS S3 兼容性支持)已移动到独立的、外部托管的项目
  • Swift 现在支持版本化的对象写入
  • Swift 集群监控的深度 Statsd 集成
  • Swift CLI 和客户端库已移动到 python-swiftclient 项目
  • Swift 与 Keystone 集成的 Keystone 中间件已从 Keystone 移动到 Swift
  • Swift 现在有一个新的自定义磁盘格式用于 rings,在较新版本的 Python 中速度提高了数百倍
  • Swift 不再在 memcache 值中使用 pickle

Swift 的完整变更日志可以在 Swift 的 CHANGELOG 中找到

Folsom 的完整功能列表可以在 这里 找到。

已知问题

目前还没有。

升级说明

与往常一样,生产 Swift 集群可以在不中断客户端的情况下进行升级。正常的升级路径是

  1. 停止后台进程
  2. 升级软件包
  3. 重新加载进程(例如 `swift-init object reload`)
  4. 启动后台进程

正常的升级过程将升级一个存储服务器在一个区域内(“金丝雀节点”)以检查是否有任何未预料到的问题。在升级该节点后,升级该区域内的其他存储节点。接下来,依次升级剩余的每个区域。最后,依次升级您的每个代理服务器(一次一个)。

以下项目是自 OpenStack Essex 发布以来 Swift 中发生的变化,升级前部署者应了解

  • 对于使用传统硬盘的现有集群,需要将 DB 预分配设置为 True(提交
  • swift3 中间件现在托管在 swift 项目外部
  • 对 `python-swiftclient` 的新依赖项(CLI 和客户端库已移动)。该项目是 Swift 在 OpenStack 伞形下的第二个交付成果。
  • 升级后的集群无法使用旧的 rings(请参阅 帖子
  • memcache 值的迁移路径(提交

OpenStack Compute (Nova)

主要新特性

Folsom 发布期间完成的功能的完整列表可以在 这里 找到。亮点如下。

已知问题

  • 安全组与浮动 IP 不兼容。用户应在安全组规则中使用固定 IP。更多信息 这里
  • 浮动 IP 在迁移或实时迁移期间不会自动移动。这延续了 Essex 的问题,但从未解决。详情和解决方法在:bug 966529bug 1053344
  • libvirt_cpu_mode 选项的默认值为“host-model”,但显然这会导致类似于“不支持的配置:超visor 不支持 CPU 规范”的错误,如果您在 VM 内运行 Nova;对于此类部署,应使用 libvirt_cpu_mode="none" https://wiki.openstack.org/LibvirtXMLCPUModel
  • 在使用 Ubuntu 12.04 作为后端存储的 LVM 时,快照删除可能会挂起系统上的 dd 进程。跟踪修复程序 bug 1023755
  • 较新的内核可能会导致 DHCP 失败。有关解决方法,请参阅此处的错误报告:bug 1029430
  • Xenapi 无法正确启动原始镜像。请确保为 xenapi 使用 vhd 镜像:bug 1055413
  • xenapi 驱动程序无法正确处理 vm_mode=xen 镜像。xenapi 代码无法正确报告功能,因此调度程序找不到主机。目前,请不要在镜像属性中设置 vm_mode=xen:bug 1055431
  • Folsom 中添加的 ZeroMQ RPC 驱动程序仍然被认为是实验性的,并且在 Grizzly 周期内可能会出现不兼容的更改。

升级说明

  • 警告: 如果您正在使用共享存储备份您的实例,请务必在升级到 Folsom 之前 禁用镜像缓存
   image_cache_manager_interval = 0
   Related Bug
  • NOVA-VOLUMES 已弃用 请尽快迁移到 cinder。Cinder 迁移记录在 MigrateToCinder。Nova-volumes 将不再存在于 grizzly 中。
  • libvirt.xml.template 和 cpuinfo.xml.template 文件已被删除。请参阅 LibvirtXMLConfigAPIs
  • Folsom 中 nova-volumes(和 cinder)与 tgtd 交互的方式发生了重大变化。您需要确保现在写入到 /var/lib/nova/volumes 的配置文件通过 tgtd 的 targets.conf 文件加载。有关详细信息,请参阅 此邮件列表帖子
  • Folsom 中 rootwrap 的配置方式发生了重大变化。请参阅 Packager/Rootwrap 以获取详细信息。
  • connection_type 标志已被弃用(并将从 Grizzly 版本中删除),以支持 compute_driver,因此 connection_type=libvirt 应替换为 compute_driver=libvirt.LibvirtDriver,并且 connection_type=xenapi 应替换为 compute_driver=xenapi.XenAPIDriver
  • 由于实例类型/flavor 分配磁盘的方式在不同驱动程序之间存在差异,迁移会创建不同的默认 flavor,具体取决于 connection_type。由于 connection_type 已弃用,如果您使用上述新的 compute_driver,新的安装将始终获得“xenapi 风格”的 flavor,这意味着所有空间都分配给根磁盘和一个空的临时磁盘。如果您希望 flavor 为“libvirt 风格”(10 GB 根磁盘和临时磁盘中的其他空间),您可以将 connection_type=libvirt 保留在您的配置文件中,或在 db 同步后手动更改它们。
  • 一些依赖项要求已升级。
    1. eventlet 必须现在 >= 0.9.17
    2. lxml 必须现在 >= 2.3 且 <= 2.3.5
    3. 需要 python-quantumclient >= 2.0(新的)
    4. 需要 python-glanceclient >= 0.5.0 且 < 2(新的)
    5. sqlalchemy 必须现在 >= 0.7.8(未显示在 pip-requires 中)

OpenStack Image Service (Glance)

主要新特性

  • 全新的 v2 API
  • 全新的客户端 - python-glanceclient
  • glance-api 上的客户端 SSL 证书验证
  • Swift 中的租户特定存储
  • 使用 glance-replicator 进行镜像复制

Folsom 的完整功能列表可以在 这里 找到。

已知问题

  • v2 API 需要 glance-api 节点上的 sql 配置

升级说明

  • auth_token 中间件配置已从 paste 配置移动到服务器配置
  • 将 enable_v2_api 设置为“false”以禁用新的 v2 API 或将 sql 配置从 glance-registry.conf 复制到 glance-api.conf
  • 在启动 Folsom glance 服务之前更新本地 keystone 代码

OpenStack Dashboard (Horizon)

主要新特性

网络 (Quantum)

由于 Quantum 是 Folsom 版本的核心项目,我们与 Quantum 团队密切合作,将网络支持带回 Horizon。这主要出现在两个地方:项目和管理员仪表板中的网络面板,以及启动实例工作流中的网络选项卡。随着 Quantum 的不断成熟和越来越多的用户采用这种虚拟网络管理模式,预计这些领域将得到进一步改进。

用户体验

工作流程

Folsom 版本迄今为止最大的 UI/UX 变化是引入了程序化工作流。这些组件允许开发人员创建简洁的交互,将跨多个服务和资源的离散任务以用户友好的方式结合起来,并且无需编写大量样板代码。在工作流中,相关对象也可以动态创建,因此用户在意识到他们想要的项目当前不可用时不会丢失位置。在启动实例、关联浮动 IP 以及创建/编辑项目等示例中可以找到这些工作流。

资源浏览器

另一个很酷的新组件是一个设计用于浏览嵌套在父资源下的资源的界面。对象存储 (Swift) 是一个很好的例子。现在,浏览器左侧窗格有一个一致的顶级导航,用于容器,而右侧窗格允许您在这些容器和子文件夹中浏览。

用户体验改进

  • 现在启用了时区支持。您可以在用户设置面板中选择首选时区。

社区

  • 希望构建在 Horizon 上的第三方开发人员可以使用新的仪表板和面板模板更快地入门。有关更多信息,请参阅有关 创建仪表板创建面板 的文档。
  • 现在提供了一套 全面的文档,介绍如何对 OpenStack 项目进行国际化、本地化和翻译。

底层改进

  • python-swiftclient 库和 python-cinderclient 库现在在底层使用,而不是 cloudfiles 和 python-novaclient。
  • 现在可以对客户端 JavaScript 进行国际化,而不仅仅是对服务器端 Python 代码进行国际化。
  • Keystone 身份验证现在由适当的可插拔 Django 身份验证后端处理,为 Horizon 提供更可靠和更安全的安全性。

Other Improvements and Fixes

一些总体改进领域包括

  • 可以通过提供 Glance 下载镜像数据的 URL 来将镜像添加到 Glance。
  • 项目仪表板中现在动态显示配额。
  • OpenStack RC 文件面板上现在显示 API 端点,以便最终用户可以有机地发现它们。
  • DataTables 现在支持表格底部的求和行。
  • 更好的跨浏览器支持(特别是 Safari 和 IE)。
  • 减少了对 OpenStack 端点的 API 调用(提高了性能)。
  • 更好地验证允许执行的操作。
  • 改进了错误处理和错误消息。

已知问题

浮动 IP 和 Quantum

由于浮动 IP 支持在 Quantum 中添加的时间非常晚,Nova 的集成存在缺陷,因此当您的 OpenStack 部署使用 Quantum 进行网络时,与浮动 IP 相关的 Nova API 调用将失败。这意味着 Horizon 操作(例如“分配”和“关联”浮动 IP)也无法工作,因为它们依赖于底层的 API。

分页

许多“索引”页面尚未完全与 API 分页一起工作,导致它们仅显示 API 返回的结果的第一部分。这个数字通常是 1000(例如 novaclient 的结果),但略有不同。

Deleting large numbers of resources simultaneously

使用“全选”复选框通过 API 删除大量资源可能会导致网络超时(具体取决于配置)。这是因为 API 本身不支持批量删除,因此 Horizon 在后台需要为每个资源单独发送删除请求。

升级说明

Folsom Horizon 版本应与 OpenStack 核心项目的 Essex 和 Folsom 版本完全兼容(Nova、Swift 等)。虽然由于底层服务中的错误修复等原因,某些功能在完全使用 Folsom 堆栈时效果更好,但不应限制任何功能是否可用。(注意:Quantum 在 Essex 中不是核心 OpenStack 项目,因此此声明不适用于网络管理。)

就为扩展 Horizon 提供的 API 而言,进行了一些不向后兼容的更改

  • 模板过滤器 can_haz 和 can_haz_list 已分别重命名为 has_permissions 和 has_permissions_on_list。
  • 仪表板特定的 base.html 模板(例如 nova/base.html、syspanel/base.html 等)已被删除,取而代之的是单个 base.html 模板。
  • 与上一条相关,仪表板特定的模板块(例如 nova_main、syspanel_main 等)已被删除,取而代之的是单个 main 模板块。

总的来说,为了维护与迄今为止基于 Horizon 构建的第三方开发人员的兼容性,我们付出了巨大的努力。

OpenStack Identity (Keystone)

主要新特性

  • 用于身份验证的 PKI 支持
  • 与 openstack-common 库的集成
  • Swift AUTH 中间件允许覆盖身份验证
  • CLI 选项名称合并为全局 OpenStack 标准(使用连字符)

Folsom 的完整功能列表可以在 此处 找到。

已知问题

  • V2 API 在 URL 中公开令牌
  • 如果在 Keystone 中删除了租户,则不会进行编排来验证与该租户关联的资源是否在其他项目(glance、nova、swift 等)中被禁用和/或删除
  • Keystone CLI 缺乏报告用户关联的租户的手段
  • auth_token 中间件需要安装 Keystone 的几乎所有内容,没有自己的软件包
  • LDAP 后端缺少 TLS/LDAPS 支持
  • 没有针对 Active Directory 的特定 LDAP 后端
  • V2 API 不受 RBAC 支持

升级说明

目前还没有。

OpenStack 网络服务 (Quantum)

主要特性

  • OpenStack Quantum 的第一个“核心”版本
  • v2 面向租户的 API,用于控制 L2 网络和 IP 地址管理
  • 可插拔的网络后端技术,包括 Open vSwitch、Cisco、Linux Bridge、Nicira NVP、Ryu 和 NEC。
  • 支持在不同的 L2 网络上重叠 IP 地址。
  • 全新且改进的 CLI
  • DHCP 服务,支持重叠 IP。
  • 支持 OpenStack 通知和 API 配额。
  • 扩展支持“提供商网络”,这些网络映射到物理 VLAN 或平面网络。
  • 扩展支持基本的 L3 转发、SNAT 和浮动 IP。支持多个路由器。
  • Keystone 集成的 API 策略框架,以支持不同的 API 模式:租户网络控制或仅管理员网络控制。

Folsom 的完整功能列表可以在 此处 找到。

已知问题

  • Nova 安全组和元数据服务器与重叠 IP 不兼容。

OpenStack Block Storage (Cinder)

主要特性

  • OpenStack Cinder 的第一个核心版本
  • 块存储服务
  • Cinder 是 nova-volume 的提取
  • 更新的第三方驱动程序
  • 来自 NetApp(iSCSI 和 NFS)和 IBM 的新驱动程序
  • Ceph RDB 的升级功能
  • 通用 NFS 驱动程序,用于将 NFS 作为块存储呈现
  • 改进的从卷启动(能够在卷创建时指定镜像)
  • 能够从卷创建镜像
  • 引入通过 tgtadm 的持久 iSCSI 目标。请注意,您必须将 '$state_path/volumes/*' 添加到您的 tgtd 配置文件中,无论是通过 tgt/conf.d 中的 includes 文件,还是直接在 tgt/targets.conf 中。
  • 已向 cinder-manage 添加数据库迁移工具
  • 与 Nova-Volume 完全兼容,但 XenSM 除外
  • Folsom Nova-Vol 和 Cinder 之间同步了功能和错误修复
  • 在创建响应中现在返回完整的卷信息
  • create_snapshot 中的 size 参数现在是可选的(默认为卷大小)
The full list of Folsom features can be found here.

从 Nova-Volumes 迁移到 Cinder

从 Nova-Volumes 迁移到 Cinder 的过程如下

已知问题

  • 从 Nova-Volume 迁移到 Cinder 仅支持 Folsom-->Folsom
  • 从 essex 升级到 folsom 后,尝试将升级前存在的卷附加到实例不起作用。跟踪修复程序:bug 1065702
  • 在使用 LVM 作为 Ubuntu 12.04 上的后端存储时,快照删除可能会挂起。跟踪修复程序:bug 1023755
  • 当前的单元测试与 32 位机器不兼容
  • XenSM 支持需要更新

已知的打包发行版

Ubuntu 12.04 / Ubuntu 12.10

所有核心 OpenStack Folsom 组件都正式支持,并可在 Main Quantal Ubuntu 存档和 Ubuntu Cloud 存档中获得

  • Nova
  • Glance
  • Swift
  • Horizon
  • Keystone
  • Quantum
  • Cinder

Folsom 可以使用 MAAS 和 Juju 部署。

要了解如何在 Ubuntu 12.04 上使用 Folsom,请参阅以下 博客文章

Fedora 17 / Fedora 18 / EPEL 6

所有核心 OpenStack Folsom 组件都可在 Main Fedora 18 存储库中获得。

请参阅 Fedora OpenStack 包概述,您可以在其中深入了解可用版本的详细信息等。

您还可以使用此 侧存储库 在 Fedora 17 上安装。

EPEL 6 将在发布后不久更新到 Folsom