Zed 系列 (4.2.0 - 4.3.x) 发布说明¶
4.3.4¶
错误修复¶
修复了 sushy 在向 redfish 服务发出请求时,无法将读取/连接超时传递给请求的错误。这意味着,时机不巧的故障可能导致调用 sushy 的 Python 进程无限期地冻结。
为所有请求类型(除了现有的 GET 方法之外),增加了对 iDRAC 错误代码 SYS518 和消息“iDRAC 当前无法显示任何信息,因为数据源不可用”的重试。这有助于修复在连续删除一组卷后,iDRAC 在删除每个卷后重新加载时出现的一种已知间歇性问题。
修复了 iDRAC 固件版本 6.00.02.00 或更高版本在删除卷时出现的“不支持的参数名称 @Redfish.OperationApplyTime”错误。
正确处理硬件在虚拟媒体操作中需要
TransferProtocolType时出现的错误代码Base.1.5.PropertyMissing。
正确处理在刷新身份验证令牌后重试请求时出现的错误。
在某些 HPE iLO 支持的机器上遇到一个问题,基本板管理控制器会响应 HTTP 400 错误,并显示一条错误消息,表明请求的操作对于当时的系统状态无效。例如,在之前更改过电源状态后,尝试通过 BMC 更改电源状态。现在,当遇到此错误时,我们将尝试在允许的重试次数内重试。
针对 https://github.com/psf/requests/issues/3829 的解决方法。如果设置了环境变量
REQUESTS_CA_BUNDLE,则requests.Session()会忽略 verify 参数。因此,verify 参数直接移动到 requests 函数调用中。
4.3.3¶
错误修复¶
添加了额外的检查,用于 BMC 通过 @Redfish.Settings 提供 SettingsObject URI 的情况,但此 URI 不允许设置启动相关属性。在向 SettingsURI 发送 PATCH 请求之前,会发出 GET 请求以验证它是否包含要更新的属性。如果缺少这些属性,则请求将改为针对 System URI。 类似于此更改解决的问题通常会表现为 Redfish 响应包含类似于以下内容的错误消息:
MessageId: Base.1.8.PropertyNotWritable, Message: The property BootSourceOverrideEnabled is a read only property and cannot be assigned a value.
4.3.2¶
错误修复¶
为了避免与最新版本固件出现超时,我们需要增加服务器端重试次数。例如,在 idrac 固件系列 5.x 中,操作之间的时间间隔几乎为 20 秒,而在 4.x 系列中为 10 秒。
4.3.1¶
错误修复¶
更改了 PATCH 请求中的 eTag 处理方式:首先,使用原始 eTag。如果出现故障,如果提供的 eTag 是弱 eTag,则通过删除弱前缀将其转换为强格式。如果此方法不适用或失败,则最终尝试完全省略 eTag。通过这种方法,如果 BMC 按照预期处理 eTag,则不会应用任何解决方法,并且在出现故障时,会尝试已知的解决方法,从而提高整体弹性。
4.3.0¶
新特性¶
添加了 Redfish v1.9 中引入的
Storage类的controllers属性,以取代 Redfish v1.13 中已弃用的storage_controllers。
错误修复¶
修复了潜在情况,底层
requests库中的异常可能会被传递到sushy,导致客户端应用程序可能无法理解发生了错误。现在,当出现任何属于requests库的RequestException的异常时,将返回 sushyConnectionError异常。