使用 NVFAIL 监控和保护文件系统一致性
使用 volume modify
命令的 ` -nvfail` 参数, ONTAP 可以在系统启动时或在执行切换操作后检测非易失性 RAM ( NVRAM )的不一致性。此外,它还会向您发出警告,并保护系统免受数据访问和修改的影响,直到可以手动恢复卷为止。
如果 ONTAP 检测到任何问题,数据库或文件系统实例将停止响应或关闭。然后, ONTAP 会向控制台发送错误消息,提醒您检查数据库或文件系统的状态。您可以通过 NVFAIL 向数据库管理员发出警告,指出集群节点之间的 NVRAM 不一致可能会影响数据库有效性。
在故障转移或启动恢复期间 NVRAM 数据丢失后, NFS 客户端无法访问任何节点中的数据,直到清除 NVFAIL 状态为止。CIFS 客户端不受影响。
NVFAIL 如何影响对 NFS 卷或 LUN 的访问
如果 ONTAP 在启动时检测到 NVRAM 错误,发生 MetroCluster 切换操作或在卷上设置了 NVFAIL 选项的 HA 接管操作期间检测到 NVRAM 错误,则会设置 NVFAIL 状态。如果在启动时未检测到错误,则文件服务将正常启动。但是,如果检测到 NVRAM 错误或在发生灾难切换时强制执行 NVFAIL 处理,则 ONTAP 会停止数据库实例响应。
启用 NVFAIL 选项后,下表中所述的过程之一将在启动期间发生:
条件 |
那么 … |
||
ONTAP 未检测到 NVRAM 错误 |
文件服务正常启动。 |
||
ONTAP 检测到 NVRAM 错误 |
|
||
如果使用以下参数之一:
|
如果管理员不希望为将来可能的灾难切换操作强制执行 NVFAIL 处理,则可以在切换后取消设置
|
||
ONTAP 在包含 LUN 的卷上检测到 NVRAM 错误 |
该卷中的 LUN 将脱机。必须清除卷上的 |
用于监控数据丢失事件的命令
如果启用了 NVFAIL 选项,则在因 NVRAM 不一致或发生 MetroCluster 切换而导致系统崩溃时,您会收到通知。
默认情况下, NVFAIL 参数未启用。
如果您要 … |
使用此命令 … |
创建启用了 NVFAIL 的新卷 |
|
在现有卷上启用 NVFAIL |
|
显示当前是否已为指定卷启用 NVFAIL |
|
有关详细信息,请参见每个命令的手册页。
在切换后访问处于 NVFAIL 状态的卷
切换后,您必须通过重置 volume modify
命令的 ` in-nvfailed-state` 参数来清除 NVFAIL 状态,以取消客户端访问数据的限制。
数据库或文件系统不得正在运行或尝试访问受影响的卷。
设置 ` in-nvfailed-state` 参数需要高级权限。
-
使用 volume modify 命令并将 -in-nvfailed-state 参数设置为 false ,以恢复卷。
有关检查数据库文件有效性的说明,请参见特定数据库软件的文档。
如果数据库使用 LUN ,请查看相关步骤,以便在 NVRAM 出现故障后使主机可以访问这些 LUN 。
在切换后恢复处于 NVFAIL 状态的 LUN
切换后,主机将无法再访问处于 NVFAIL 状态的 LUN 上的数据。在数据库能够访问 LUN 之前,您必须执行许多操作。
数据库不得正在运行。
-
通过重置
volume modify
命令的 ` in-nvfailed-state` 参数,清除托管 LUN 的受影响卷上的 NVFAIL 状态。 -
使受影响的 LUN 联机。
-
检查 LUN 是否存在任何数据不一致问题并予以解决。
这可能涉及使用 SnapRestore 在存储控制器上执行基于主机的恢复或恢复。
-
恢复 LUN 后使数据库应用程序联机。