什么是 NFSv4 存储池,它们为什么存在?
适用于
- ONTAP 9
- NFSv4
问题解答
- ONTAP 将客户端连接的 NFSv4+ 状态信息存储在称为 storepools 的内存分配中
- 每个 storepool 是用于促进客户端连接的 NFSv4/4.1 状态工作的内存分配(池)的集合。
- 有 12 个不同的存储池对,包括各种区域:
| StorePool 名称 | 描述 |
|---|---|
| storePool_ByteLockAlloc | 字节范围锁定 |
| storePool_ClientAlloc | ClientIDs |
| storePool_CopyStateAlloc | 用于副本卸载相关工作 |
| storePool_DelegAlloc | 读取和写入的委派(客户端缓存) |
| storePool_DelegStateAlloc | 委派 StateID |
| storePool_LayoutAlloc | 布局(用于 pNFS 转介) |
| storePool_LayoutStateAlloc | 布局状态 ID |
| storePool_LockStateAlloc | 锁定状态 ID |
| storePool_OpenAlloc | 打开 |
| storePool_OpenStateAlloc | 打开 StateID |
| storePool_OwnerAlloc | 所有者 |
| storePool_StringAlloc | 存储为 ClientID 和 Owner 发送的不透明数据 |
- storePool 资源位于何处?
- 每个节点都有自己独特的 storePool 资源。
- 这些 storePool 资源存储在每个节点的网络刀片(nblade)中。
- 它们由将 LIF 本地安装到节点的客户端使用。
- storePool 资源与锁定管理器对象有何不同?
- 这些 storePool 资源专门用于执行 NFSv4/4.1 状态工作,它们不会跟踪文件系统层(dblade)上的打开/锁定文件。
- 锁定管理器对象负责文件系统打开/锁定跟踪,包括解决打开/锁定冲突。
- storePool 耗尽的发生与锁定管理器对象耗尽有何不同?
- storePool耗尽发生在安装 LIF 的节点的网络层(nblade)。
- 这是用于跟踪状态的 NFSv4/4.1 对象的耗尽。
- 锁定管理器耗尽是负责在文件系统层(Data blade 或 dblade)打开/锁定文件的对象耗尽。
- 锁定管理器耗尽将影响发生耗尽的节点上的卷。
- 监控 storePool 消耗量:
- storePool 对象可以通过
statistics计数器和警报警告来监控,当特定的"池"变满时会发出警告。 - 池分配数量是动态的,应该随着客户端打开和关闭文件而不断变化。
- NetApp 能够通过命令手动检索计数器,可以通过脚本进行警报。
- 在 ONTAP 9.2 及更高版本中,当 storePool 资源达到其最大阈值的 80% 时,存在 EMS 事件以发出警报。
- storePool 对象可以通过
- 特定客户如何可能引发问题?
- 在某些情况下,客户端不会以 ONTAP 节点预期的方式关闭其 OPEN。
- 发生这种情况时,客户端没有意识到它仍然具有分配的 OPEN。
- 在这种情况下,服务器将不会删除 OpenState 对象,并且资源永远不会返回到池中。
- 如果此行为继续,当客户端行为孤立服务器上的资源时,可能会发生 storePool 耗尽。
- 转储 nfsv4 锁可以显示哪个客户端正在占用 storePool 中的所有分配。
- 一旦此客户端重新启动,ONTAP 将释放与该客户端关联的 storePool 资源。
- 客户端通过 NFSv4 在节点 A 上挂载 LIF 和在节点 B 上挂载 LIF。这两个挂载都访问节点 A 上的卷。节点 A 上的 storePool 资源耗尽。哪个挂载将受到影响?
- 仅节点 A 上的连接将受到影响。
- 这些分配位于 ONTAP 的"网络"层(nblade)上,该节点用于连接。
- 卷的位置与问题无关。
| 物理内存范围 | 限制来源 | 最大化合物 | 最大客户端对象数 | 最大所有者对象 | 最大打开状态对象数 |
最大委托状态对象 |
最大锁定状态对象 |
最大布局状态对象 |
最大复制状态对象 |
最大开放对象数 |
最大委托对象数 |
最大 ByteLock 对象数 |
最大布局对象数 |
最大 LayoutLock 对象数 |
最大字符串对象数 |
最大会话数 |
最大执行次数 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 - 2 GB | 静态表 | 1,500,000 | 1,000 | 6,000 | 26,000 | 26,000 | 26,000 | 26,000 | 10,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 26,000 | 1,000 | 512,000 |
| 2 - 4 GB | 静态表 | 15,000,000 | 12,000 | 128,000 | 512,000 | 512,000 | 512,000 | 512,000 | 10,000 | 512,000 | 512,000 | 512,000 | 512,000 | 512,000 | 256,000 | 15,000 | 512,000 |
| 4 - 15 GB | 静态表 | 15,000,000 | 12,000 | 128,000 | 512,000 | 512,000 | 512,000 | 512,000 | 10,000 | 512,000 | 512,000 | 512,000 | 512,000 | 512,000 | 256,000 | 15,000 | 512,000 |
| 15 - 23 GB | 静态表 | 15,000,000 | 12,000 | 128,000 | 512,000 | 512,000 | 512,000 | 512,000 | 10,000 | 512,000 | 512,000 | 512,000 | 512,000 | 512,000 | 256,000 | 15,000 | 750,000 |
| 23 - 31 GB | 静态表 | 150,000,000 | 100,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 10,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 100,000 | 1,500,000 |
| 31 - 63 GB | 静态表 | 150,000,000 | 100,000 | 1,000,000 | 1,000,000 | 1,000,000 | 2,000,000 | 1,000,000 | 10,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 100,000 | 1,500,000 |
| 63 - 127 GB | 静态表 | 150,000,000 | 100,000 | 1,000,000 | 1,000,000 | 1,000,000 | 4,000,000 | 1,000,000 | 10,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 100,000 | 1,500,000 |
| 127 - 255 GB | 静态表 | 150,000,000 | 100,000 | 1,000,000 | 1,000,000 | 1,000,000 | 4,000,000 | 1,000,000 | 10,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 1,000,000 | 100,000 | 1,500,000 |
| 超过 255 GB(示例:300 GB) | 每 GB 缩放 | 150,000,000 | 300,000 | 1,800,000 | 9,000,000 | 6,000,000 | 6,000,000 | 3,000,000 | 3,000,000 | 9,000,000 | 6,000,000 | 7,800,000 | 3,000,000 | 3,000,000 | 3,000,000 | 300,000 | 153,600,000 |
| 超过 255 GB(示例:512 GB) | 每 GB 缩放 | 150,000,000 | 512,000 | 3,072,000 | 15,360,000 | 10,240,000 | 10,240,000 | 5,120,000 | 5,120,000 | 15,360,000 | 10,240,000 | 13,312,000 | 5,120,000 | 5,120,000 | 5,120,000 | 512,000 | 262,144,000 |
| 超过 255 GB(示例:1 TB) | 每 GB 缩放 | 150,000,000 | 1,000,000 | 6,000,000 | 30,000,000 | 20,000,000 | 20,000,000 | 10,000,000 | 10,000,000 | 30,000,000 | 20,000,000 | 26,000,000 | 10,000,000 | 10,000,000 | 10,000,000 | 1,000,000 | 512,000,000 |
追加信息