Nexenta

NexentaStor Storage Appliance API (SA-API) Hot

NexentaStor Storage Appliance API (SA-API) Reference documentation


The API is available on-line. Click here.


This API reference provides comprehensive information allowing to build new and extend existing management services, management clients and applications on top of NexentaStor.

Storage Appliance API (SA-API) uses RPC-like D-Bus protocol that employes TCP/IP transport. D-Bus is a powerful and flexible inter-process communication (IPC) mechanism that allows: for the service providers - to register the provided services, and for the clients - to lookup on the network and use the provided services in a location-independent way. NexentaStor leverages D-Bus to provide universal and comprehensive API to manage and monitor all aspects of the appliance's operation. For more information on dbus visit the D-Bus Project Homepage. There are many good introductions and tutorials available on the web, including for instance this D-Bus Tutorial.

Since SA-API provides a higher level abstraction on top of D-Bus, knowledge of these materials is, however, not a prerequisite. SA-API makes it easy to create new, or modify existing applications in C or C++, Perl, Python or Ruby. More language specific SA-API extensions may be added in the future.

The API provides access to the appliance's management objects and services. The appliance's management object hierarchy includes: lun, volume, folder, snapshot, network, network interface, network service, storage service, indexer, zvol, statistic collector, fault trigger, reporter, and others. Each object implements and publishes a part of the API, which makes the latter a by-product of two interrelated but still distinctly separate driving "forces": the appliance's object taxonomy and the required functionality of the 2nd tier NAS.

All client management applications use SA-API to monitor and administer the appliance. This ensures consistent view of the appliance from all clients, transactional behavior of all management administrative and monitoring operations, and easy third-party integrations. The currently existing management clients include: management console (NMC) and web GUI (Nexenta Management View a.k.a. NMV), fault triggers and storage services, statistic collectors and daily/weekly reporters. All of them execute management operations first by acquiring an object proxy, and second, by calling one of the object's APIs. The SA-API supports many-to-many operation, in the sense that it allows to communicate to multiple statically bound or dynamically discovered appliances on the Internet/Intranet, and at the same time supports multi-user access to any given appliance.


SA-API has bindings for C, C++, Perl, Python and Ruby.



  • This documentation contains examples and samples to demonstrate SA-API applications in C, C++, Perl, Python and Ruby. You can develop and run SA-API applications on both Windows and Linux platforms.

  • For Windows, please download NexentaStor SDK for Windows.

  • For Linux, please download NexentaStor SDK for Linux.


The API can be used to take the full advantage of the NexentaStor capabilities, including unlimited incremental backups or 'snapshots', snapshot mirroring (replication), block level mirroring ('CDP'), integrated search, and the inherent virtualization, performance, thin provisioning and more. The following block diagram shows Nexenta Management Server - the sole provider of the API - and some of its clients.


View NexentaStor Storage Appliance API (SA-API) on-line.

User reviews

There are no user reviews for this listing.

To write a review please register or login.
 
 
 
Powered by JReviews

Free Trial, try it now!

This site is built with Open Source programs including Joomla and its components such as VirtueMart.


Terms of Use | Privacy Policy | Trademarks & Copyrights