跳转到主内容

对于NFSv4 StorePool问题、我应收集哪些数据?

Views:
25
Visibility:
Public
Votes:
0
Category:
ontap-9
Specialty:
nas
Last Updated:

适用场景

  • ONTAP 9
  • NFSv4.x

问题解答

  1. EMS消息提供了大量有助于缩小故障排除范围的信息
    • 触发AutoSupport以提供此支持
    • 记下 报告错误的节点的节点管理lf
  2. 统计信息提供了一些指导、用于查看是否有任何存储分段已满以及与哪些实例关联
    • 什么是性能归档?它们是如何触发的?
    • 统计信息start 可用于在一段时间内收集可多次引用的样本。
    • 使用 REST API调用检查 storePool_*  计数器:
      •  curl -siku "admin:PASSWORD" https://Cluster-Mgmt-IP/api/cluster/counter/tables/nfs_v4_diag/rows/
        NOTE: use the response from above to run the second call per node to get the storePool counters like in example below.

        示例:

         curl -siku "admin: PASSWORD" https://Cluster-Mgmt-IP/api/cluster/counter/tables/nfs_v4_diag/rows/Cluster-01%3Cluster-01%3A67261b3
    • 与存储池相关的对象
      • nfsv4
      • nfsv4_diag
      • nfsv4_error
      • nfsv4_1_error
      • nfsv4_1_diag
      • nfsv4_1
      • sperror_error
      • 发芽
      • Spinhi
      • lmgr_ng
  3. 从调用存储池EMS的节点收集NFSv4锁定
    • vserver locks nfsv4 -inst 是节点范围。  因此、您必须通过ssh访问报告存储池警报的节点(节点管理lif)

警告

请务必使用节点管理IP替换报告EMS的节点。  这将是存放数据lf的节点的位置。

 

  1. 如果之前确定了一个顶级客户端、则在问题描述运行期间收集一个为该客户端筛选的数据包跟踪、并持续5分钟
  2. 如果已完成LIF迁移以缓解问题描述影响、请重新收集此数据。

追加信息

#!/bin/bash # Set the IP address of the node management server NODE_MANAGEMENT="NODE-MGMT-IP" # NODE_MANAGEMENT="10.2.1.3" # Set the username to use during authentication (Ideal to use pubkey auth) USERNAME="admin" # Directory to store the statistics STAT_DIR="statistics/$NODE_MANAGEMENT" mkdir -p "$STAT_DIR" # Check SSH connection if ! ssh -q -o BatchMode=yes -o ConnectTimeout=5 $USERNAME@$NODE_MANAGEMENT exit; then echo "SSH connection to $NODE_MANAGEMENT failed" exit 1 fi # Collect the statistics for NFSv4 and NFSv4_1 NFS_VERSIONS=("nfsv4" "nfsv4_1") NFS_TYPES=("" "_diag" "_error") for version in "${NFS_VERSIONS[@]}"; do for type in "${NFS_TYPES[@]}"; do ssh $USERNAME@$NODE_MANAGEMENT "set d -c off; rows 0; date; statistics show -object ${version}${type} -raw" >> "$STAT_DIR/stats_nfs.txt" done done # Collect the statistics for spinnp SPIN_TYPES=("spinnp_error" "spinhi" "spinnp") for type in "${SPIN_TYPES[@]}"; do ssh $USERNAME@$NODE_MANAGEMENT "set d -c off; rows 0; date; statistics show -object $type -raw" >> "$STAT_DIR/stats_spin.txt" done # Collect the statistics for lmgr_ng ssh $USERNAME@$NODE_MANAGEMENT "set d -c off; rows 0; date; statistics show -object lmgr_ng -counter files|hosts|owners|locks|*max -raw" >> "$STAT_DIR/stats_lmgr.txt" # Collect the statistics for vserver locks nfsv4 ssh $USERNAME@$NODE_MANAGEMENT "set d -c off; rows 0; date; vserver locks nfsv4 show -inst" >> "$STAT_DIR/locks.txt" 
NetApp provides no representations or warranties regarding the accuracy or reliability or serviceability of any information or recommendations provided in this publication or with respect to any results that may be obtained by the use of the information or observance of any recommendations provided herein. The information in this document is distributed AS IS and the use of this information or the implementation of any recommendations or techniques herein is a customer's responsibility and depends on the customer's ability to evaluate and integrate them into the customer's operational environment. This document and the information contained herein may be used solely in connection with the NetApp products discussed in this document.