Pike 系列发布说明¶
5.1.0-4¶
安全问题¶
CVE-2020-9543:API 中通过将未授权访问限制为项目来解决共享网络检索问题。有关更多详细信息,请参阅 launchpad bug #1861485。
5.1.0¶
升级说明¶
对于 Dell EMC VMAX Manila 驱动程序,将 emc_nas_pool_names 替换为 vmax_share_data_pools,emc_interface_ports 替换为 vmax_ethernet_ports,emc_nas_server_container 替换为 vmax_server_container。
弃用说明¶
对于 Dell EMC VMAX Manila 驱动程序,选项 emc_nas_pool_names、emc_interface_ports 和 emc_nas_server_container 已被弃用。
错误修复¶
如果删除了共享类型,现在将正确清理共享类型配额、使用量和预留。有关阻止此清理的错误的详细信息,请参阅 launchpad bug #1811680。
未在响应标头中返回请求 ID(‘x-compute-request-id’)的 API 已修复。
修复了驱动程序过滤器,不再检查 share_backend_name 和主机报告的名称之间的硬相等性,因为它破坏了功能筛选器的目的,该筛选器允许在 extra-spec 中使用“<in>”选择运算符。有关更多详细信息,请参阅 Launchpad bug 1815700。
5.0.3¶
错误修复¶
修复了 Quobyte 驱动程序中的一个错误,该错误允许共享调整大小不正确地将要调整大小的共享寻址到后端。
5.0.2¶
错误修复¶
对于最新的 Python 2.7 版本,urllib 在启动 URL 连接时默认使用 SSL 认证,这导致华为驱动无法连接后端存储,因为它不支持 SSL 认证。改为使用 requests 库代替华为驱动,并为后端存储连接设置无 SSL 认证。
更改了通用驱动程序中永久同步挂载的逻辑,以从 /etc/mtab 中选择新挂载的共享,并将其插入 /etc/fstab。添加了相应的永久卸载挂载功能。
管理 API 的错误消息已更改。
修复了当区域设置不是 POSIX 和 en_US.UTF-8 时,translate_string_size_to_float 方法在逗号小数分隔符而不是句点小数分隔符时可能失败的问题。
修复了安全组和安全组规则 - neutronclient 映射的创建
NetApp ONTAP 驱动程序已修复,在从现有快照创建共享时,会遵守请求的共享大小。
已修复 Launchpad bug 1717392,如果数据库包含已删除的访问规则,数据库降级将不会失败。不建议在生产环境中使用数据库降级。
修复了驱动程序私有数据存储的数据库更新查询,该查询无法更新标记为已删除的任何行。
非管理员用户可以在查询中以“all-tenants”标志调用 GET /share-networks 和 GET /security-services API,但是,该标志将被忽略,并且仅提供属于该项目的资源。此 API 更改是为了修复 manila 客户端项目中的 bug 1721787。
已调整数据库迁移,使其适用于 mariadb >= 10.2.8,方法是在删除作为其一部分的列之前先删除并重新添加主键约束。
当启用调试时,rabbitmq 密码不再暴露在日志中。
已修复 Launchpad bug 1765420,该错误影响了 NetApp ONTAP 驱动程序在删除共享期间。
ZFSOnLinux 驱动程序现在会重试卸载 zfs 共享以执行管理操作。有关详细信息,请参阅 Launchpad bug 1785180。
现在在 Quobyte 后端创建的新共享将使用正确的配额进行初始化。
修复了一个错误,该错误导致在调整 Quobyte 共享大小时后端设置了不正确的配额。
将 Huawei 驱动程序的 CIFS 挂载参数从 form “user=” 更改为 “username=”,这与各种操作系统兼容。
Quobyte 驱动程序现在可以处理来自 Quobyte API 版本 1.4+ 的更新后的错误代码。
删除了令人困惑的 manila.db.sqlalchemy 模型消息,这些消息指示
share_type、host、share_server_id、share_network_id、available_zone的已弃用属性。这些属性在 API 中作为共享的属性公开,实际上并非如此被弃用。
当使用 driver_handles_share_servers 驱动程序时,在 manila-share 服务启动后重置 tap 设备。
使用 Oslo 的日志记录功能安全地输出 Manila 的配置选项。
5.0.1¶
错误修复¶
修复了 NetApp ONTAP 驱动程序,以处理还原到复制和迁移的快照。
5.0.0¶
新特性¶
现在可以按导出位置 ID 或路径过滤共享和共享实例。
添加了定期任务来收集共享使用量大小。
为访问类型为 IP 时,已为允许访问 API 添加基于 IPv6 地址的验证。
在
shares、snapshots、share-networks、share-groups列表 API 中添加了类似过滤器的支持。
在 manila 调度器服务中添加了定期任务以清理过期的预留。
添加了共享组和共享组快照的数量限制。
添加了为共享类型设置限制的可能性。这对于可通过不同共享类型访问多个后端的部署非常有用。
为了能够了解共享组的这些属性,在共享组 API 中添加了两个新字段 - ‘availability_zone_id’ 和 ‘consistent_snapshot_support’。
Manila API 服务现在可以使用支持 WSGI 应用程序的 Web 服务器运行。
从 API 版本 2.33 开始,share access API 在 JSON 响应中为每个访问规则返回“created_at”和“updated_at”。
为由 CephFS 支持的共享添加了 NFS 协议支持。
添加了一个定期任务,用于清理过期的用户消息。清理间隔可以通过 message_reap_interval 配置选项设置。
Dell EMC Unity 驱动程序已更改为使用可用空间而不是分配空间来创建共享,与用户指定的大小相同。
Dell EMC Unity 驱动程序版本已更改为 Pike 版本的 3.0.0。
ganesha 库中的新类 ganesha.GaneshaNASHelper2 使用 NFS-Ganesha 版本 v2.4 或更高版本的动态导出更新功能,以干净的方式修改共享的访问规则。它修改为每个共享创建的导出,而不是像 ganesha.GaneshaNASHelper 那样为每个共享访问规则创建导出,后者引入了限制和不直观的用户体验。
添加了对 manila 服务生成 Guru Meditation Reports (GMR) 的支持。GMR 提供有用的调试信息,可用于获取系统当前实时状态的准确视图。例如,正在运行的线程、生效的配置参数等。
添加了新的配置选项 ‘lvm_share_export_ips’,它允许使用 IP 地址列表作为 LVM 驱动程序的导出位置。创建的每个共享将在每个 IP 地址上导出。此新选项取代了 ‘lvm_share_export_ip’。
NetApp 驱动程序现在支持 Quality of Service 附加规格。要在 ONTAP 上使用 qos 支持创建共享,请将共享类型中的 ‘qos’ 附加规格设置为 True,并使用 ‘netapp:maxiops’ 和 ‘netapp:maxbps’ 作用域附加规格来设置绝对限制。要设置基于大小的限制,请使用作用域附加规格 ‘netapp:maxiopspergib’ 或 ‘netapp:maxbpspergib’。后端 QoS 策略是专门为每个 manila 共享创建的。
为共享类型添加了可选的附加规格 ‘ipv4_support’ 和 ‘ipv6_support’。
为基于 IP 的驱动程序添加了新的功能 ‘ipv4_support’ 和 ‘ipv6_support’。
网络插件中添加了 IPv6 支持。(支持 IPv6 或 IPv4)
LVM 驱动程序中添加了 IPv6 支持。(支持 IPv6 和 IPv4)
切换到 tooz 内部心跳功能作为协调系统。
添加了新的用户消息 API - GET /messages、GET /messages/<message_id> 和 DELETE /messages/<message_id>。
添加了对用户消息列表的排序、过滤和分页。
添加了 ‘message_ttl’ 配置选项,可用于配置消息过期时间。
升级说明¶
在 manila.conf 文件中添加了 enable_gathering_share_usage_size 和 share_usage_size_update_interval 选项,以允许配置收集共享使用量大小的支持,并允许配置收集共享使用量大小的时间间隔。
有两个新的配置选项可用于设置共享组和共享组快照的默认配额 - ‘quota_share_groups’ 和 ‘quota_share_group_snapshots’。
已删除路径 ‘manila.api.openstack:FaultWrapper’ 到 ‘FaultWrapper’,现在只有当前路径可用,即 ‘manila.api.middleware.fault:FaultWrapper’。
升级后,在 manila.conf 文件中将 lvm_share_export_ip 重命名为 lvm_share_export_ips,以避免弃用警告。只要列表仍然是单个元素,功能不变。
添加了一个新的配置选项 ‘netapp_qos_policy_group_name_template’,以允许覆盖 NetApp 驱动程序创建的 QoS 策略的命名。
要使用 CephFS 驱动程序,该驱动程序通过本机 Ceph 协议启用 CephFS 访问,请将 share_driver 设置为配置文件驱动程序部分中的 manila.share.drivers.cephfs.driver.CephFSDriver。Mitaka/Newton/Ocata 版本中之前的 share_driver 设置 manila.share.drivers.cephfs.cephfs_native.CephFSNativeDriver 仍然有效(通常直到下一个版本,Queens,作为标准弃用过程的一部分),但不再建议使用它。
添加了
emc_ssl_cert_verify和emc_ssl_cert_path选项用于 VNX SSL 验证。有关详细信息,请参阅 OpenStack 官方文档。
弃用说明¶
‘lvm_share_export_ip’ 选项已弃用,将被删除。请使用 ‘lvm_share_export_ips’ 代替。
已弃用配置选项 ‘coordination.heartbeat’、‘coordination.initial_reconnect_backoff’ 和 ‘coordination.max_reconnect_backoff’,这些选项不再使用。
关键问题¶
当以非管理员权限调用 /shares 和 /share-replicas API 时,JSON 响应中不再返回“host”字段。依赖此字段的应用程序必须相应地更新。此字段的值是特权信息,并且使用这些 API 指定管理员权限才能显示“host”字段。GET /shares API 中“host”作为筛选键的使用受策略“list_by_host”控制。此策略默认为“rule:admin_api”。
错误修复¶
重新启用了 NetApp 驱动程序中的一致快照代码,现在与 Manila 共享组 API 兼容,而不是已弃用且已删除的 Manila Consistency Groups API。
修复了 HNAS 驱动程序在后端并发导致创建或删除快照时发生的错误。
Windows 驱动程序中有关共享创建的问题已修复。
修复了共享副本状态更新在共享副本提升功能中的并发问题。之前,在执行“share replica promotion”操作时,可能会看到两个活动的副本,具有 ‘dr’ 或 ‘readable’ 类型的复制。现在,成为活动的副本始终是最后更新的,因此,在一段时间内,我们将同时拥有零个“active”副本,而不是两个。
HNAS 驱动程序版本已修复,以符合 Ocata 版本中添加的新内容。
修复了共享模型中
task_state字段在实际完成共享迁移之前设置为migration_success的问题。
Quobyte 共享扩展/缩小操作现在适用于所有 Quobyte API 版本
修复了主机辅助共享迁移在完成时未从存储后端删除源共享的问题。
将用户访问名称限制从 32 个字符更改为 255 个字符,因为有些安全服务允许超过 32 个字符的用户名称。
当升级 manila 到新版本时,如果共享驱动程序在最新版本中添加了对存储池的支持,则属于此类驱动程序的共享将由 manila 迭代更新。这是通过查询后端驱动程序以获取每个共享托管的存储池来完成的。影响此路径的数据库更新错误已修复。
尝试为每个后端初始化 manila-share 驱动程序,以防初始化过程中出现错误。这样,即使后端暂时中断,也可以稍后初始化,而无需重新启动 manila-share。
修复了 GPFS 路径导出在初始化驱动程序时所需的先决条件。
NetApp 驱动程序已修复,以确保 CIFS 共享上的“security style”始终为“ntfs”。
NetApp cDOT DHSS=True 驱动程序已修复,以避免假设共享服务器仅在分段(VLAN)网络上配置。
当未配置默认共享类型且任何类型的共享上未指定其他共享类型时,将抛出新的异常。
修复了 NetApp 驱动程序,以报告在无法确定是否有任何“preferred”导出位置时“preferred”导出位置元数据的正确值。
NetApp 驱动程序已修复,以确保在驱动程序优化的共享迁移期间更改共享类型将导致根据请求的附加规格更正共享属性。
修复了
exact过滤器(名称、描述)在shares、snapshots、share-networks列表 API 中可以使用inexact值进行过滤。我们之所以出现错误,是因为description过滤器将在shares、snapshots列表中跳过,并且我们将直接删除inexact过滤器标志(‘~’)并使用inexact过滤器逻辑处理exact过滤器(名称、描述)。现在,我们在shares、snapshots列表中添加了description过滤器,并在shares、snapshots、share-networks列表中首先检查过滤器键是否以 ‘~’ 结尾。
access-allow API 接受 ipv6 规则,如果配置的后端不支持 ipv6 访问规则,则忽略它们。但是,当调用 access-deny API 以删除此类规则时,它们会卡在“denying”状态。此错误已修复,并且可以成功拒绝 ipv6 访问规则。
更改了 LVM 驱动程序中 revert-to-snapshot 的实现方式为同步方式,以防止后续操作失败。
修复了在 NFSHelper 插件中,具有类型
ip和 netmask 长度 0 的访问规则的应用问题,影响 LVM 和 Generic 驱动程序。之前这些规则会默默地失败应用。
修复了共享实例列表 API 显示错误的限制数量问题。将 _collection_name 更改为 _collection_links,当我们想要显示 instances_links 时。
调整了 policy.json 文件以更正快照策略值。
修复了 VNX 驱动程序中删除共享服务器的问题。VNX 驱动程序未能检测到共享服务器的 NFS 接口,因此跳过了 NFS 接口的分离和删除。
修复了 Dell EMC Unity 驱动程序中导致从快照创建的共享包含原始共享的数据而不是快照的数据的问题。
其他说明¶
将 ‘gpfs_nfs_server_type’ 配置参数的默认值从 KNFS 更改为 CES,因为 Spectrum Scale 默认通过 Ganesha 服务器提供 NFS 服务。