The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
This document describes how to configure ThousandEyes on Cisco IOS-XE® platforms.
Cisco recommends validation of the requirements at the ThousandEyes documentation portal:
Support Matrix Thousand Eyes
The information in this document is based on Routers with Cisco IOS-XE.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
Download the ThousandEyes agent from https://app.thousandeyes.com under the menu Cloud & Enterprise Agents > Agent settings > Add New Enterprise Agent > Cisco Application Hosting:
Copy the .tar file to the bootflash of the router. This can be done via TFTP. Or, download the file on a USB flash drive and copy it to the router bootflash.
Router#dir bootflash: | sec .tar 24577 -rw- 186705920 May 19 2022 16:26:31 +00:00 thousandeyes-enterprise-agent-4.2.2.cisco.tar
Enable the IOx daemon on the router with the iox command and validate the service status.
Router(config)#iox
*May 19 16:40:48.485: %UICFGEXP-6-SERVER_NOTIFIED_START: R0/0: psd: Server iox has been notified to start Router#show iox-service IOx Infrastructure Summary: --------------------------- IOx service (CAF) : Not Running IOx service (HA) : Not Supported IOx service (IOxman) : Not Running IOx service (Sec storage) : Not Supported Libvirtd 5.5.0 : Running
Install the agent previously stored on the bootflash with the command app-hosting install appid <agent_name> package bootflash:<file.tar>.
Router#app-hosting install appid ISR4k_Agent package bootflash:thousandeyes-enterprise-agent-4.2.2.cisco.tar
Installing package 'bootflash:thousandeyes-enterprise-agent-4.2.2.cisco.tar' for 'ISR4k_Agent'. Use 'show app-hosting list' for progress.
Verify that the agent is installed correctly with the command show app-hosting list.
Router#show app-hosting list App id State --------------------------------------------------------- ISR4k_Agent DEPLOYED
Configure a Virtual Port Interface.
interface VirtualPortGroup1 ip address 192.168.2.254 255.255.255.0 no mop enabled no mop sysid end
Configure the VNIC for app-hosting.
Router(config)#app-hosting appid ISR4k_Agent Router(config-app-hosting)#app-vnic gateway1 virtualportgroup 1 guest-interface 1 Router(config-app-hosting-gateway1)#guest-ipaddress 192.168.2.10 netmask 255.255.255.0 Router(config-app-hosting-gateway#)#exit Router(config-app-hosting)#app-default-gateway 192.168.2.254 guest-interface 1 Router(config-app-hosting)#name-server1 8.8.8.8 Router(config-app-hosting)#end
NOTE: The IP Address of the name-server command can be an internal or an external DNS server. |
Set up Docker. The required token can be obtained at https://app.thousandeyes.com under the menu Cloud & Enterprise Agents > Agent settings > Add a New Enterprise Agent > Cisco Application Hosting.
Click on the small eye icon. This displays the Token number unencrypted. Copy the string and proceed with the installation on the router.
Docker installation commands:
Router(config-app-hosting)#app-resource docker Router(config-app-hosting-docker)#prepend-pkg-opts Router(config-app-hosting-docker)#run-opts 1 "-e TEAGENT_ACCOUNT_TOKEN= EAGENT_ACCOUNT_TOKEN= xxxxxxxxxxxxxxxxxxxx" Router(config-app-hosting-docker)#run-opts 2 "--hostname ISR_Agent" Router(config-app-hosting)#start Router(config-app-hosting)#end Router# *May 30 20:10:00.282: %SYS-5-CONFIG_I: Configured from console by console *May 30 20:10:06.980: %IM-6-START_MSG: R0/0: ioxman: app-hosting: Start succeeded: ISR_Agent started successfully Current state is RUNNING
Step 9.
Verify that the agent is active with the command show app-hosting list.
Router#show app-hosting list App id State --------------------------------------------------------- ISR_Agent RUNNING
Step 1.
Download the agent .tar archive from the Thousand Eyes website thousandeyes-enterprise-agent-x.x.x.cisco.tar.
Copy the .tar file to the bootflash of the router. This can be done via TFTP. Or, download the file on a USB flash drive and copy it to the router bootflash.
Router#dir bootflash: | sec .tar
16 -rw- 186705920 Sep 21 2022 15:02:21 +00:00 thousandeyes-enterprise-agent-4.2.2.cisco.tar
Enable the IOx daemon on the router with the command iox and validate the service status.
Router(config)#iox Router#show iox-service IOx Infrastructure Summary: --------------------------- IOx service (CAF) : Running IOx service (HA) : Not Supported IOx service (IOxman) : Running IOx service (Sec storage) : Not Supported Libvirtd 5.5.0 : Running
Install the agent previously stored on the bootflash with the command app-hosting install appid <agent_name> package bootflash:<file.tar>.
Router#app-hosting install appid ASR_TE package bootflash:thousandeyes-enterprise-agent-4.2.2.cisco.tar Installing package 'bootflash:thousandeyes-enterprise-agent-4.2.2.cisco.tar' for 'ASR_TE'. Use 'show app-hosting list' for progress. *Sep 21 16:10:12.900: %IOXCAF-6-INSTALL_MSG: R0/0: ioxman: app-hosting: ASR_TE installed successfully Current state is DEPLOYED
Router#show app-hosting list App id State --------------------------------------------------------- ASR1k_TE DEPLOYED
Configure a Virtual Port Interface with a private IP address.
interface VirtualPortGroup0 ip address 192.168.2.254 255.255.255.0 no mop enabled no mop sysid end
Step 6.
Configure the VNIC for app-hosting.
Router(config)#app-hosting appid ASR1k_TE Router(config-app-hosting)#app-vnic gateway1 virtualportgroup 0 guest-interface 0 Router(config-app-hosting-gateway0)#guest-ipaddress 192.168.2.1 netmask 255.255.255.0 Router(config-app-hosting-gateway0)#exit Router(config-app-hosting)#app-default-gateway 192.168.2.254 guest-interface 0 Router(config-app-hosting)#name-server0 8.8.8.8 Router(config-app-hosting)#app-resource docker Router(config-app-hosting-docker)#prepend-pkg-opts Router(config-app-hosting-docker)#run-opts 1 "--hostname ASR1kTE" Router(config-app-hosting-docker)#run-opts 1 "-e TEAGENT_ACCOUNT_TOKEN=XXXXXXXXXXXXXXXXX" Router(config-app-hosting-docker)#exit
Step 7.
Activate app-hosting for the cited App ID.
Router(config)#app-hosting appid ASR1k_TE
Router(config-app-hosting)#start
Step 8.
Install the ThousandEyes agent and verify that it is active with the command show app-hosting list.
Router#app-hosting install appid ASR1k_TE package bootflash:thousandeyes-enterprise-agent-4.2.2.cisco.tar Installing package 'bootflash:thousandeyes-enterprise-agent-4.2.2.cisco.tar' for 'ASR1k_TE'. Use 'show app-hosting list' for progress.
Router#show app-hosting list App id State --------------------------------------------------------- ASR1k_TE RUNNING
Step 1.
Download the agent .tar file from the ThousandEyes website thousandeyes-enterprise-agent-x.x.x.cisco.tar
Step 2.
Copy the .tar file to the harddisk of the device.
C8200k#dir harddisk:thousandeyes-enterprise-agent-4.3.0.cisco.tar Directory of harddisk:/thousandeyes-enterprise-agent-4.3.0.cisco.tar 12 -rw- 123064320 Nov 12 2022 21:35:06 +00:00 thousandeyes-enterprise-agent-4.3.0.cisco.tar 15239921664 bytes total (14280880128 bytes free) C8200k#
Step 3.
Enable the IOx daemon on the router with the command iox and validate the service status.
C8200k(config)#iox *Nov 12 21:46:51.539: %UICFGEXP-6-SERVER_NOTIFIED_START: R0/0: psd: Server iox has been notified to start *Nov 12 21:46:52.443: %SYS-5-CONFIG_I: Configured from console by console *Nov 12 21:47:13.866: %IM-6-IOX_ENABLEMENT: R0/0: ioxman: IOX is ready.
C8200k#show iox-service IOx Infrastructure Summary: --------------------------- IOx service (CAF) : Running IOx service (HA) : Not Supported IOx service (IOxman) : Running IOx service (Sec storage) : Not Supported Libvirtd 5.5.0 : Running
Step 4.
Configure platform resource app-heavy. Save the configuration changes and reload the chassis.
C8200k(config)#platform resource service-plane-heavy C8200k(config)#end C8200k#wr C8200k#reload
Step 5.
Configure a Virtual Port Interface.
interface virtualportgroup 0 ip address 192.168.2.254 255.255.255.0 exit
Step 6.
Configure the VNIC for app-hosting.
C8200k(config)#app-hosting appid TEcat8k C8200k(config-app-hosting)#app-vnic gateway1 virtualportgroup 0 guest-interface 0 C8200k(config-app-hosting-gateway1)#guest-ipaddress 192.168.2.10 netmask 255.255.255.0 C8200k(config-app-hosting-gateway1)#exit C8200k(config-app-hosting)#app-default-gateway 192.168.2.254 guest-interface 0 C8200k(config)#app-hosting appid TEcat8k C8200k(config-app-hosting)#app-resource docker C8200k(config-app-hosting-docker)#prepend-pkg-opts C8200k(config-app-hosting-docker)#run-opts 1 "-e TEAGENT_ACCOUNT_TOKEN=xxxxxxxxxxxxxxxxxxxx" C8200k(config-app-hosting-docker)#run-opts 2 "--hostname TEcat8k" C8200k(config-app-hosting)#name-server0 8.8.8.8 C8200k(config-app-hosting)#end
Step 7.
Activate app-hosting for the cited App ID.
C8200k(config)#app-hosting appid TEcat8k C8200k(config-app-hosting)#start
Step 8.
Install the ThousandEyes agent and verify that it is running.
C8200k#app-hosting install appid TEcat8k package harddisk:thousandeyes-enterprise-agent-4.3.0.cisco.tar Installing package 'harddisk:thousandeyes-enterprise-agent-4.3.0.cisco.tar' for 'TEcat8k'. Use 'show app-hosting list' for progress.
*Jan 21 21:30:17.194: %IM-6-INSTALL_MSG: R0/0: ioxman: app-hosting: Install succeeded: TEcat8k installed successfully Current state is DEPLOYED *Jan 21 21:30:41.019: %IM-6-START_MSG: R0/0: ioxman: app-hosting: Start succeeded: TEcat8k started successfully Current state is RUNNING C8200k#show app-hosting list App id State --------------------------------------------------------- TEcat8k RUNNING
Step 1.
Download the agent .tar file from the Thousand Eyes website thousandeyes-enterprise-agent-x.x.x.cisco.tar
Step 2.
Copy the .tar file to the harddisk of the device.
Router#dir harddisk:thousandeyes-enterprise-agent-4.2.2.cisco.tar Directory of harddisk:/thousandeyes-enterprise-agent-4.2.2.cisco.tar 12 -rw- 186705920 Sep 14 2022 19:02:02 +00:00 thousandeyes-enterprise-agent-4.2.2.cisco.tar
Step 3.
Enable the IOx daemon on the router with the command iox and validate the service status.
Router(config)#iox *Sep 5 17:48:31.952: %UICFGEXP-6-SERVER_NOTIFIED_START: R0/0: psd: Server iox has been notified to start *Sep 5 17:48:40.953: %IM-6-IOX_ENABLEMENT: R0/0: ioxman: IOX is ready. Router#show iox-service IOx Infrastructure Summary: --------------------------- IOx service (CAF) : Running IOx service (HA) : Not Supported IOx service (IOxman) : Running IOx service (Sec storage) : Not Supported Libvirtd 5.5.0 : Running
Step 4.
Configure a Virtual Port Interface.
interface VirtualPortGroup1 ip address 192.168.2.254 255.255.255.0 no mop enabled no mop sysid end
Step 5.
Configure the VNIC for app-hosting.
Router(config)#app-hosting appid Cat8k_TE Router(config-app-hosting)#app-vnic gateway1 virtualportgroup 1 guest-interface 1 Router(config-app-hosting-gateway1)#guest-ipaddress 192.168.2.1 netmask 255.255.255.0 Router(config-app-hosting)#app-default-gateway 192.168.2.254 guest-interface 1 Router(config-app-hosting)#app-resource docker Router(config-app-hosting-docker)#prepend-pkg-opts Router(config-app-hosting-docker)#run-opts 1 "--hostname C8k_TE" Router(config-app-hosting-docker)#run-opts 2 "-e TEAGENT_ACCOUNT_TOKEN=xxxxxxxxxxxxxxxxxxxx" Router(config-app-hosting)#name-server1 8.8.8.8 Router(config-app-hosting)#start
Step 6.
Configure the start command to initiate the application.
Router(config)#app-hosting appid Cat8k_TE Router(config-app-hosting)#start
Step 7.
Install the ThousandEyes agent and verify that it is deployed.
Router#app-hosting install appid TEcat8k package harddisk:thousandeyes-enterprise-agent-4.2.2.cisco.tar Router#show app-hosting list App id State --------------------------------------------------------- Cat8k_TE DEPLOYED
Step 1.
Download the agent .tar file from the ThousandEyes website thousandeyes-enterprise-agent-x.x.x.cisco.tar
Step 2.
Copy the .tar file on the harddisk of the device.
Router#dir harddisk:thousandeyes-enterprise-agent-4.2.2.cisco.tar Directory of harddisk:/thousandeyes-enterprise-agent-4.2.2.cisco.tar 12 -rw- 186705920 Sep 14 2022 19:02:02 +00:00 thousandeyes-enterprise-agent-4.2.2.cisco.tar
Step 3.
Enable the IOx daemon on the router with the command iox and validate the service status.
Router#conf t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#iox Router(config)#end *Sep 15 15:41:23.992: %UICFGEXP-6-SERVER_NOTIFIED_START: R0/0: psd: Server iox has been notified to startsh *Sep 15 15:41:25.006: %SYS-5-CONFIG_I: Configured from console by console *Sep 15 15:41:32.914: %IM-6-IOX_ENABLEMENT: R0/0: ioxman: IOX is ready. Router#show iox-service IOx Infrastructure Summary: --------------------------- IOx service (CAF) : Not Running IOx service (HA) : Not Supported IOx service (IOxman) : Not Running IOx service (Sec storage) : Not Supported Libvirtd 5.5.0 : Running
Step 4.
Configure the Virtual Port interface.
interface VirtualPortGroup1 ip address 192.168.2.254 255.255.255.0 no mop enabled no mop sysid end
Step 5.
Configure the VNIC for app-hosting.
Router(config)#app-hosting appid Cat8500L_TE Router(config-app-hosting)#app-vnic gateway0 virtualportgroup 0 guest-interface 0 Router(config-app-hosting-gateway0)#guest-ipaddress 192.168.2.1 netmask 255.255.255.0 Router(config-app-hosting-gateway0)#exit Router(config-app-hosting)#guest-gateway 192.168.2.254 guest-interface 0 Router(config-app-hosting)#app-resource docker Router(config-app-hosting-docker)#prepend-pkg-opts Router(config-app-hosting-docker)#run-opts 1 "--hostname Cat8500L_TE" Router(config-app-hosting-docker)#run-opts 2 "-e TEAGENT_ACCOUNT_TOKEN=TEAGENT_ACCOUNT_TOKEN=xxxxxxxxxxxxxxxxxxxx" Router(config-app-hosting)#name-server1 8.8.8.8 Router(config-app-hosting)#start
Step 6.
Configure platform resource app-heavy. Next, save the configuration changes and reload the chassis.
Router(config)#platform resource app-heavy Please reboot to activate this template Router(config)#exit Router#wr Router#reload
Step 7.
Install the ThousandEyes agent and verify that it is deployed.
Router#app-hosting install appid Cat8500L_TE package harddisk:thousandeyes-enterprise-agent-4.2.2.cisco.tar Installing package 'harddisk:thousandeyes-enterprise-agent-4.2.2.cisco.tar' for 'Cat8500L_TE'. Use 'show app-hosting list' for progress. Router#show app-hosting list App id State --------------------------------------------------------- Cat8500L_TE DEPLOYED
Note: NAT can be used with ThousandEyes. |
The Virtual Port interface can be used as inside interface for NAT.
Example:
Router(config)#ip nat inside source list NAT interface gi0/0/0 overload Router(config)#ip access-list extended NAT Router(config-ext-nacl)#permit ip 192.168.2.0 0.0.0.255 any interface VirtualPortGroup1
description ThousandEyes 192.168.2.254 255.255.255.0 ip nat inside interface GigabitEthernet0/0/0
description WAN interface 192.168.114.10 255.255.255.252 ip nat outside
Revision | Publish Date | Comments |
---|---|---|
1.0 |
17-Apr-2023 |
Initial Release |