Skip to content

Uninstall

This page shows how to remove Vesana completely and cleanly — from a single agent to the whole server instance. Pick the section that applies to you; the steps are independent.

Individual agents or collectors: easiest from within Vesana

If you delete a host, collector or tenant in Vesana and choose “Uninstall” in the dialog, the software removes itself from the device on its next contact. No manual work as below is needed. Exceptions: devices with Agent Lock enabled refuse and go dormant instead, and older versions only stop. Details: Deactivate, delete, restore. If you are removing the entire instance, this page applies.


Remove the Vesana server instance

The instance runs as a Docker Compose stack under /opt/vesana (default). One command stops all containers and removes volumes (database, Redis, uploads …), images and orphaned containers:

cd /opt/vesana
docker compose -f docker-compose.prod.yml down -v --rmi all --remove-orphans

-v deletes ALL data irreversibly

The -v flag removes the volumes — the entire monitoring database, all history, configuration and in-volume backups are gone afterwards. To keep a copy, first download a full backup via Admin → System → Backup & DR (see Backup & disaster recovery). Without -v the volumes are kept.

Then delete the active checker's setup timer, the install directory and the installer log:

systemctl disable --now vesana-ac-autoinstall.timer 2>/dev/null
rm -f /etc/systemd/system/vesana-ac-autoinstall.timer \
      /etc/systemd/system/vesana-ac-autoinstall.service
systemctl daemon-reload

rm -rf /opt/vesana
rm -f /var/log/vesana-install.log

Verify nothing is left:

docker ps -a | grep -i vesana        # should be empty
docker volume ls | grep -i vesana    # should be empty
docker images | grep -i vesana       # should be empty

Active checker on the server

The active checker (Active Collector) runs as a systemd service directly on the server host, not in a container — the installer sets it up automatically. Remove it as well — see Remove the active collector.

Other possible leftovers

  • System nginx (bare-metal setups): If you put your own nginx reverse proxy in front of Vesana, remove the Vesana site from /etc/nginx/sites-enabled/ and reload nginx (nginx -s reload).
  • Let's Encrypt certificate: Optionally certbot delete --cert-name <your-domain>.
  • Cron/timers: Vesana creates no cron jobs. The server's only systemd timer (vesana-ac-autoinstall.timer) is removed by the steps above.

Remove the agent

The agent runs as the systemd service vesana-agent. To uninstall:

# Stop and permanently disable the service
sudo systemctl disable --now vesana-agent

# Remove unit file, binary, config, logs and state
sudo rm -f  /etc/systemd/system/vesana-agent.service
sudo rm -f  /usr/local/bin/vesana-agent
sudo rm -rf /etc/vesana-agent
sudo rm -rf /var/log/vesana-agent
sudo rm -rf /var/lib/vesana-agent

# Reload systemd
sudo systemctl daemon-reload
sudo systemctl reset-failed vesana-agent 2>/dev/null || true

Verify: systemctl status vesana-agent should report "Unit vesana-agent.service could not be found".

A second agent is called vesana-agent-<name> — same steps with the suffix on service, binary and directories.

The agent runs as the Windows service VesanaAgent and is registered as a regular program.

Recommended (GUI): Settings → Apps → Installed apps → "Vesana Agent" → Uninstall. The bundled uninstaller stops the service, removes the program and the registry entry.

Alternative (PowerShell as Administrator):

# Run the NSIS setup's uninstaller (default install path)
& "$env:ProgramFiles\Vesana Agent\uninstall.exe" /S

# If the service unexpectedly remains, remove it forcibly:
Stop-Service VesanaAgent -ErrorAction SilentlyContinue
sc.exe delete VesanaAgent

Remove the configuration too (optional):

Remove-Item -Recurse -Force "$env:ProgramData\Vesana\Agent" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:APPDATA\Vesana\Agent"     -ErrorAction SilentlyContinue

Remove the collector

The collector runs as the systemd service vesana-collector.

# Stop and disable the service (and the uninstall helper)
sudo systemctl disable --now vesana-collector vesana-collector-uninstall.path vesana-collector-update.path 2>/dev/null

# Remove unit files, program, config, state and plugins
sudo rm -f  /etc/systemd/system/vesana-collector.service \
            /etc/systemd/system/vesana-collector-uninstall.path \
            /etc/systemd/system/vesana-collector-uninstall.service \
            /etc/systemd/system/vesana-collector-update.path \
            /etc/systemd/system/vesana-collector-update.service \
            /usr/local/sbin/vesana-collector-uninstall \
            /usr/local/bin/vesana-collector
sudo rm -rf /var/lib/vesana-collector /etc/vesana /etc/vesana-lock/collector /opt/vesana-collector
# Only if there is no Active Collector on the same machine:
sudo rm -rf /var/lib/vesana-active-collector
sudo userdel vesana-collector 2>/dev/null || true

sudo systemctl daemon-reload
sudo systemctl reset-failed vesana-collector 2>/dev/null || true

The uninstall helper runs exactly these steps when you delete the collector in Vesana with “Uninstall”.


Remove the active collector

The active collector (active checker) runs as its own systemd service vesana-active-collector under the system user vesana-ac. Further instances on the same machine are called vesana-active-collector-<name> — the same steps with the suffix on service and directories.

# Stop and disable the service
sudo systemctl disable --now vesana-active-collector vesana-active-collector-update.path

# Remove unit file, binary, config and state
sudo rm -f  /etc/systemd/system/vesana-active-collector.service \
            /etc/systemd/system/vesana-active-collector-update.path \
            /etc/systemd/system/vesana-active-collector-update.service
sudo rm -f  /usr/local/bin/vesana-active-collector
sudo rm -rf /etc/vesana-active-collector
sudo rm -rf /var/lib/vesana-active-collector
sudo rm -rf /opt/vesana-active-collector
sudo rm -rf /etc/vesana-lock/active-collector
# Only without a regular collector on the same machine:
sudo rm -rf /var/lib/vesana-collector

sudo systemctl daemon-reload
sudo systemctl reset-failed vesana-active-collector 2>/dev/null || true

# Remove the system user (optional)
sudo userdel vesana-ac 2>/dev/null || true

Afterwards

  • Tidy up devices in Vesana: If you removed agents/collectors without deleting them in the UI first, they will show as "offline" / "No Data" for a while. Delete the affected hosts/collectors in the Vesana UI.
  • License: There is no activation server to sign off from — removing the instance is all it takes.