These NETCONF payloads are examples that can be sent to NFVIS via a NETCONF client to manage the lifecycle of the Cisco ThousandEyes Container
Note
Ensure you merge these payloads into the existing configuration to avoid deleting other configurations. Refer to your NETCONF client documentation for merging procedures.
Image Registration
From Docker Hub:
<?xml version="1.0"?>
<vm_lifecycle xmlns="http://www.cisco.com/nfvis/vm_lifecycle">
<images>
<image>
<name>te_latest</name>
<src>docker://thousandeyes/enterprise-agent:latest-agent</src>
<credentials>
<username>${DOCKER_USERNAME_HERE}</username> <!--Credentials are optional-->
<password>${DOCKER_PAT}</password>
</credentials>
<properties>
<property>
<name>http_proxy</name> <!--Proxies are optional and depend on your topology-->
<value>http://example.com:80/</value>
</property>
<property>
<name>https_proxy</name>
<value>http://example.com:80/</value>
</property>
<property>
<name>vnf_type</name>
<value>THOUSANDEYES</value>
</property>
</properties>
<locator>
<vim_id>container</vim_id>
</locator>
</image>
</images>
</vm_lifecycle>
From ThousandEyes Webserver:
<?xml version="1.0"?>
<vm_lifecycle xmlns="http://www.cisco.com/nfvis/vm_lifecycle">
<images>
<image>
<name>te_latest</name>
<src>https://downloads.thousandeyes.com/enterprise-agent/thousandeyes-enterprise-agent-0.34.0-nfvis.docker</src>
<properties>
<property>
<name>http_proxy</name> <!--Proxies are optional and depend on your topology-->
<value>http://example.com:80/</value>
</property>
<property>
<name>https_proxy</name>
<value>http://example.com:80/</value>
</property>
<property>
<name>vnf_type</name>
<value>THOUSANDEYES</value>
</property>
</properties>
<locator>
<vim_id>container</vim_id>
</locator>
</image>
</images>
</vm_lifecycle>
Flavor Registration
<?xml version="1.0"?>
<vm_lifecycle xmlns="http://www.cisco.com/nfvis/vm_lifecycle">
<flavors>
<flavor>
<name>TE</name>
<vcpus>2</vcpus>
<memory_mb>1024</memory_mb>
<root_disk_mb>8192</root_disk_mb>
</flavor>
</flavors>
</vm_lifecycle>
Deployment
<?xml version="1.0" encoding="UTF-8"?>
<vm_lifecycle xmlns="http://www.cisco.com/nfvis/vm_lifecycle">
<tenants>
<tenant>
<name>admin</name>
<deployments>
<deployment>
<name>te_nfvis</name>
<vm_group>
<name>te_nfvis</name>
<image>te_latest</image>
<flavor>TE</flavor>
<bootup_time>-1</bootup_time>
<config_data>
<configuration>
<dst>bootstrap_config</dst>
<data>{
"env_variables" : {
"TEAGENT_ACCOUNT_TOKEN" : "${TEAGENT_ACCOUNT_TOKEN}",
"TEAGENT_INET" : "${TEAGENT_INET}",
"http_proxy" : "${http_proxy}",
"https_proxy" : "${https_proxy}",
"no_proxy" : "${no_proxy}"
}
}</data>
<variable>
<name>TEAGENT_INET</name>
<val>4</val>
</variable>
<variable>
<name>TEAGENT_ACCOUNT_TOKEN</name>
<val>53rettywagbuouhw06hu65767rtyuyyui</val>
</variable>
<variable>
<name>https_proxy</name>
<val>http://example.com:80/</val>
</variable>
<variable>
<name>http_proxy</name>
<val>http://example.com:80/</val>
</variable>
<variable>
<name>no_proxy</name>
<val>.example.com,1.2.3.4</val>
</variable>
</configuration>
</config_data>
</vm_group>
</deployment>
</deployments>
</tenant>
</tenants>
</vm_lifecycle>
ThousandEyes Container Deployment Upgrade on NFVIS Using NETCONF:
<?xml version="1.0" encoding="UTF-8"?>
<vm_lifecycle xmlns="http://www.cisco.com/nfvis/vm_lifecycle">
<tenants>
<tenant>
<name>admin</name>
<deployments>
<deployment>
<name>te_nfvis</name> <!--The deployment name and vm_group name MUST match the existing deployment that you wish to upgrade-->
<vm_group>
<name>te_nfvis</name>
<image>https://downloads.thousandeyes.com/enterprise-agent/thousandeyes-enterprise-agent-0.35.0-nfvis.docker</image> <!--Only image tag needs to be updated with URL or docker tag pointing to the new TE image-->
</vm_group>
</deployment>
</deployments>
</tenant>
</tenants>
</vm_lifecycle>