Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

header-navigation
keyboard_arrow_up
close
keyboard_arrow_left
Juniper Paragon Automation User Guide
Table of Contents Expand all
list Table of Contents
file_download PDF
{ "lLangCode": "en", "lName": "English", "lCountryCode": "us", "transcode": "en_US" }
English
keyboard_arrow_right

Install Test Agent Application

date_range 23-Aug-24

The installation topic describes procedures to register the Test Agent using the official container image, build a test agent image, and deploy a native Test Agent application on an x86 machine.

The Test Agent application is a container that you deploy natively in an x86 platform or as a docker container, or as a container in a router running Junos Evolved OS. In this installation procedure, we will explore the steps to deploy Test Agents as a container.

Before You Begin

Before you begin the Test Agent installation, you must:

  • Ensure to install Docker Engine in your system that runs the latest Ubuntu version.

  • Ensure that no firewalls are blocking the connection to Paragon Automation on TCP port 6800.

Warning:

We do not recommend installing Test Agents using Junos CLI.

Deploy a Test Agent Using Container Image

To deploy a Test Agent using the container image:
  1. Download the latest image of the Test Agent. You can download the Test Agent software (Test Agent Application (amd64)) from the Software Download page or from the Docker Hub (netrounds/test-agent-application).
  2. Register the Test Agent using the register command. This connects the Test Agent with Paragon Automation. When you run the register command, specify one of the following:
    • Specify the email address and password that is used at the time of Paragon Automation installation.

    • Specify the organization's UUID. To find your organization's UUID, go to Administration > Settings in Paragon Automation and then copy the organization's UUID.

    • Specify the hostname for Active Assurance Test Agent gateway IP address.

    content_copy zoom_out_map
    user@hostname:~# docker run --rm \
    
                               -v $(pwd):/config \
                               -v /var/run/netns:/var/run/netns \
                               <Test Agent docker image> \
    
                     register --config /config/agent.conf -A\
                              --host <Host name>  \
                              --org <Organization UUID> \
                              --email <Control Center user email> \
                              --password <Control Center user password> \
                              --name <Test Agent name>
  3. Start a Test Agent using the run command:
    content_copy zoom_out_map
    user@host:~# docker run --network=host --cap-add=NET_ADMIN --device=/dev/net/tun -d \
                            --privileged -v $(pwd):/config -v /var/run/netns:/var/run/netns \
                            --log-opt max-size=10m --log-opt max-file=2 <Test Agent docker image> \
                            --config /config/agent.conf -A [-T]

Build a Test Agent Container Image

Use this procedure to build your own container image. To build a custom Test Agent container image:
  1. Download the latest image of the Test Agent. You can download the Test Agent software (Test Agent Application (amd64)) from the Software Download page.
  2. Unpack the tar file of the Test Agent software by using the following command:
    content_copy zoom_out_map
    user@host:~# tar -xvzf paa-test-agent-application_<version_architecture>.tar.gz
                 #Remove the version from the directory name
    user@host:~$ mv paa-test-agent-application_<version> paa-test-agent-application/
  3. Create a docker file in the directory where you unpacked the Test Agent software. The following docker file copies the Test Agent software to the opt/paa-test-agent-application location and configures the entry point to run the Test Agent software.
    content_copy zoom_out_map
    FROM debian:buster-slim
    
    RUN apt-get update && \
    apt-get install -y ca-certificates iproute2 socat && \
    rm -rf /var/lib/apt/lists/*
    
    COPY paa-test-agent-application/ /opt/paa-test-agent-application/
    ENTRYPOINT ["/opt/paa-test-agent-application/paa-test-agent-application"]
  4. Build the docker image by using the docker build command. Replace mycustom in the following command with any name. The name you specify here is the name of the docker that must used going forward.
    user@host:~$ docker build -t mycustom/paa-test-agent-application
  5. Register the container that you created by using the following command:
    content_copy zoom_out_map
    user@hostname:~# docker run --rm \
    
                               -v $(pwd):/config \
                               -v /var/run/netns:/var/run/netns \
                               <Test Agent docker image> \
    
                     register --config /config/agent.conf -A\
                              --host <Host name>  \
                              --org <Organization UUID> \
                              --email <Control Center user email> \
                              --password <Control Center user password> \
                              --name <Test Agent name>
  6. Start the Test Agent.
    content_copy zoom_out_map
    user@host:~# docker run --network=host --cap-add=NET_ADMIN --device=/dev/net/tun -d \
                            --privileged -v $(pwd):/config -v /var/run/netns:/var/run/netns \
                            --log-opt max-size=10m --log-opt max-file=2 <Test Agent docker image> \
                            --config /config/agent.conf -A [-T]
    Tip:

    The --privileged -v and /var/run/netns:/var/run/netns arguments enable Test Agents to use the network namespaces to route the traffic independently.

    The A option enables Test Agent to detect all available namespaces and their interfaces.

    The log-opt option is used to limit the size and the number of log files generated by Test Agent.

    The docker logs <container ID> command enables you to inspect the container log files.

Install a Test Agent as a Native Application in Linux

You can install a Test Agent application natively on an x86 machine.

  1. Download the latest image of Test Agent. You can download the Test Agent software (Test Agent Application (amd64)) from the Software Download page.
  2. Unpack the tar file and install the application by using the following commands.
    content_copy zoom_out_map
    user@hostname:~$ tar -xvzf paa-test-agent-application_<version_architecture>.tar.gz
    
    # Move the contents of the directory to a more permanent location
    
    user@hostname:~$ sudo mv paa-test-agent-application_<version> /opt/paa-test-agent-application
    
    # Set root as the user and group of the new directory
    
    user@hostname:~$ sudo chown -R root:root /opt/paa-test-agent-application
  3. Register the Test Agent by doing one of the following.
    1. Register the Test Agent by using email and password.
      content_copy zoom_out_map
      user@hostname:~$ sudo /opt/paa-test-agent-application/paa-test-agent-application register \
          --config /etc/paa-test-agent-application.conf \
          --host <Host name>  \
          --org <Organization UUID> \
          --email <Control Center user email> \
          --password <Control Center user password> \
          --name <Test Agent name>
    2. Register the Test Agent by using the API token.
      content_copy zoom_out_map
      user@hostname:~$ sudo /opt/paa-test-agent-application/paa-test-agent-application register \
          --config /etc/paa-test-agent-application.conf \
          --host <Host name>  \
          --org <Organization UUID> \
          --api-token <API token for user in Control Center> \
          --name <Test Agent name>
  4. Start the Test Agent application.
    content_copy zoom_out_map
    user@hostname:~$ /opt/paa-test-agent-application/paa-test-agent-application run\
                     --config /etc/paa-test-agent-application.conf -A
    Tip:

    The A option enables Test Agent to detect all available namespaces and their interfaces.

footer-navigation