锁管理器否决了一个或多个聚合的交还操作

适用于

  • ONTAP 9
  • ONTAP Select
  • Cloud Volumes ONTAP
  • SMB/CIFS
  • 非持续可用(CA)共享

问题描述

  • 节点重新启动后,其中一个数据聚合不会返回到其主节点:

::>storage failover show

                Takeover
Node       Partner     Possible State Description
-------------- -------------- -------- -------------------------------------
node1       node2       true    Connected to node2
node2       node1       true    Connected to node1, Giveback of
                             one or more SFO aggregates failed
2 entries were displayed.

  • 由于 SFO (存储故障转移)被 lock_manager 否决,节点处于部分交还状态:

::>storage failover show-giveback

               Partner
Node           Aggregate         Giveback Status
-------------- ----------------- ---------------------------------------------
node1
                                 No aggregates to give back
node2
               CFO Aggregates    Done
               aggr_node1        Failed: Operation was vetoed by
                                 lock_manager. Giveback failed during lock
                                 manager veto checks or the pre-commit phase.
                                 For veto failures, use the "vserver cifs
                                 session file show -hosting-aggregate
                                 <aggregate list> -continously-available No"
                                 command to view the open files that have
                                 CIFS sessions with non-CA locks established.
                                 <aggregate list> is the list of aggregates
                                 sent home as a result of the giveback
                                 operation. If lock state disruption for all
                                 existing non-CA locks is acceptable, retry
                                 the giveback operation by specifying
                                 "-override-vetoes true". Warning: Overriding
                                 vetoes to perform a giveback can be
                                 disruptive. For pre-commit failure, search
                                 for the lmgr.precommit.oplock.recall EMS
                                 variant for information on how to proceed
                                 using the "event log show -event
                                 lmgr.precommit.oplock.recall.*" command. If
                                 the error persists, contact technical
                                 support for assistance.
2 entries were displayed.

  • EMS 中可能会记录类似于以下内容的消息:

[node2: cf_giveback: gb.sfo.veto.lmgr.nonCA.locks:error]: Could not complete giveback because of non-CA locks on volume vol_node1@vserver:123a-123a-123a-123a-123a-1234567890ab SFO aggregate aggr_node1.

[node2: cf_giveback: sfo.sendhome.subsystemAbort:alert]: The giveback operation of 'aggr_DATA' was aborted by 'lock_manager'.
[node2: cf_giveback: ha.giveback.totalVetoChk:debug]: Total time taken to check whether to veto the giveback of aggregate 'aggr_DATA' was 5 msecs.

  • BlueXP Canvas 发出警报:

"Working Environment is degraded" on the "XXX" system

  • 由于部分交还,I/O 不会返回到原始节点。
  • System Manager 报告交还未完成:

Failed to initiate giveback. Run the "storage failover show-giveback" command for more information.

  • Cloud Manager(如果正在使用)报告:

Degraded - Show Details
HA cluster is not highly available.The node giveback was not completed.

发生原因

活跃的 SMB 会话仍然存在于聚合内卷上的共享上。

解决方案

交还选项

使用任何选项继续回馈。

    覆盖否决

    警告

    覆盖此否决会导致 SMB 锁定状态丢失,这可能会造成受影响的共享中断并可能造成数据丢失。

    1. 使用带有  storage failover giveback  命令的  override-vetoes  参数:

    ::>storage failover giveback -ofnode <node_name> -override-vetoes true

    1. 每个聚合在完成回馈后会恢复 I/O,这减少了其整体中断窗口。
    SMB应用程序关闭
    1. 正常关闭具有打开文件的 SMB 应用程序。
      1. 在大型组织中,这可能很难协调。
      2. 您也可以稍后在用户访问量较低时再尝试交还。
    2. 使用 storage failover giveback 命令执行正常交还。
    卷移动
    1. 将包含已打开文件的卷移动到其他聚合。
    2. 使用 storage failover giveback 命令执行正常交还。

    追加信息

    • 存储故障转移是对非 CA SMB 文件共享的中断性操作
    • 在这些环境中没有可以跨节点共享锁定状态的机制(例如持久句柄)
    • 因此,将聚合重新定位到合作伙伴节点会中断源节点上客户端与 SVM 之间的 SMB 会话
    • 会话锁定状态会丢失,必须在故障转移或回馈完成后在合作伙伴节点上重新建立

    没有找到想要的答案?

    上传日志让 AI 帮你诊断,或者在控制台里直接向 AI 提问。