Supported Target Versions |
---|
Target device version 12.3.X |
REST API version using 12.3.X |
Application Version and Upgrade Details
Application Version | Bug fixes / Enhancements |
---|---|
2.0.1 | Resource Display Order Changes in search UI. |
2.0.0 | Added support for Full Discovery and API Statistics metric. |
1.0.3 | Provided fix for PI-26481 and added support for custom macros. |
Click here to view the earlier version updates
Application Version | Bug fixes / Enhancements |
---|---|
1.0.2 | Added support for App Failure Notifications in case of failures in discovery and monitoring. |
1.0.1 | MOID change for Node and Drive for App Migration. |
1.0.0 | Supported netapp-solidfire integration through rest API’s. |
Introduction
NetApp SolidFire overview
SolidFire storage is an interconnection of hardware and software designed for complete automation and management of an entire SolidFire storage system.
NetApp SolidFire Architecture
The following diagram shows the basic layout of the SolidFire Storage System and how it connects to a network:
Cluster, Nodes, and Drives
Cluster
A cluster is the hub of a SolidFire Storage System and is made up of a collection of nodes. You must have at least four nodes in a cluster (five or more nodes are recommended) in order for SolidFire storage efficiencies to be realized. A cluster appears on the network as a single logical group and can then be accessed as block storage.
Creating a new cluster initializes a node as communications owner for a cluster and establishes network communications for each node in the cluster. This process is performed only once for each new cluster.
One can increase the scalability of the cluster by additional nodes upto 100. Adding additional nodes doesn’t cause any interruption of the service and the cluster automatically uses the performance and capacity of the new node.
The following diagram illustrates the basic Ip Address layout for the cluster.
Administrators and hosts can access the cluster using virtual IP addresses. Any node in the cluster can host the virtual IP addresses. The Management Virtual IP (MVIP) enables cluster management through a 1GbE connection, while the Storage Virtual IP (SVIP) enables host access to storage through a 10GbE connection.
These virtual IP addresses enable consistent connections regardless of the size or makeup of a SolidFire cluster. If a node hosting a virtual IP address fails, another node in the cluster begins hosting the virtual IP address.
Nodes
Nodes are individual hardware components that are grouped into a cluster to be accessed as block-storage. There are two types of nodes in the SolidFire Storage system. They are Storage Nodes and Fibre-Channel Nodes.
Storage Nodes
A SolidFire storage node is a server containing a collection of drives that communicate with each other through the Bond10G network interface. Drives in the node contain block and metadata space for data storage and data management.
Storage nodes have the following characteristics:
- Each node has a unique name. If a node name is not specified by an administrator, it defaults to SF-XXXX, where XXXX is four random characters generated by the system.
- Each node has its own high-performance non-volatile random access memory (NVRAM) write cache to improve overall system performance and reduce write latency.
- Each node is connected to two networks, storage and management, each with two independent links for redundancy and performance. Each node requires an IP address on each network.
- You can create a cluster with new storage nodes, or add storage nodes to an existing cluster to increase storage capacity and performance.
- You can add or remove nodes from the cluster at any time without interrupting service.
Fibre Channel(FC) Nodes
SolidFire Fibre Channel nodes provide connectivity to a Fibre Channel switch, which you can connect to Fibre Channel clients. Fibre Channel nodes act as a protocol converter between the Fibre Channel and iSCSI protocols; this enables you to add Fibre Channel connectivity to any new or existing SolidFire cluster.
Fibre Channel nodes have the following characteristics:
- Fibre Channel switches manage the state of the fabric, providing optimized interconnections.
- The traffic between two ports flows through the switches only; it is not transmitted to any other port.
- Failure of a port is isolated and does not affect operation of other ports.
- Multiple pairs of ports can communicate simultaneously in a fabric.
Drives
A storage node contains one or more physical drives that are used to store a portion of the data for the cluster. The cluster utilizes the capacity and performance of the drive after the drive has been successfully added to a cluster.
A storage node contains two types of drives:
Volume metadata drives- volume metadata drives store the compressed information that defines each volume, clone, or snapshot within a cluster. The total metadata drive capacity in the system determines the maximum amount of storage that can be provisioned as volumes. The maximum amount of storage that can be provisioned is independent from how much data is actually stored on the block drives of the cluster. Volume metadata drives store data redundantly across a cluster using Double Helix data protection.
Note: Some system event log and error messages refer to volume metadata drives as slice drives.
Block drives- block drives store the compressed, de-duplicated data blocks for server application volumes. Block drives make up a majority of the storage capacity of the system. The majority of read requests for data already stored on the SolidFire cluster, as well as requests to write data, occur on the block drives. The total block drive capacity in the system determines the maximum amount of data that can be stored, taking into account the effects of compression, thin provisioning, and de-duplication.
SolidFire Element OS Features
The SolidFire Element Operating System (OS) comes preinstalled on each node. SolidFire Element OS includes the following features:
- SolidFire Helix™ self-healing data protection
- Always on, inline, real-time deduplication
- Always on, inline, real-time compression
- Always on, inline, reservation-less thin provisioning
- Fibre Channel node integration
- Management Node
- LDAP capability for secure login functionality
- Guaranteed volume level Quality of Service (QoS): Minimum IOPS, Maximum IOPS, IOPS burst control
- nstant, reservation-less deduplicated cloning
- Volume snapshots: i) Snapshots of individual volumes, ii) Scheduling snapshots of a volume or group of volumes, iii) Consistent snapshots of a group of volumes, iv) Cloning multiple volumes individually or from a group snapshot
- Integrated Backup and Restore for volumes
- Real-Time Replication for clusters and volumes
- Native multi-tenant (VLAN) management and reporting: i) Virtual Routing and Forwarding (VRF), ii) Tagged Networks
- Proactive Remote Monitoring through Active IQ
- Complete REST-based API management
- Granular management access/role-based access control
- Virtual Volumes (VVols) support for VMware® vSphere®
- Volume and system level performance and data usage reporting
- VASA support
- VMware vSphere® (VAAI) support
Use Cases
Discovery Use Cases:
- Provides resource visibility to the administrator to view and manage resources available (Ex: Cluster, Nodes, Drives, Volume Accounts and Volumes) under different resource types
- Publishes relationships between resources to have a topological view and ease of maintenance
Monitoring Use Cases:
- Provides metrics related to Memory Utilization, Performance Utilization and so on for different resources
- Concern alerts will be generated for each metric to notify the administrator regarding the issue with the resource.
Prerequisites
- OpsRamp Nextgen Gateway supported version 14.0.0 and above.
- OpsRamp Classic Gateway supported version 14.0.0 and above.
Note: OpsRamp recommends using the latest Gateway version for full coverage of recent bug fixes, enhancements, etc.
Resource Hierarchy
Cluster
— Nodes
— Drive
— Volumes Accounts
— Volumes
Default monitoring configurations
NetApp SolidFire application has default Global Device Management Policies, Global Templates, Global Monitors and Global metrics in OpsRamp. You can customize these default monitoring configurations as per your business use cases by cloning respective global templates and global Device Management Policies. OpsRamp recommends performing the below activity before installing the app to avoid noise alerts and data.
Default Global Device Management Policies
OpsRamp has a Global Device Management Policy for each Native Type of NetApp SolidFire. You can find those Device Management Policies at Setup > Resources > Device Management Policies, search with suggested names in global scope. Each Device Management Policy follows below naming convention:
{appName nativeType - version}
Ex: netapp-solidfire NetApp SolidFire Cluster - 1 (i.e, appName = netapp-solidfire, nativeType = NetApp SolidFire Cluster, version = 1)
Default Global Templates
OpsRamp has a Global Template for each Native Type of NetApp SolidFire. You can find those templates at Setup > Monitoring > Templates, search with suggested names in global scope. Each template follows below naming convention:
{appName nativeType 'Template' - version}
Ex: netapp-solidfire NetApp SolidFire Cluster Template - 1 (i.e, appName = netapp-solidfire, nativeType = NetApp SolidFire Cluster, version = 1)
Default Global Monitors
OpsRamp has a Global Monitors for each Native Type which has monitoring support. You can find those monitors at Setup > Monitoring > Monitors, search with suggested names in global scope. Each Monitors follows below naming convention:
{monitorKey appName nativeType - version}
Ex: SolidFire Cluster Monitor netapp-solidfire NetApp SolidFire Cluster 1 (i.e, monitorKey = SolidFire Cluster Monitor, appName = netapp-solidfire, nativeType = NetApp SolidFire Cluster, version = 1)
Application Migration
Check for the gateway version as a prerequisite step - classic gateway-12.0.1 and above.
Notes:- You only have to follow these steps when you want to migrate from sdk 1.0 to sdk 2.0.
- For first time installation below steps are not required.
- Application name should be the same.
- Disable all installed integrations configurations for that application. This is to make sure no discovery and monitoring requests are processed.
- Install and Add the configuration to that sdk 2.0 application.
Note: refer to Configure and Install the NetApp SolidFire Integration & View the Netapp SolidFire Details sections of this document.
Once all discoveries are completed with the sdk 2.0 applicaion, follow any one of the approaches.
- Direct uninstallation of the sdk1.0 adaptor application through the uninstall API with skipDeleteResources=true in the post request
End-Point: https://{{host}}/api/v2/tenants/{tenantId}/integrations/installed/{installedIntgId}
Request Body:
{
"uninstallReason": "Test",
"skipDeleteResources": true
}
(OR)
- Delete the configuration one by one through the Delete adaptor config API with the request parameter as skipDeleteResources=true
End-Point:
https://{{host}}/api/v2/tenants/{tenantId}/integrations/installed/config/{configId}?skipDeleteResources=true.
- Finally, uninstall the adaptor application through API with skipDeleteResources=true in the post request.
End-Point:
https://{{host}}/api/v2/tenants/{tenantId}/integrations/installed/{installedIntgId}
Request Body:
{
"uninstallReason": "Test",
"skipDeleteResources": true
}
Supported Metrics
Click here to view the supported metrics
Component | Metric Name | Metric Display Name | Units | Application Version | Description |
---|---|---|---|---|---|
NetApp SolidFire Cluster | solidfire_cluster_Reads | SolidFire Cluster ReadOps | rops | 1.0.0 | Number of read operations performed on the cluster |
solidfire_cluster_Writes | SolidFire Cluster WriteOps | wops | 1.0.0 | Number of write operations performed on the cluster | |
solidfire_cluster_ReadBytes | SolidFire Cluster ReadBytes | Bps | 1.0.0 | Number of bytes read on the cluster | |
solidfire_cluster_WriteBytes | SolidFire Cluster WriteBytes | Bps | 1.0.0 | Number of bytes written to the cluster | |
solidfire_cluster_PercentageUtilization | SolidFire Cluster Utilization Percentage | percent | 1.0.0 | Percent utilization of the clusters bandwidth | |
solidfire_cluster_TotalCapacity | SolidFire Cluster Total Capacity | GB | 1.0.0 | The physical capacity of the cluster, measured in GB | |
solidfire_cluster_UsedCapacity | SolidFire Cluster Used Capacity | GB | 1.0.0 | The amount of space used on the cluster,measured in GB | |
solidfire_cluster_ClusterPairStatus | SolidFire Paired Cluster Status | 1.0.0 | The status of the connection between the paired clusters. Possible values: Unconfigured(0), Connected(1), Misconfigured(2) and Disconnected(3) | ||
netapp_solidfire_APIStats | NetApp Solidfire API Statistics | 2.0.0 | Provides the number of API calls made within the frequency and resources | ||
NetApp SolidFire Node | solidfire_node_ClusterBytesIn | Node Cluster Bytes In | Bps | 1.0.0 | Bytes received on the cluster VLAN |
solidfire_node_ClusterBytesOut | Node Cluster Bytes Out | Bps | 1.0.0 | Bytes sent on the cluster VLAN | |
solidfire_node_ClusterNetworkUtilization | Cluster Network Utilization | percent | 1.0.0 | Cluster Network Utilization | |
solidfire_node_StorageNetworkUtilization | Storage Network Utilization | percent | 1.0.0 | Storage Network Utilization | |
solidfire_node_StorageBytesIn | Node Storage Bytes In | Bps | 1.0.0 | Bytes received on the storage VLAN | |
solidfire_node_StorageBytesOut | Node Storage Bytes Out | Bps | 1.0.0 | Bytes sent on the storage VLAN | |
solidfire_node_MgmtBytesIn | Node Management Bytes In | Bps | 1.0.0 | Bytes received on the management VLAN | |
solidfire_node_MgmtBytesOut | Node Management Bytes Out | Bps | 1.0.0 | Bytes sent on the management VLAN | |
solidfire_node_CpuUtilization | Node CPU Utilization | percent | 1.0.0 | Node CPU percent utilization | |
solidfire_node_UsedMemory | Node Memory Used | GB | 1.0.0 | Total memory used in GB | |
NetApp SolidFire Volume Account | solidfire_volume_account_Status | SolidFire Volume Account Status | 1.0.0 | Returns the current status of the Volume Account. Possibe states are removed(0), active(1), locked(2) | |
NetApp SolidFire Volume | solidfire_volume_Reads | SolidFire Volume Reads | rops | 1.0.0 | The number of read IOPs performed on this volume. |
solidfire_volume_Writes | SolidFire Volume Writes | wops | 1.0.0 | The number of write IOPs performed on this volume | |
solidfire_volume_ReadBytes | SolidFire Volume Read Bytes | Bps | 1.0.0 | The number of bytes read from this volume | |
solidfire_volume_WriteBytes | SolidFire Volume Write Bytes | Bps | 1.0.0 | The number of bytes written to this volume | |
solidfire_volume_ReadLatency | SolidFire Volume Read Latency | microsec | 1.0.0 | The average time in microseconds to complete read operations | |
solidfire_volume_WriteLatency | SolidFire Volume Write Latency | microsec | 1.0.0 | Monitors the average time in microseconds to complete write operations | |
solidfire_volume_PercentageUtilization | SolidFire Volume Utilization Percentage | percent | 1.0.0 | Percent utilization of the clusters bandwidth used by this volume | |
solidfire_volume_UnalignedWrites | SolidFire Volume Unaligned Writes | wps | 1.0.0 | Number of unaligned writes performed on this volume | |
solidfire_volume_UnalignedReads | SolidFire Volume Unaligned Reads | rps | 1.0.0 | Number of unaligned reads performed on this volume | |
solidfire_volume_snapshot_TotalSize | SolidFire Volume Snapshot TotalSize | GB | 1.0.0 | Total Size of the snapshot in GB | |
solidfire_volume_snapshot_Status | SolidFire Volume Snapshot Status | 1.0.0 | Current status of the snapshot.Possible values are unknown(0), preparing(1), remoteSyncing(2), done(3), active(4), cloning(5) | ||
solidfire_volume_ReplicationStatus | SolidFire Remote Volume Replication Status | 1.0.0 | Returns the status of volume replication.Possible values are PausedDisconnected(0),ResumingConnected(1), ResumingRRSync(2), ResumingLocalSync(3),ResumingDataTransfer(4), Active(5), Idle(6), PausedClusterFull(7), PausedExceededMaxSnapshotCount(8), PausedManual(9), PausedManualRemote(10), PausedMisconfigured(11), PausedQoS(12), PausedSlowLink(13), PausedVolumeSizeMismatch(14), PausedXCopy(15) and StoppedMisconfigured(16) | ||
solidfire_volume_TotalCapacity | SolidFire Volume Total Capacity | GB | 1.0.0 | Total Capacity of the Volume in GB | |
solidfire_volume_Status | SolidFire Volume Status | 1.0.0 | Current status of the Volume.Possible values are init(0), active(1), deleted(2) | ||
NetApp SolidFire Drive | solidfire_drive_TotalCapacity | SolidFire Drive Total Capacity | GB | 1.0.0 | Total capacity of the drive |
solidfire_drive_UsedCapacity | SolidFire Drive Used Capacity | GB | 1.0.0 | Used capacity of the drive | |
solidfire_drive_UsedMemory | SolidFire Drive Used Memory | GB | 1.0.0 | Amount of memory currently used by the node hosting this drive. | |
solidfire_drive_Status | Solidfire Drive Status | 1.0.0 | Drive Status, Possible status are available(0), active(1), erasing(2), failed(3), removing(4) |
Configure and Install the NetApp SolidFire Integration
- From All Clients, select a client.
- Navigate to Setup > Account.
- Select the Integrations and Apps tab.
- The Installed Integrations page, where all the installed applications are displayed. If there are no installed applications, it will navigate to the Available Integrations and Apps page.
- Click + ADD on the Installed Integrations page. The Available Integrations and Apps page displays all the available applications along with the newly created application with the version.
Note: Search for the application using the search option available. Alternatively, use the All Categories option to search.
- Click ADD in the NetApp SolidFire application.
- In the Configurations page, click + ADD. The Add Configuration page appears.
- Enter the below mentioned BASIC INFORMATION:
Object Name | Description |
---|---|
Name | Enter the name for the integration |
IP Address/Host Name | IP address/host name of the target. |
Port | Port Note: Default port is 443 |
Credentials | Select the credentials from the drop-down list. Note: Click + Add to create a credential. |
Notes:
- By default the Is Secure checkbox is selected.
- IP Address/Host Name and Port Should be accessible from Gateway.
- Select the following:
- App Failure Notification: if turned on, you will be notified in case of an application failure.
- Event Polling: enables integrating third party alerts into OpsRamp using further configurations.
- Alert On Root Resource: alerts generated by on root resource
- Below are the default values set for:
- Alert Severity: Possible values of Alert Severity Filter configuration property are warning, critical, error.
- Alert Severity Mapping: Possible values of Alert Severity Mapping Filter configuration property are “critical":“Critical”, “error”:“Critical”, “warning”:“Warning”.
- Select the below mentioned Custom Attribute:
Functionality | Description |
---|---|
Custom Attribute | Select the custom attribute from the drop down list box. |
Value | Select the value from the drop down list box. |
Note: The custom attribute that you add here will be assigned to all the resources that are created by the integration. You can add a maximum of five custom attributes (key and value pair).
- In the RESOURCE TYPE section, select:
- ALL: All the existing and future resources will be discovered.
- SELECT: You can select one or multiple resources to be discovered.
- In the DISCOVERY SCHEDULE section, select Recurrence Pattern to add one of the following patterns:
- Minutes
- Hourly
- Daily
- Weekly
- Monthly
- Click ADD.
Now the configuration is saved and displayed on the configurations page after you save it.
Note: From the same page, you may Edit and Remove the created configuration.
- Click NEXT
- Below are the optional steps you can perform on the Installation page.
Under the ADVANCED SETTINGS, Select the Bypass Resource Reconciliation option, if you wish to bypass resource reconciliation when encountering the same resources discovered by multiple applications.
Note: If two different applications provide identical discovery attributes, two separate resources will be generated with those respective attributes from the individual discoveries.
- Click +ADD to create a new collector by providing a name or use the pre-populated name.
- Select an existing registered profile.
- Click FINISH.
The integration is now installed and displayed on the Installed Integration page. Use the search field to find the installed application.
Modify the Configuration
See Modify an Installed Integration or Application article.
Note: Select the NetApp SolidFire application.
View the NetApp SolidFire Details
To view the resource information, go to Infrastructure > Resources > Storage >NetApp Cluster and click on your created cluster name. You can navigate to the Attributes tab to view the discovery details, and Metrics tab to view the metric details for NetApp SolidFire.
View resource attributes
The discovered resource(s) are displayed under Attributes. In this page you will get the basic information about the resources such as: Resource Type, Native Resource Type, Resource Name, IP Address etc.
View resource metrics
To confirm NetApp SolidFire monitoring, review the following:
- Metric graphs: A graph is plotted for each metric that is enabled in the configuration.
- Alerts: Alerts are generated for metrics that are configured as defined for integration.
Resource Filter Input keys
NetApp SoldFire app Resources are filtered and discovered based on below keys.
Click here to view the Supported Input Keys
Resource Type | Resource Type |
---|---|
All Types | resourceName |
hostName | |
aliasName | |
dnsName | |
ipAddress | |
macAddress | |
os | |
make | |
model | |
serialNumber | |
NetApp SolidFire Cluster | Cluster UniqueID |
Storage Virtual Ip | |
Management Interface Ip | |
Storage Interface Ip | |
MVIP Vlan Tag | |
SVIP Vlan Tag | |
Cluster Nodes Ips | |
NetApp SolidFire Node | Node ID |
Storage Ip | |
Management Interface Ip | |
Storage Interface Ip | |
Role | |
Chassis Type | |
Node Type | |
NetApp SolidFire Volume Account | Volume Ids |
Account Id | |
NetApp SolidFire Volume | Volume ID |
IQN | |
Scsi EUI DeviceID | |
Scsi NAA DeviceID | |
Volume Consistency GroupUUID | |
Remote VolumeID | |
Remote VolumeName |
Supported Alert Custom Macros
Customize the alert subject and description with below macros then it will generate alert based on customisation.
Supported macros keys:
Click here to view the alert subject and description with macros
${resource.name}
${resource.ip}
${resource.mac}
${resource.aliasname}
${resource.os}
${resource.type}
${resource.dnsname}
${resource.alternateip}
${resource.make}
${resource.model}
${resource.serialnumber}
${resource.systemId}
${parent.resource.name}
${Custom attributes on the resource}
Risks, Limitations & Assumptions
- Application can handle Critical/Recovery failure notifications for below two cases when user enables App Failure Notifications in configuration
- Connectivity Exception
- Authentication Exception
- Application will not send any duplicate/repeat failure alert notification until the already existing critical alert is recovered.
- Using metrics for monitoring the resources and generating alerts when the threshold values are breached.
- Application cannnot control monitoring pause/resume actions based on above alerts.
- SolidFire Event/Alert Polling will be started only if the user enables Event Polling in configuration.
- Possible values of Alert Severity Filter configuration property are warning, critical and error.
- OpsRamp has given sample mappings to map SolidFire Severity with OpsRamp Severities as part of the Event/Alert Severity Mapping configuration file. Users can modify them as per their use-case at any point of time from the SDK application configuration page. Possible OpsRamp Severities are Critical, Warning, Ok, Info.
- In NetApp solidfire is not getting the resource name for drive resources. So we have given the drive resource name as a combination of driveId, nodeId and chassis-slotExample : 1.1.1(driveId.nodeId.chassis-slot).
- This application supports both Classic Gateway and NextGen Gateway.
- Not supported with Cluster Gateway.
- No support of showing activity logs.
- The Template Applied Time will only be displayed if the collector profile (Classic and NextGen Gateway) is version 18.1.0 or higher.