This article provides information on the permissions, connection types, and commands used to complete a Live Optics collection for a NetApp array or cluster.
NOTES:
- Users connecting to the NetApp array/cluster must have admin privileges.
- Live Optics supports collections from all NetApp versions to 9.14.1.
- Inventory, capacity, and configuration details are collected using an SSH connection over port 22 (by default).
- Performance data collections use web access to the nodes over port 443.
7-Mode
7-Mode features two nodes (primary and partner), which are configured as a high availability (HA) pair. The Live Optics collector attempts to connect to the primary node first, before attempting to connect to the HA node. It then performs the same data collection from both nodes. If the connection to the HA node is unsuccessful, the collection does not fail as the HA connection is optional. A message is displayed to let users know the HA node could not be reached and data could not be collected.
7-Mode Inventory Collection Commands
hostname
version
options
cf partner
sysconfig -a
df
df -S
df -A
df -A -S
aggr show_space
vol status
options httpd
vol status -r
disk show
lun show (optional)
7-Mode Performance Collection Commands
The Live Optics collector establishes a HTTP connection to the NetApp cluster IP address, authenticates the NetApp admin credentials with basic authentication, and sends a POST API request to the cluster using http://{Host}/servlets/netapp.servlets.admin.XMLrequest_filer.
1. volume-list-info lists the volumes and nodes from which performance data is collected.
<netapp version="1.15">
<volume-list-info>
<verbose>1</verbose>
</volume-list-info>
</netapp>
2. perf-object-get-instances obtains volumes performance details.
<netapp version="1.15">
<perf-object-get-instances>
<counters>
<counter>instance_name</counter>
<counter>node_name</counter>
<counter>instance_uuid</counter>
<counter>vserver_name</counter>
<counter>vserver_uuid</counter>
<counter>parent_aggr</counter>
<counter>cifs_read_data</counter>
<counter>cifs_write_data</counter>
<counter>cifs_other_data</counter>
<counter>cifs_read_ops</counter>
<counter>cifs_write_ops</counter>
<counter>cifs_other_ops</counter>
<counter>cifs_read_latency</counter>
<counter>cifs_write_latency</counter>
<counter>cifs_other_latency</counter>
<counter>nfs_read_data</counter>
<counter>nfs_write_data</counter>
<counter>nfs_other_data</counter>
<counter>nfs_read_ops</counter>
<counter>nfs_write_ops</counter>
<counter>nfs_other_ops</counter>
<counter>nfs_read_latency</counter>
<counter>nfs_write_latency</counter>
<counter>nfs_other_latency</counter>
<counter>san_read_data</counter>
<counter>san_write_data</counter>
<counter>san_other_data</counter>
<counter>san_read_ops</counter>
<counter>san_write_ops</counter>
<counter>san_other_ops</counter>
<counter>san_read_latency</counter>
<counter>san_write_latency</counter>
<counter>san_other_latency</counter>
<counter>read_data</counter>
<counter>write_data</counter>
<counter>read_ops</counter>
<counter>write_ops</counter>
<counter>other_ops</counter>
<counter>read_latency</counter>
<counter>write_latency</counter>
<counter>other_latency</counter>
</counters>
<objectname>volume</objectname>
</perf-object-get-instances>
</netapp>
3. CpuPerformanceRequest collects CPU performance information for the nodes.
<netapp version="1.15">
<perf-object-get-instances>
<counters>
<counter>cpu_elapsed_time</counter>
<counter>avg_processor_busy</counter>
</counters>
<objectname>system</objectname>
</perf-object-get-instances>
</netapp>
C-Mode Inventory Collection Commands
hostname
version
options
system node show
df
df -S
df -A
df -A -S
volume show
disk show
node external-cache show
system feature-usage show-summary
system services web show
set -confirmations off
set -rows 0
system node show -fields node
run -node {node} -command "vol status"
cluster image show
lun show
C-Mode Performance Collection Commands
The Live Optics collector establishes a HTTPS connection to the NetApp cluster IP address, authenticates the NetApp admin credentials with basic authentication, and sends a POST API request to the cluster using HTTP XML POST Call on https://{host}/servlets/netapp.servlets.admin.XMLrequest_filer.
1. volume-get-iter lists the volumes and nodes from which performance data is collected.
<netapp version="1.21">
<volume-get-iter>
<max-records>65535</max-records>
</volume-get-iter>
</netapp>
The output is displayed as follows:
2. perf-object-get-instance is the API call the Live Optics collector issues for each Volume UUID retrieved in Step 1.
<netapp version="1.21">
<perf-object-get-instances>
<counters>
<counter>instance_name</counter>
<counter>node_name</counter>
<counter>instance_uuid</counter>
<counter>vserver_name</counter>
<counter>vserver_uuid</counter>
<counter>parent_aggr</counter>
<counter>cifs_read_data</counter>
<counter>cifs_write_data</counter>
<counter>cifs_other_data</counter>
<counter>cifs_read_ops</counter>
<counter>cifs_write_ops</counter>
<counter>cifs_other_ops</counter>
<counter>cifs_read_latency</counter>
<counter>cifs_write_latency</counter>
<counter>cifs_other_latency</counter>
<counter>nfs_read_data</counter>
<counter>nfs_write_data</counter>
<counter>nfs_other_data</counter>
<counter>nfs_read_ops</counter>
<counter>nfs_write_ops</counter>
<counter>nfs_other_ops</counter>
<counter>nfs_read_latency</counter>
<counter>nfs_write_latency</counter>
<counter>nfs_other_latency</counter>
<counter>san_read_data</counter>
<counter>san_write_data</counter>
<counter>san_other_data</counter>
<counter>san_read_ops</counter>
<counter>san_write_ops</counter>
<counter>san_other_ops</counter>
<counter>san_read_latency</counter>
<counter>san_write_latency</counter>
<counter>san_other_latency</counter>
<counter>read_data</counter>
<counter>write_data</counter>
<counter>read_ops</counter>
<counter>write_ops</counter>
<counter>other_ops</counter>
<counter>read_latency</counter>
<counter>write_latency</counter>
<counter>other_latency</counter>
</counters>
<instance-uuids>
<instance-uuid>{volume.Id}</instance-uuid>
<instance-uuid>{volume.Id}</instance-uuid>
<instance-uuid>{volume.Id}</instance-uuid>
</instance-uuids>
<objectname>volume</objectname>
</perf-object-get-instances>
</netapp>
3. CpuPerformanceRequest collects CPU performance information for the nodes identified in Step 1.
<netapp version="1.21">
<perf-object-get-instances>
<counters>
<counter>processor_busy</counter>
<counter>processor_elapsed_time</counter>
</counters>
<instances>
<instance>{node_name}</instance>
<instance>{node_name}</instance>
</instances>
<objectname>processor:node</objectname>
</perf-object-get-instances>
</netapp>