Open NX-OS comes packaged with a comprehensive suite of protocols. Customers may be interested in augmenting or replacing default modules and packages with custom-developed or open source modules. Examples of these modules could be OpenLLD and OpenSSH.
Open LLDP
LLDP is an industry standard protocol designed to supplement proprietary Link-Layer discovery protocols such as EDP or CDP. The goal of LLDP is to provide an inter-vendor compatible mechanism to deliver Link-Layer notifications to adjacent network devices.
For more information, see https://vincentbernat.github.io/lldpd/index.html.
Custom Applications on Open NX-OS
Cisco SDK
The Cisco SDK is a development-kit based on Yocto 1.2. It contains all of the tools needed to build applications for native installation on a Cisco Nexus switch beginning with NX-OS Release 7.0(3)I2(1). The basic components are the C cross-compiler, linker, libraries, and header files that are commonly used in many applications. The SDK can be used to develop applications and package them as RPMs to be installed on a switch. The SDK should be dowloaded and installed on your Linux build server in your data center for your application development efforts.
Basic example of building an application into an RPM:
Essentially if the application successfully builds using make
, then it can be packaged into an RPM. The package should contain the meta data for use with autoconf and RPM packaging tools. Assuming all of the dependencies are met, you can just use the standard RPM build procedure:
bash$ mkdir rpm
bash$ cd rpm
bash$ mkdir BUILD RPMS SOURCES SPECS SRPMS
bash$ cp ../example-app-1.0.tgz SOURCES
bash$ cp ../example-app.spec SPECS
bash$ rpmbuild -v --bb SPECS/example-app.spec
The SDK is available for download at https://developer.cisco.com/nx-os. This will also contain detailed documentation around the SDK installation and custom application building process, to assist user development efforts.
Many commonly used applications are already pre-built and available at https://developer.cisco.com/nx-os.
Conclusion
Cisco Open NX-OS allows network operators and developers to integrate third-party and custom applications directly onto Nexus switch platforms. These applications can address a wide variety of configuration management, telemetry and advanced network monitoring challenges.