Learn how to install and manage Wavefront proxies.

VMware Aria Operations for Applications (formerly known as Tanzu Observability by Wavefront) offers several deployment options. During development, a single proxy is often sufficient for all data sources. In production, place a team of proxies behind a load balancer.

In most cases, a Wavefront proxy must be running in your environment before metrics begin streaming to your Operations for Applications service from a host or application.

Proxy Host Requirements

  • Internet access - Run timeout 3s curl -fIsS <api_url> from the host and make sure you get a response and not a timeout.
  • Networking:
    • By default, the proxy uses port 2878. Make sure this port is reachable from other machines on your network. You can change this default separately for different types of data (metrics, histograms, traces, etc.) in the proxy configuration file. For example, use traceListenerPorts to specify where to listen to trace data.
    • For egress, ensure that port 443 is available.

  • Memory - The proxy does not use a lot of CPU, memory, or storage. However, we recommend running the proxy on a host with at least 4GB of free memory.
  • CPU - A standalone proxy can easily handle up to 40K PPS (points per second). If you’re sending more, use multiple proxies behind a load balancer.
  • Operating system and JRE - Wavefront proxy is a Java application and can run on operating systems supported by Java. Java 8, 9, 10 or 11 is required. See the requirements in the Wavefront Proxy README file.
  • Other - Maven

Proxy Authentication Types

  • If your Operations for Applications service instance is onboarded to VMware Cloud services, the proxy requires a VMware Cloud services access token with the Proxies service role. There are two options for the proxy to retrieve an access token. You can configure the proxy with:
    • The credentials (ID and secret) of a VMware Cloud services server to server OAuth app and the ID of the VMware Cloud organization running the service.

      Before you add a proxy with an OAuth app, you must retrieve the credentials (ID and secret) of a server to server app that is assigned with the Proxies Operations for Applications service role and added to the VMware Cloud organization running the service. See How to use OAuth 2.0 for server to server apps in the VMware Cloud services documentation.

      Also, you must retrieve the VMware Cloud organization long ID. See View the Organization ID in the VMware Cloud services documentation.

    • A VMware Cloud services API token that belongs to your user account.

      Before you add a proxy with an API token, you must have a VMware Cloud services API token that belongs to the VMware Cloud organization running the service and that is assigned with the Proxies service role. See How do I generate API tokens.

  • If your Operations for Applications service instance isn’t onboarded to VMware Cloud services, the proxy requires an Operations for Applications API token.

    Before you add a proxy, you must have an API token associated with your user account or a service account with the Proxies permission. See Manage API Tokens for details.

Install a Proxy

Many users install a proxy when they set up an integration. You can also install a proxy from the UI or perform a scripted installation manually.

Install a Proxy from the UI

To install and run a proxy:

  1. Log in to your service instance and select Browse > Proxies.
  2. Click Add New Proxy.
  3. If your service instance is onboarded to VMware Cloud services, click the tab for the proxy authentication type of your choice - OAuth app or API token.
  4. Click the tab for your operating system and follow the steps on screen.

The proxy starts listening on port 2878. You can customize listener ports with the proxy configuration file.

Scripted Proxy Installation

You can use steps in an integration or perform a package install.

  • Integration: Click Integrations on the toolbar and find the host integration (Mac, Windows, or Linux). The Setup tab gives the installation script. For Mac and Linux, you can install the proxy with or without the Telegraf agent.
  • Package Install: See Installing a Proxy Manually.

Manage Proxy Services

After installing a proxy, you can start and stop the proxy service, check service status, and view the logs that are generated by the service. See Log Files for customizing your proxy, including its log configuration options.

To view the current proxies in your environment, you can use the Proxies Browser.

Start and Stop a Proxy

  • On a non-ephemeral proxy, you can start the stopped proxy service again.
  • On an ephemeral proxy, you cannot start the stopped proxy service again. The proxy is orphaned until you delete it. You can install a new proxy.
  • On an ephemeral proxy, restarting the proxy service installs a new proxy with a new ID. The old proxy becomes orphaned until you delete it.

Run the following commands on the proxy host:

OSInstructions
Linux service wavefront-proxy [start | stop | restart]
Windows cd C:\Program Files (x86)\Wavefront\bin .\nssm.exe [start | stop] WavefrontProxy
Mac OS brew services [start | stop | restart] wfproxy
Docker docker [start | stop ] <proxy_container_id>

Check Proxy Service Status

To check if the proxy is running, run the following commands on the proxy host:

OSInstructions
Linux service wavefront-proxy status

Proxy log at /var/log/wavefront/wavefront.log.

Windows cd C:\Program Files (x86)\Wavefront\bin .\nssm.exe status WavefrontProxy

Proxy log at Program Files (x86)\Wavefront\wavefront.log.

Mac OS brew services list

Proxy log at /usr/local/var/log/wavefront/wavefront.log

Test a Proxy

You can test that a proxy is receiving and sending data as follows:

  1. Send data by running the following command:

    echo -e "test.metric 1 source=test_host\n" | nc <wavefront_proxy_address> 2878
    

    where <wavefront_proxy_address> is the address of your Wavefront proxy.

  2. Log in to service instance and select Browse > Metrics.
  3. In the Metrics field, type test.metric.
  4. Click test.metric to display a chart of the metric.

Upgrade a Proxy

New proxy versions with new features are released frequently. See the Wavefront proxy GitHub page for details.

Upgrade from the UI

To upgrade from the UI, select Browse > Proxies > Add New Proxy. If an older version of the proxy exists, this process replaces it.

Upgrade from the Command Line

For Linux and Mac OS, can also upgrade a proxy from the command line as follows:

OSInstructions
Linux sudo apt-get update && sudo apt-get install wavefront-proxy
Linux (RPM) yum update wavefront-proxy
Mac OS brew update && brew upgrade wfproxy

Upgrade a Proxy on Docker

On Docker, you don’t explicitly update the proxy version, but stop the proxy and then start the new version.

If you use a volume for the proxy buffer (queue) and you update from a version before 7.2 to 7.2 or later, permissions change:

  • For earlier versions of the proxy, the proxy ran as root:root.
  • Starting with version 7.2, the proxy runs as wavefront:wavefront.

If you performed the update and data are left in the proxy buffer, follow the steps in Proxy Troubleshooting.

Uninstall a Proxy

When you upgrade a proxy, we uninstall the older version for you. You can also uninstall a proxy explicitly:

OSInstructions
Windows The precise process depends on the version of Windows you're using. You follow the process for uninstalling programs.
  1. Click Start, and then click Control Panel.
  2. Under Programs, click Uninstall a program.
  3. Select Telegraf and click Uninstall at the top.
  4. Select Wavefront Proxy and click Uninstall at the top.
Linux sudo apt-get remove wavefront-proxy sudo apt-get remove telegraf
Linux (RPM) sudo yum remove wavefront-proxy sudo yum remove telegraf
Mac OS bash -c "$(curl -s https://raw.githubusercontent.com/wavefrontHQ/homebrew-wavefront/master/sh/uninstall.sh)"

Delete a Proxy

On the Proxies Browser page, you can see the status and the details of each proxy in your environment. If you don’t need an inactive proxy, you can delete it.

  1. Log in to your service instance and select Browse > Proxies.
  2. Select the check boxes for one or more proxies that you want to delete.
  3. Click Delete and confirm.
  4. In the top-right corner, from the drop-down menu, select Deleted and verify that the proxy was successfully deleted.

See Also

Advanced users can export proxy data to a file and perform other customizations.

Here’s some additional information in the doc:

Here’s a KB article for TLS connections between two proxies: