Upgrade Ubuntu 16.04 Xenial-Based ThousandEyes Appliances

As per the ThousandEyes Enterprise Agent support lifecycle, ThousandEyes virtual and physical appliances based on the Ubuntu 16.04 Xenial operating system will reach their End of Support stage at the end of April 2021.

Unless these appliances are upgraded or otherwise migrated to a currently supported operating system, ThousandEyes platform will stop accepting data submitted by these Enterprise Agents at the end of June 2021.

To continue using your Xenial-based appliances, one of the following actions is required:

  • Perform an in-place upgrade: Performing an in-place upgrade is, in most cases, the simplest method of keeping your appliances supported. The main part of this article describes the in-place upgrade process.

  • Migrate the agent: If an in-place upgrade is not the right option for you, you can migrate the agent to one of the other deployment options or other supported operating systems. Consult the Related Information section at the bottom of this article.

Identify Appliances that Require an Upgrade

In the Cloud & Enterprise Agents > Agent Settings > "Agents" tab section of the web portal, use the AGENT STATUS > OS Version filter to display all Ubuntu 16.04.x LTS based agents. The agents requiring your attention have a yellow warning icon.

To get more information, you can either hover your mouse over the agent status, or you can expand the agent list item and observe the version details displayed on the right-hand side panel:

The agents that you are looking for have the following information displayed:

  • Operating system version information (3) contains Ubuntu 16.04.x LTS. When relevant, this section's text is displayed in red color, as shown in the figure above.

  • Agent installation type (4) should be one of the following: Virtual Appliance, Physical Appliance, or Hyper-V Appliance. Whether the appliance is locked or unlocked should not make a difference, provided that you have not changed the configuration of an unlocked appliance beyond what automatic upgrade process is expecting.

Once you've identified appliances requiring your attention and decided to perform the in-place upgrade, proceed to the next section to find the upgrade instructions.

Performing the In-Place Upgrade

Prerequisites

The following prerequisites need to be met for the appliance to be eligible for the upgrade process described below:

  • A 64-bit operating system only

  • Ubuntu 16.04 Xenial-based appliances only

  • Enough free disk space (5GB)

  • Working internet connection (direct or proxied)

  • Access to Ubuntu and ThousandEyes APT repositories (connectivity requirements are fully described in Firewall Configuration for Enterprise Agents)

  • Appliance fully updated to the latest ThousandEyes software versions

Enterprise Agent appliances will not perform tests or communicate with the platform while the upgrade process takes place.

Upgrade Process Overview

Once started, the upgrade process runs as follows:

  • Initial checks are performed, to make sure the environment is suitable for the upgrade

  • The agent process is stopped, to prevent it from interfering with the upgrade

  • The operating system upgrade is started (the "pre-reboot" stage)

  • Once the operating system upgrade completes, the appliance is automatically rebooted

  • The "post-reboot" part of the upgrade is started (reinstalls the ThousandEyes agent software and starts the services)

Depending on the speed of your internet connection, your ISP's quality of connectivity to the relevant APT repository network, and the CPU and I/O speed of your hardware, the pre-reboot and post-reboot stages can take anywhere from 5 to 30 minutes each.

Create a VM Snapshot (optional)

For virtual appliances, if you have the ability to create a snapshot of a virtual machine, it is highly recommended to do so. This will enable you to instantly revert the appliance to the last known good state if something unexpected happens during the upgrade.

Connect to SSH

Appliance in-place upgrades are started from the SSH console. If needed, consult the Windows or Mac OS X / Linux guide for instructions on how to connect to the appliance's SSH service.

Confirm the ThousandEyes Package Version

To confirm the package is updated to the latest, run the following command in a terminal:

[email protected]:~$ apt-cache policy te-appliance-sidecar
te-appliance-sidecar:
Installed: 0.14-1
Candidate: 0.14-1

Once you confirm that the 0.14-1 package is installed, your agent is ready to perform the upgrade.

If the package is not installed, contact ThousandEyes Customer Support

Start the Upgrade

Run the following command to start the upgrade process:

sudo te-appliance-upgrade

The start of the output that the upgrade process produces should look something like this:

te-appliance-upgrade: Getting ubuntu release.
te-appliance-upgrade: Currently running on xenial
te-appliance-upgrade: Necessary packages are present, continuing with upgrade process.
te-appliance-upgrade: Initiating upgrade process.
...

It is important the upgrade process is not interrupted.

Wait for the Upgrade Process to Complete

As mentioned in the Upgrade process overview section above, the upgrade process can take anywhere between 10-60 minutes. Once you see "te-appliance-upgrade: Done" on the appliance's screen, it means the appliance is rebooted to enter the "post-boot" upgrade, and you won't see any progress on the upgrade screen.

However, customers can leverage the following command to verify if the post-boot upgrade process is still running:

ps aux | grep upgrade | grep -v grep

As long as the command above produces any output, the post-boot upgrade process is still running. Example output that is produced when the post-boot upgrade is still ongoing:

root 625 0.0 0.3 22056 3124 ? S 13:49 0:00 /bin/bash /usr/local/te_upgrade/upgrade.sh
root 626 0.0 0.1 22052 1948 ? S 13:49 0:00 /bin/bash /usr/local/te_upgrade/upgrade.sh
root 627 0.0 0.1 22056 1952 ? S 13:49 0:00 /bin/bash /usr/local/te_upgrade/upgrade.sh
root 629 0.0 0.1 25096 1372 ? S 13:49 0:00 logger -s -t te-appliance-upgrade
root 631 0.0 0.1 25096 1372 ? S 13:49 0:00 logger -s -t te-appliance-upgrade

The actions of the upgrade process can be followed with this command:

tail -f /var/log/syslog \
/var/log/dpkg.log \
/var/log/thousandeyes-upgrade-appliance-apt.log

Relevant content in the /var/log/syslog file will be prefixed with the te-appliance-upgrade text:

<TIMESTAMP> <HOSTNAME> te-appliance-upgrade: Test agent package downloaded
<TIMESTAMP> <HOSTNAME> te-appliance-upgrade: ThousandEyes repositories reachable, proceeding with distribution upgrade
<TIMESTAMP> <HOSTNAME> te-appliance-upgrade: Main disk identified and passed to debconf.
<TIMESTAMP> <HOSTNAME> te-appliance-upgrade: Checking for a new Ubuntu release

Upgrade Verification

Once the upgrade process has completed successfully, the agent information panel in the web UI will present the following information:

The important details to pay attention to are:

  1. Agent continuously checking in: Once the upgrade is complete, the agent should be checking in with the platform roughly once every minute.

  2. Operating system version updated: The Ubuntu 18.04.x LTS text should be displayed.

  3. Agent and BrowserBot versions up to date: The upgrade process installs the latest available software versions. This section should not be showing any red text indicating obsolete software versions.

Getting Help

If you encounter any issues while upgrading your appliances, contact the ThousandEyes Customer Engineering team and we'll help you out instantly.

Related Information

The following resources contain further information: