Yoga 系列 (4.0.0 - 4.1.x) 发布说明

4.1.7

错误修复

  • 正确处理在刷新身份验证令牌后重试请求时出现的错误。

4.1.6

错误修复

  • 修复了 sushy 在向 redfish 服务发出请求时,无法将读取/连接超时传递给请求的错误。这意味着,时机不巧的故障可能导致调用 sushy 的 Python 进程无限期地冻结。

  • 为所有请求类型(除了现有的 GET 方法之外),增加了对 iDRAC 错误代码 SYS518 和消息“iDRAC 当前无法显示任何信息,因为数据源不可用”的重试。这有助于修复在连续删除一组卷后,iDRAC 在删除每个卷后重新加载时出现的一种已知间歇性问题。

  • 修复了 iDRAC 固件版本 6.00.02.00 或更高版本在删除卷时出现的“不支持的参数名称 @Redfish.OperationApplyTime”错误。

  • 正确处理硬件在虚拟媒体操作中需要 TransferProtocolType 时出现的错误代码 Base.1.5.PropertyMissing

4.1.5

错误修复

  • 增加了一个额外的检查,用于 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.1.4

错误修复

  • 为了避免与最新版本固件出现超时,我们需要增加服务器端重试次数。例如,在 idrac 固件系列 5.x 中,操作之间的时间间隔几乎为 20 秒,而在 4.x 系列中为 10 秒。

4.1.3

错误修复

  • 更改了 PATCH 请求中的 eTag 处理方式:首先,使用原始 eTag。如果出现故障,如果提供的 eTag 是弱 eTag,则通过删除弱前缀将其转换为强格式。如果此方法不适用或失败,则最终尝试完全省略 eTag。通过这种方法,如果 BMC 按照预期处理 eTag,则不会应用任何解决方法,并且在出现故障时,会尝试已知的解决方法,从而提高整体弹性。

4.1.2

错误修复

  • 修复了潜在情况,底层 requests 库中的异常可能会被传递到 sushy,导致客户端应用程序可能无法理解发生了错误。现在,当出现任何属于 requests 库的 RequestException 的异常时,将返回 sushy ConnectionError 异常。

  • 修复了与某些 BMC 的 ETag 交互中不可靠的行为,因为机会性地使用压缩响应可能会导致 BMC 将 ETag 响应更改为“Weak”,这是可以预期的,因为 ETag 代表绝对的字节对字节响应一致性,而压缩无法可靠地保证该协议。引入客户端感知“Weak” ETag 可能不被服务器期望,并且服务器可能会拒绝响应,因为 ETag 在我们响应或与资源交互时不是“Strong” ETag。

    因此,请求不再提供响应压缩作为可接受的可能性,这总体影响很小,尤其与保持一致的 BMC 行为和交互的价值相比。

  • 修复了 sushy 连接器对象处理中的问题,在使用 basic 身份验证的 Sushy 客户端在凭据停止有效时不会引发 AccessError 异常。现在,我们显式检查是否正在使用 basic 身份验证,并在遇到 AccessError 时引发异常。

  • 修复了基于 Session 的身份验证刷新出现的问题,之前的刷新尝试失败可能导致回退到 Basic 身份验证并会静默失败。客户端库现在尝试重新进行身份验证。

  • 修复了当基于 Session 的身份验证刷新失败,并且由于 AccessError 无法重新建立时出现的静默失败问题。如果发生这种情况,现在将显式引发 AccessError 异常,而不是尝试回退到 Basic 身份验证。

  • 修复了在尝试执行身份验证操作时发生 ConnectionError 异常时,组合的 SessionBasic 身份验证支持回退到 Basic 身份验证的问题。 ConnectionError 异常表明网络传输问题,应进行调查。现在将引发 ConnectionError 异常。

  • 防止组合的 SessionBasic 身份验证支持在建立基于 Session 的身份验证后回退到 Basic 身份验证。这应被视为潜在的安全问题或需要潜在客户端重新初始化的环境更改。这被公开为 AccessError 异常。继续对 Sushy 库进行操作将尝试重新进行身份验证(如果可能)。

4.1.1

错误修复

  • 解决了由于某些 BMC(例如,在 Nokia 服务器上)缺少请求有效负载中的 TransferProtocolType 参数而导致的 virtualmedia 附加失败。这是通过在这些情况下添加重试更新的有效负载的 virtualmedia InsertMedia 的功能来实现的。

  • 修复了与需要使用 @Redfish.Settings 资源中指定的特定 SettingsObject URI 才能设置 BootSourceOverride 或类似属性的 BMC 不兼容的问题。例如,这在 Nokia 服务器上是必需的。