Notes on Test Agent Applications and Test Agent Appliances
Test Agent Applications in ConfD
Among Test Agents, the (newer) Test Agent Application works a bit differently from the (older) Test Agent Appliance.
Test Agent Applications do not currently support interface configuration. Therefore, the YANG schema allows specifying an empty interface configuration for such Test Agents. See this passage for an example.
When synchronizing the ConfD database with Control Center using the
sync-from-ncc
command, you want the interface configuration to
remain empty and not to be overwritten with what is found in Control Center.
Therefore you need to use a special flag --without_interface_config
with that command when working with Test Agent Applications.
Empty Interface Configuration for Test Agent Appliance
As noted above, Test Agent Application does not support interface configuration, and it is therefore possible to omit interfaces in the YANG schema.
But there are also use cases where you might want to omit the interface configuration from a Test Agent Appliance. An example of this could be an orchestration scenario where you are spinning up a Test Agent using cloud-init, and you want the interface configuration from there to be used, instead of letting ConfD overwrite it as the Test Agent comes online.
YANG Schema Changes Regarding Undefined Interfaces
Since an empty interface configuration is now allowed (from version 2.34.0 onward), it is possible to specify any interface name as input to a task running as part of a test or monitor.
This is required to be able to use a Test Agent Application, since for these no interface names are defined in ConfD. Note, however, that this also means you can run into problems if by accident you configure a test or monitor to use a non-existing interface. So please be mindful of this.
Limitations When Registering a Test Agent Created in ConfD
When creating a Test Agent via the REST or NETCONF/YANG API, we cannot know beforehand which type it is: Test Agent Appliance or Test Agent Application. This becomes clear only after the Test Agent has registered.
Once the Test Agent has been registered and has turned into one of these concrete types, you are not allowed to re-register it as a different type of Test Agent. This means you are not allowed to first register it as a Test Agent Appliance, then re-register it as a Test Agent Application, or vice versa. If you need a Test Agent of a different type, you will need to create a new Test Agent.