This chapter provides an overview of Cisco IOx, Cisco Fog Director, and the lifecycle of a Cisco IOx app. It includes these sections:About Cisco IOx
About Cisco IOx
Cisco IOx is an application enablement platform that provides uniform and consistent hosting capabilities for various types of applications, or apps, across various Cisco platforms. This platform brings together Cisco IOS, the industry-leading networking operating system, and Linux, the leading open source platform. Linux-based applications can run on Cisco devices in the Cisco IOx framework, so using this platform, you can bring custom applications and interfaces to the network.
With Cisco IOx, developers can create a wide variety of IoT apps, such as data aggregation system and control systems.
About Cisco Fog Director
Cisco Fog Director allows administrators to manage, administer, monitor, and troubleshoot Cisco IOx apps and devices. It provides a web-based user interface from which you can perform activities that include the following:
- Install and uninstall apps
- Start and stop apps
- Upgrade apps
- View the status of apps
- Backup and restore apps
- Monitor apps and devices and collect statistics
- Create and obtain debug logs for troubleshooting
App Configuration Caveat
Cisco Fog Director provides options for configuring apps as described in the “Reconfiguring App Parameters” section. You can use these options or another tool, such as Cisco IOx Local Manager or a custom device manager, to configure an app. However, if you use another tool, the configuration updates that you make are not synced to Cisco Fog Director. As a best practice, we recommend that you only the Cisco Fog Director configuration options or another tool to configure an app that you manage with Cisco Fog Director, and that you do not switch between tools to configure that app.
Hardware Platform Caveat
Cisco C800 series devices do not provide dedicated storage for apps. These devices have a single, soldered-on flash storage that is shared between Cisco IOS and apps. The flash storage is not field replaceable.
Flash has a finite number of P/E cycles. It is expected to last for the duration of the device lifecycle if the flash is used only for Cisco IOS configuration. If apps write to the flash frequently, flash wear out becomes a serious concern.
We recommend that developers and users monitor and throttle the frequency of writes to flash. If an app demands frequent writes or a large amount of data storage, we recommend that data be exported for off-device storage.
App Health Script
An app developer can write a health script for an app and include that script as part of the app package. If an app includes a health script, the Cisco application-hosting framework monitors the health of the app. If app monitoring determines that an app is unhealthy, the App Health field in Apps area on the Device Details page displays UNHEALTHY. In this situation, you can use the Show report link in the Apps Area to view error information and health information output from the monitor script This information can help you resolve the health issue.
For information about developing a health script, see the “Application Health Monitoring” section in IOx Application Developer Guide, which is available at the following URL:
For information about the UNHEALTHY app state in Cisco Fog Director, see the “Apps Area” section.
The following table provides the general operations that are involved in the lifecycle of a Cisco IOx app. Use this information as a guide as you deploy apps. There are many additional operations that you can perform as needed. Although those operations are not listed in this table, they are described in detail in this manual.