Contents
- IOx: Support 3rd Party Apps in KVMs
- Information About IOx: Support 3rd Party Apps in KVMs
- Benefits of Using IOx: Support 3rd Party Apps in KVMs
- Restrictions for IOx: Support 3rd Party Apps in KVMs
- Prerequisites for Configuring IOx: Support 3rd Party Apps in KVMs
- Configuring IOx: Support 3rd Party Apps in KVMs
- Additional References for IOx: Support 3rd Party Apps in KVMs
- Feature Information for IOx: Support 3rd Party Apps in KVMs
IOx: Support 3rd Party Apps in KVMs
The IOx: Support 3rd Party Apps in KVMs feature enables fog computing on Cisco IOS. IOx provides support for implementation of third party applications (KVMs) on Cisco network edge devices and across multiple hardware platforms. The IOx: Support 3rd Party Apps in KVMs feature supports Local Manager which is the Web UI supported by Cisco Application Hosting Framework (CAF) and also supports Fog Director which is the centralized management engine which can be used to manage the entire lifecycle of an application.
Information About IOx: Support 3rd Party Apps in KVMs
The IOx: Support 3rd party apps in KVMs feature provides support for hosting multiple 3rd party applications ( KVM's) on the same hardware. The IOx: Support 3rd party apps in KVMs feature provides an SDK and also supports virtualization. Each VM is independent of the other and resources are shared among the VM's. The developer can specify resources that is to be allocated for each VM.
The IOx: Support 3rd party apps in KVMs feature provides a platform that allows you to manage the entire life cycle of applications including development, distribution, deployment, hosting, monitoring, and management. The reporting module provides effective monitoring capabilities for maximizing security while connecting the applications and services to the cloud. ASR1K NPTv6 allows for greater reliability as it provides support for multihoming and load balancing and achieves the translation without breaking the end-to-end reachability at the network layer.
Benefits of Using IOx: Support 3rd Party Apps in KVMs
The IOx: Support 3rd party apps in KVMs feature provides a common software infrastructure to host applications in network devices in such a way that they are independent of the hardware the applications are hosted on.
The IOx: Support 3rd party apps in KVMs feature supports Local Manager which is a user friendly interface that is provided for making it easy for the developers and the administrators to build and deploy IOx applications across multiple hardware platforms. IOx also provides a set of services that can be used to accelerate the development of IOx applications and supports complete life cycle management capabilities for applications hosted on network devices.
Fog Director is supported by the IOx: Support 3rd party apps in KVMs feature which enables you to perform actions like start or stop, uninstall, and upgrade applications. Fog director supports can be scaled to support up to 5000 devices which enables you to perform lifecycle enablement tasks on la arge number of devices simultaneous, with minimal delay. You can also monitor applications installed on all devices and can also troubleshoot applications and the application enablement infrastructure using the Fog Director.
Restrictions for IOx: Support 3rd Party Apps in KVMs
IOx supports only VM style applications. LXC (container applications) is not supported.
IOx is not backward compatible with Vman. If an application is deployed using Vman CLI, IOX does not support it.
IOx: Support 3rd Party Apps in KVMs does not support concurrent requests from multiple clients. You cannot use Fog-director or Local manager simultaneously for any operation.
The maximum number of applications that can be in running state at any instant is 4. This is consistent across all Polaris platforms.
For ASR1K, the maximum VCPU per application is 1 and maximum CPU resource per application is limited to 12% even if you request for more.
Prerequisites for Configuring IOx: Support 3rd Party Apps in KVMs
Make sure that you have a router that has a hard-disk or NIM-SSD and a minimum of 8GB RAM before deploying IOx to prevent application failure when deployed using IOx.
You must first enable the IOx on the device using the iox configuration command to be able to start using the user interface and services.
Configuring IOx: Support 3rd Party Apps in KVMs
To enable IOx:enable configure terminal iox exitTo disable IOx:enable configure terminal no iox exitTo setup a management interface to pass traffic to Cisco Application Hosting Framework (CAF). In the following configuration we enable both IPv4 and IPv6:enable configure terminal vrf definition Mgmt-intf address-family ipv4 exit-address-family address-family ipv6 exit-address-family exitTo configure a DHCP pool for an application to obtain an IP address from the address pool:enable configure terminal ip dhcp pool gospool network 25.25.0.0 255.255.255.0 default-router 25.25.0.1 domain-name sample.com dns-server 72.163.128.140 remember exitTo enable login credentials for Polaris WebUI under which IOx Local Manager is embedded:enable configure terminal username root privilege 15 password 0 root exit configure terminal interface VirtualPortGroup1 ip address 25.0.0.1 255.255.255.0 endTo enable a virtual interface between IOS and VMAN from where traffic can be passed to an application. IOx currently uses only this interface:enable configure terminal ip nat inside no mop enabled no mop sysid exit interface VirtualPortGroup0 configure terminal interface GigabitEthernet0/0/3 endTo setup WAN interface for passing traffic from outside to an application and assigning IP address for management interface:enable configure terminal ip address 10.126.93.198 255.255.255.0 ip nat outside media-type rj45 negotiation auto exit interface GigabitEthernet0/0/3 configure terminal interface GigabitEthernet0 description Management Interface exit vrf forwarding Mgmt-intf ip address 1.100.40.24 255.255.255.0 negotiation auto exit interface GigabitEthernet0 endTo enable IOx to accept third party applications or unsigned applications. In the following configuration App1 is the name of the application to be deployed and the traffic to the application is passed through virtual service Virtualportgroup1:enable configure terminal virtual-service signing level unsigned exit virtual-service configure terminal virtual-service App1 vnic gateway VirtualPortGroup1 exit virtual-service App1 endTo enable IOx, HTTP server for enabling user interface, and NAT configuration of external traffic to an application using WAN interface:enable configure terminal Iox ip nat inside source static tcp 25.25.0.2 9000 interface GigabitEthernet0/0/3 9000 ip nat inside source list NAT_ACL interface GigabitEthernet0/0/3 overload ip forward-protocol nd ip http server ip http authentication local ip http secure-server ip route 0.0.0.0 0.0.0.0 10.126.93.1 ip route 10.0.0.0 255.0.0.0 10.126.93.1 ip access-list standard NAT_ACL permit 25.25.0.0 0.0.255.255 exit ip access-list standard NAT_ACL endenable configure terminal interface GigabitEthernet0/0/0 ipv6 address 2001:AB01::1/64 ipv6 enable nat66 inside negotiation auto interface GigabitEthernet0/0/1 ipv6 address 2002:AB01::1/64 ipv6 enable nat66 outside negotiation auto nat66 prefixinside 2002:AB01::/64outside 2002:AB02::/64 endVerifying IOx: Support 3rd Party Apps in KVMs Configuration
Note
The debugs for IOx can be enabled and downloaded from the System Info tab of the Local Manager (IOx WebUI).
Use the show iox-service command to verify the IOx configuration:Device# show iox-service Virtual Service Global State and Virtualization Limits: Infrastructure version : 1.7 Total virtual services installed : 1 Total virtual services activated : 0 Machine types supported : KVM, LXC Machine types disabled : none Maximum VCPUs per virtual service : 4 Resource virtualization limits: Name Quota Committed Available -------------------------------------------------------------- system CPU (%) 75 0 75 memory (MB) 4096 0 4096 bootflash (MB) 1000 0 575 harddisk (MB) 20000 10077 8983 volume-group (MB) 381552 0 361072 IOx Infrastructure Summary: --------------------------- IOx service (CAF) : Running Libvirtd : RunningAdditional References for IOx: Support 3rd Party Apps in KVMs
Technical Assistance
Description
Link
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.
Feature Information for IOx: Support 3rd Party Apps in KVMs
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 1 Feature Information for IOx: Support 3rd Party Apps in KVMs Feature Name
Releases
Feature Configuration Information
IOx: Support 3rd Party Apps in KVMs
Cisco IOS XE Denali 16.3.1
The IOx: Support 3rd Party Apps in KVMs feature enables fog computing on Cisco IOS. IOx provides support for implementation of third party applications and services on Cisco network edge devices and across multiple hardware platforms.
The following platforms are supported by the IOx: Support 3rd Party Apps in KVMs feature in this release: ASR1001-X, ASR1002-X, ASR1002-HX, ASR1001-HX, ISR4321, ISR4331, ISR4351, ISR4431, ISR4451x.
The following commands were modified: show iox-service
Copyright © 2017, Cisco Systems, Inc. All rights reserved.