Dell Unity:如何在 SP 维护活动期间管理写入高速缓存
Summary: 本文介绍在 Unity Storage Processor (SP) 维护活动期间管理写入高速缓存(禁用、启用、检查、刷新)的最佳做法。(用户可纠正)
Instructions
提醒:戴尔之前建议在无中断升级期间禁用写入高速缓存。戴尔修订了本指南。除了在 NDU 之前主动重新启动(如果您选择这样做)之外, 写入高速缓存应在 NDU 期间保持 启用 状态。
SP 硬件维护活动定义为更换以下任何部件:
| 部件 |
|---|
| DIMM |
| SFP |
| SP |
| BBU |
| I/O 模块 |
| M.2 SATA |
| DPE 机箱 |
| 风扇 |
| 夹层 |
| DPE PSU — 电源装置 |
本文中提供的用于在任何计划的 SP 硬件维护活动之前手动禁用写入高速缓存的步骤适用于 Unity OE 5.3 及更低版本。在运行 OE 5.4 及更高版本的 Unity 阵列上将 SP 置于服务模式时,会自动禁用写入高速缓存。
在执行以下升级或升级前活动之前,禁用写入高速缓存也是建议的最佳实践:
| 活动 |
|---|
| 就地 (DIP) 升级。 |
| NDU 之前的主动 SP 重新启动 |
本文中提供的用于在任何计划的升级活动之前手动禁用写入高速缓存的步骤适用于 Unity OE 版本 5.1 或更高版本。在任何 Unity OE 版本上执行升级时,Unity 写入高速缓存不会自动禁用。
这 svc_cache 该命令可用于禁用写入高速缓存、启用写入高速缓存,以及使用三个开关显示写入高速缓存状态:
--disable --enable --get如果您主要使用 CIFS/NFS 来写入备份,则应使用
svc_cache 命令与 UnityOS 版本 5.2 及更高版本捆绑在一起。
对于 Unity OE 5.0 和 5.1,
svc_cache 命令必须由戴尔技术支持或授权服务提供商手动加载到 Unity 系统上。这样,无需 root shell 即可完成高速缓存更改,并获得更高级别的支持。
提醒:根据所使用的浏览器,字体可能会使命令中的 --(双连字符)失真,尤其是粗体行。
在
svc_cache 命令前面是 --(双连字符),而不是单个 -。
如果将本文中的粗体命令复制到记事本,则双连字符的定义会更多。
这
svc_cache 下面将更详细地解释此处列出的参数:
svc_cache --force-enableCacheOperations svc_cache --get svc_cache --disable svc_cache --enable svc_cache --disableCacheOperations
确定 svc_cache 命令已安装:
如果您运行 svc_cache 命令,您可以确定软件包是否已安装。它的响应方式不同,具体取决于 svc_cache 命令已随新命令一起安装。要对此进行测试,请使用 svc_cache --get 命令指定可选的 spindle-group 参数,您可以实现这一点。
如果软件包尚未安装:
运行 svc_cache --get 命令返回命令的用法:
19:44:58 service@APM00123456789 spa:~/user# svc_cache --get This script displays and clears the Cache Dirty or Cache Lost LUNs(CDCA) on this system. Usage: svc_cache [<qualifiers>]如果发生这种情况,请联系 戴尔技术支持 或您的授权服务提供商,并引用此戴尔文章 ID。
如果已安装软件包(已与 OS 5.2 及更高版本捆绑在一起):
运行 svc_cache --get 命令生成两个结果之一,具体取决于命令是否已解锁。
- 如果软件包已安装但命令未启用,系统将返回错误:
19:44:58 service@APM00123456789 spa:~/user# svc_cache --get --- ERROR: This option can only be used after enabling cache operations.
svc_cache --force-enableCacheOperations
- 如果软件包已安装并且命令集已启用,则
svc_cache --get命令按预期返回高速缓存状态。继续执行下一步以禁用写入高速缓存。
禁用写入高速缓存:
- 获取写入高速缓存的状态:
svc_cache --get(状态 3 已启用,状态 7 处于禁用或未知状态,状态 8 已禁用)。如果已禁用写入高速缓存,则无需执行进一步作。 - 禁用写入高速缓存:
svc_cache --disable(该命令只需在一个 SP 上运行,即可禁用两个 SP 上的高速缓存)。 - 确认写入高速缓存已禁用: s
svc_cache --get
写入高速缓存状态:3 (enabled)
Write Cache State:7 (unknown)
Write Cache State:8(已禁用)
请参阅“其他说明”部分中的更多详细输出示例。
目标是达到 8 (disabled) 状态。如果输出 svc_cache --get 是 7 的状态,这意味着脏页仍在刷新。重新运行 svc_cache --get 再次执行该命令,直到状态为 8(已禁用)。
如果禁用需要花费一些时间,您还可以使用指标来观察并确保刷新或刷新所有脏缓存页面:
uemcli /metrics/value/rt -path sp.*.blockCache.global.summary.dirtyBytes show -interval 5 -count 5
一旦 svc_cache --get 显示状态 8,或脏页显示 0,您可以继续您的活动。
启用写入高速缓存:
当两个 SP 都重新联机时:
- 获取写入高速缓存的状态:
svc_cache --get(状态 3 是已启用,状态 7 是正在禁用或未知,状态 8 是已禁用)。 - 启用写入高速缓存:
svc_cache --enable(只需在一个 SP 上运行该命令,即可在两个 SP 上启用高速缓存) - 确认已启用写入高速缓存:s
svc_cache --get(状态 3 已启用)。
最后,当您完成活动后,您应该禁用写入高速缓存命令:
svc_cache --disableCacheOperations
Additional Information
有关写入高速缓存和 Unity 无中断升级 (NDP) 的信息:
首先,戴尔强烈建议 您从我们的 SolVe 步骤生成器 中打印更新的过程(客户需要登录戴尔支持),并在开始之前参考指示的文章。这可确保您获得有关升级过程中可能遇到的任何潜在问题的最新信息,从而为您提供获得成功结果的最佳机会。
简而言之, Dell Technologies 建议为 NDU作禁用写入高速缓存的唯一时间是在 NDU 之前执行主动 SP 重新启动时。在此方案之后, 写入高速缓存应在 NDU 期间保持启用状态。
输出示例:
svc_cache --get 显示尚未安装命令集:
19:44:58 service@APM00123456789 spa:~/user# svc_cache --get This script displays and clears the Cache Dirty or Cache Lost LUNs(CDCA) on this system. Usage: svc_cache [<qualifiers>]
svc_cache --get 显示尚未启用命令集:
19:44:58 service@APM00123456789 spa:~/user# svc_cache --get
--- ERROR: This option can only be used after enabling cache operations.
如果发生这种情况,您必须使用以下命令激活命令:
svc_cache --force-enableCacheOperations
svc_cache --get 显示写入高速缓存已启用:
16:28:43 service@APM00123456789 spa:~/user# svc_cache --get execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c get_cache Get Cache Info. SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 System Cache Information Write Cache State: 3 (enabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 System Cache Information Write Cache State: 3 (enabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:28:48 service@APM00123456789 spa:~/user# svc_cache --get showing write cache is disabled: 16:29:00 service@APM00123456789 spa:~/user# svc_cache --get execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c get_cache Get Cache Info. SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 System Cache Information Write Cache State: 8 (disabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 System Cache Information Write Cache State: 8 (disabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:31:30 service@APM00123456789 spa:~/user#
svc_cache --disable:
16:28:48 service@APM00123456789 spa:~/user# svc_cache --disable execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c set_cache -o disable -t write currentArg 3 argc 7 currentArg 3 argc 7 Set Write Cache Disabled SP A(0). #:2022-03-04 16:29:00.035 GMT :U:( 1:1):00007f7168fd0280:25459:Unknown:: TLDflarecons:TLDconfig.cpp :09584=>TLDconfig_SetCacheBuildTree Enable 0, Type 2, SP = 0 #:2022-03-04 16:29:00.035 GMT :U:( 1:1):00007f7168fd0280:25459:Unknown:: TLDconfig: :TLDconfig.cpp :09592=>Set cache state to disabled - 8 SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 c4admintool: -TAG_REQUEST(0x10016) c4admintool: --TAG_OPERATION(0x10017) <snip> c4admintool: -------TAG_WRITE_CACHE(0x102ca) c4admintool: --------TAG_STATE(0x10079) - 8 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:29:00 service@APM00123456789 spa:~/user#
svc_cache --enable:
16:32:43 service@APM00123456789 spa:~/user# svc_cache --enable execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c set_cache -o enable -t write currentArg 3 argc 7 currentArg 3 argc 7 Set Write Cache Enabled SP A(0). #:2022-03-04 16:32:47.905 GMT :U:( 0:1):00007f8011b49280:09830:Unknown:: TLDflarecons:TLDconfig.cpp :09584=>TLDconfig_SetCacheBuildTree Enable 1, Type 2, SP = 0 #:2022-03-04 16:32:47.905 GMT :U:( 0:1):00007f8011b49280:09830:Unknown:: TLDconfig: :TLDconfig.cpp :09589=>Set cache state to enabled - 3 SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 c4admintool: -TAG_REQUEST(0x10016) c4admintool: --TAG_OPERATION(0x10017) <snip> c4admintool: -------TAG_WRITE_CACHE(0x102ca) c4admintool: --------TAG_STATE(0x10079) - 3 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:32:48 service@APM00123456789 spa:~/user#
svc_cache --get 显示写入高速缓存已启用:
16:33:43 service@APM00123456789 spa:~/user# svc_cache --get execute sptool -i sptool -i output: SPA current SP-A, other SP-B execute: c4admintool -c get_cache Get Cache Info. SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 System Cache Information Write Cache State: 3 (enabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:00:00:00:00:00:00:00:02 System Cache Information Write Cache State: 3 (enabled) SP WWID: wwn = 06:00:00:00:05:00:00:00:01:00:00:01:01:00:00:02 ** c4admintool_main: exit CSX_STATUS_SUCCESS 16:33:48 service@APM00123456789 spa:~/user#