Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Launching the vTA Image in OpenStack

Uploading the vTA Image to OpenStack

First you need to upload the vTA image to your NFV/OpenStack platform. In OpenStack’s Horizon GUI, do as follows:

  • On the navigation bar on the left, expand Project, and under Compute, click Images.
  • Click the Create Image button. Fill out the dialog that appears, and create the image.

Creating a Flavor for the vTA Image

Flavors in OpenStack are virtual hardware templates, defining RAM allocation, block storage, and number of CPU cores. In the Horizon GUI, flavors are shown and created under AdminSystemFlavors.

The minimum recommended flavor for a vTA is:

  • 1 vCPU
  • 512 MB RAM
  • 2 GB block storage

See below for some examples of flavors, including one called “netrounds.small.2GB” which corresponds to the above specifications.

Launching an Instance of the vTA Image

The final step is to launch an instance of the vTA image in OpenStack. Things will look a bit different depending on whether you are using a HEAT Orchestration Template (HOT), which is essentially a virtual machine descriptor, or whether you are specifying the details when launching the vTA. See below for instructions on how to launch the vTA:

Once you have launched the vTA image, the vTA will register with Control Center and appear in its web GUI under Test Agents. Check for the vTA name in that view to verify that the vTA has registered. You can then initiate tests and monitoring sessions on the vTA from Control Center.

Launching a vTA Image Manually in Horizon

Here is how to deploy a vTA manually, without using a HEAT Orchestration Template.

  • On the navigation bar, select ProjectComputeInstances. Then click Launch instance.
  • Under Details, enter a name for the vTA instance.
  • Under Source, select the image to boot the vTA instance from. In general, the default volume settings can be kept.
  • Under Flavor, select a suitable flavor for the vTA. Please refer back to the section Creating a Flavor for the vTA Image.
  • Under Networks, select whatever is most appropriate in your case.
  • The Network Ports section can be skipped.
  • Under Security Groups, the group chosen must satisfy the following:
    • The vTA must be able to establish an outgoing session towards its Control Center: in the cloud server case, to login.netrounds.com using TCP port 443; in the on-premise server case, to the host IP using TCP port 6000 (default).
    • UDP port 123 must be open to permit NTP time sync.
    • Traffic must be allowed on all ports needed for the testing you intend to do with the vTA.
  • The Key Pair section can be skipped, as SSH is not in use for vTAs.
  • Under Configuration, in the Customization Script box, “cloud-config” metadata must be entered specifying among other things how to connect to Control Center. The format of this metadata is given in the section Format of cloud-config Metadata below.
  • The Server Groups, Scheduler Hints, and Metadata sections can be skipped.
  • Finish by clicking the Launch Instance button at the bottom of the dialog.

A vTA image can also be deployed from the command line, but that method is not explained further in this introductory guide.

Format of cloud-config Metadata

The vTA supports only #cloud-config metadata. Its format is as shown below.

Note:

The #cloud-config and netrounds_test_agent lines must be present, and that all of the remaining lines must be indented.

Basic configuration:

The following parameters are required only if management_address_type is "static":

The following parameters are required only if the vTA is connecting to the server through an HTTP proxy:

The following parameters are required only if http_proxy_auth_type is "basic":

The following parameters are required if IPv6 is to be used for Test Agent management connections:

Launching a vTA Image Using a Heat Orchestration Template in Horizon

To deploy a vTA image in OpenStack using a Heat Orchestration Template (HOT):

  • On the navigation bar, select ProjectOrchestrationStacks.
  • Click the Launch Stack button on the far right. Select the HOT file to be used. For an example of such a file, see the section Example of HOT File.

The template will ask for input to be specified, as shown in the following screenshot:

Some of these fields have default values, as defined in the HOT file, while others are variables in the template.

After a vTA image has been booted up, it must receive its instance-specific userdata/metadata so that it can properly configure the network interfaces and call back home to Control Center. The vTA supports two ways to provide this instance-specific data:

  1. Requesting the data from a service running at http://169.254.269.254 on the compute host. This is similar to the approach taken by an EC2 instance running in Amazon WS.
  2. Reading the data from a special configuration drive that is attached to the vTA instance when it boots. This is referred to as the “config-drive method”.

The format of the instance-specific userdata/metadata is given in the section Format of cloud-config Metadata.

Using either of the above methods, it is possible to automate connecting the vTA to Netrounds Control Center.

Note:

You need to ensure that the vTA can establish an outgoing session towards its Control Center: in the cloud server case, to login.netrounds.com using TCP port 443; in the on-premise server case, to the host IP using TCP port 6000 (default). Alternatively, the vTA may connect via an HTTP proxy. In addition, UDP port 123 needs to be open to permit NTP time sync.

Example of HOT File

An example of a HOT file is provided below. Replace the boldface text in square brackets with your input.

Launching a vTA Image Using the Python OpenStack API

It is possible to use the OpenStack Nova and Keystone Python APIs to automatically launch the vTA image from a Python script:

The cloud-init file (user-data) in “userdata.txt” above has this content:

Note again that the #cloud-config and netrounds_test_agent lines must be present.

Please contact Juniper Network support at https://support.juniper.net/support/requesting-support to get example Python code.