About the NX-SDK
The Cisco NX-OS SDK (NX-SDK) is a C++ abstraction and plugin-library layer that streamlines access to infrastructure for automation and custom application creation, such as generating custom:
-
CLIs
-
Syslogs
-
Event and Error managers
-
Inter-application communication
-
High availability (HA)
-
Route manager
You can use C++, Python, or Go for application development with NX-SDK.
Support for Local (On Switch) and Remote (Off Switch) Applications
Applications that are developed with NX-SDK are created or developed off the Cisco Nexus switch in the Docker containers that NX-SDK provides. After the application is created, you have flexibility of where the applications can be deployed:
-
Local (on-box) applications run on the switch. For information, see About On-Box (Local) Applications
-
Remote (off-box) applications run off switch. This option, supported with NX-SDK 2.0 and later, enables you to deploy the application to run anywhere other than on the switch. For information, see About Remote Applications.
Related Information
For more information about Cisco NX-SDK, go to:
-
Cisco DevNet NX-SDK. Click the versions.md link (https://github.com/CiscoDevNet/NX-SDK/blob/master/versions.md) to get information about features and details on each supported release.
As needed, Cisco adds information for NX-SDK to GitHub.
Considerations for Go Bindings
Go bindings are supported at various levels depending on the release of NX-SDK and whether apps are running locally or remotely.
-
Go bindings for any version of NX-SDK remote application are pre-EFT quality.
-
Go bindings for a local NX-SDK 2.0 application is pre-EFT.
-
Go bindings for a local NX-SDK 1.7.5 application or earlier is supported.
For more information, see GO Bindings for NX-SDK Applications.