You can use DataFabric Manager APIs for the OnCommand Package to retrieve information about the DataFabric Manager server, dataset management, DataFabric Manager schedule management, creating and managing provisioning and protection policy, and so on.
The following table describes sample codes that demonstrate the use of a few DataFabric Manager APIs for the OnCommand Package. The list also provides links to view the codes.
|
Name |
Description |
Sample code in languages... |
||||||
|
Perl |
Java |
C# |
Powershell |
C |
Python |
Ruby | ||
|
Hello DataFabric Manager |
This sample code demonstrates the following functions:
|
hello_dfm.pl |
hello_dfm.java |
- |
- |
hello_dfm.c |
hello_dfm.py |
hello_dfm.rb |
|
DataFabric Manager proxy |
This sample code demonstrates the use of the DataFabric Manager server as a proxy for the NetApp storage system. The code demonstrates the following functions:
|
dfm_proxy.pl |
dfm_poxy.java |
- |
- |
dfm_proxy.c |
dfm_proxy.py |
dfm_proxy.rb |
|
Dataset management |
This sample code demonstrates how to create, delete, and list datasets. It also demonstrates how to list, delete, and provision dataset members. |
dataset.pl |
dataset.java |
dataset.cs |
- |
- |
dataset.py |
dataset.rb |
|
DataFabric Manager scheduling management |
This sample code demonstrates how to create, list, and delete DataFabric Manager schedules. |
dfm_schedule.pl |
dfm_schedule.java |
dfm_schedule.cs |
- |
- |
dfm_schedule.py |
dfm_schedule.rb |
|
Network-attached storage (NAS) provisioning policy management |
This sample code demonstrates how to create, delete, and list NAS provisioning policies. |
nas_provisioning_policy.pl |
nas_provisioning_policy.java |
nas_provisioning_policy.cs |
- |
- |
nas_provisioning_policy.py |
nas_provisioning_policy.rb |
|
Protection policy management |
This sample code demonstrates how to create, delete, and list protection policies. |
protection_policy.pl |
protection_policy.java |
protection_policy.cs |
- |
- |
protection_policy.py |
protection_policy.rb |
|
Resource pooling management |
This sample code demonstrates how to create, list, and delete resource pools, and how to add, list, and remove members from a resource pool. |
resource_pool.pl |
resource_pool.java |
resource_pool.cs |
- |
- |
resource_pool.py |
resource_pool.rb |
|
MultiStore management |
This sample code demonstrates how to create and delete vFiler units, and how to create, list, and delete vFiler templates. |
vfiler.pl |
vfiler.java |
vfiler.cs |
- |
- |
vfiler.py |
vfiler.rb |
|
Role-based access control (RBAC) by using DataFabric Manager |
This sample code demonstrates how to manage an RBAC infrastructure such as how to create, delete, and list roles, operations, and so on. |
rbac.pl |
rbac.java |
rbac.cs |
- |
- |
rbac.py |
rbac.rb |
The following are advanced sample codes in Perl, Java, Python, and Ruby:
|
Use Case |
Name |
Description |
Sample code in languages.. |
|
| |
|---|---|---|---|---|---|---|
|
Perl
|
Java
|
Python |
Ruby | |||
|
Policy-based provisioning and protection |
Dataset management |
This sample code demonstrates how to create, list, and delete a dataset. It also demonstrates how to add, list, and delete a member in a dataset, attach resource pools, provisioning policy, protection policy, and vFiler to a dataset, and provision storage from a dataset. |
dataset.pl |
dataset.java |
dataset.py |
dataset.rb |
|
MultiStore management |
This sample code demonstrates how to create, destroy, and set up a vFiler unit. |
multistore.pl |
multistore.java |
multistore.py
|
multistore.rb | |
|
Provisioning policy management |
This sample code demonstrates how to list and delete protection policies, and how to create, list, and delete a new provisioning policy. |
policy.pl |
policy.java |
policy.py |
policy.rb | |
|
Resource pooling management |
This sample code demonstrates how to create, list, and delete a resource pool, and how to add and list members to and delete members from a resource pool. |
resource_pool.pl |
resource_pool.java |
resource_pool.py |
resource_pool.rb | |
|
Dataset monitoring |
Health monitoring |
This sample code demonstrates how to provide the health status of datasets in a system, and how to collect information about total protected and unprotected datasets, and dataset protection status, space status, conformance status, resource status, and so on. |
dataset_health.pl |
dataset_health.java |
dataset_health.py |
dataset_health.rb |
|
Space monitoring |
This sample code demonstrates how to obtain the storage information of each dataset, such as used space, available space, and total space of each node in the dataset. It also provides information about space breakout and deduplicated space savings for each dataset member. |
dataset_metrics.pl |
dataset_metrics.java |
- |
- | |
|
Performance characteristics (views) for latency, input and output operations per second, and CPU utilization |
Aggregate latency |
This sample code provides information about read latency, write latency, and average latency of an aggregate. Performance Advisor does not provide counters to get aggregate latency directly. This sample code demonstrates a method to generate aggregate latency data by collecting the latency of all the volumes present in the aggregate. This data can be used to generate charts to represent data in graphical format. To generate the graph, you have to redirect the output of this sample code to an Excel sheet. |
perf_aggr_latency.pl |
perfAggrLatency.java |
perf_aggr_latency.py |
perf_aggr_latency.rb |
|
Volume Latency |
This sample code prints the average latency of all the volumes present for the aggregate. This data can be used to generate a distribution chart for average latency of a volume. To generate the graph, you have to redirect the output of this sample code to an Excel sheet. |
perf_vol_latency.pl |
perfVolLatency.java |
perf_vol_latency.py |
perf_vol_latency.rb | |
|
Disk Latency |
This sample code prints disk Input Output Per second (IOPs) for all disks on which an aggregate is present. This sample code also prints the minimum disk IOPs value and the maximum disk IOPs value for the specific time stamp. |
perf_disk_iops_latency.pl |
perfDiskLatency.java |
perfDiskLatency.py |
perfDiskLatency.rb | |
|
CPU utilization |
This sample code prints CPU utilization statistics of a storage system. The sample code collects CPU utilization data for two weeks and prints the data in a format that enables comparison of CPU utilization in day-hour format for both the weeks. The output data of this sample code can be used to generate chart. To generate the graph, you have to redirect the output of this sample code to an Excel sheet. |
perf_cpu_util.pl |
perfCpuUtil.java |
perfCpuUtil.py |
perfCpuUtil.rb | |