Update agents

You can update agents using the same scripts and programs used to install them. If the installer detects an existing agent installation, it will ask if you want to update and keep existing configuration.

You can find instructions on how to install an additional agent on the host without updating the existing agent installation on the Extra agents installation page.

You can find migration notes for every specific agent release on the Agent update notes page.

Windows

To update an agent, execute an installer of a necessary version and follow installation instructions. After the installation, the fields in the initial agent configuration screen should pick up the existing configuration.

Before agent version 5.0.0, Windows installer didn’t automatically detect existing SAYMON Agent installations.

To update an existing installation to a version pre-5.0.0, delete the previous installation with an uninstaller located in the installation folder and reinstall a new Agent version in the same folder. Uninstaller keeps conf, log and storage folders.

macOS

SAYMON Agent for macOS is distributed as an installation script. To install an agent, get an installation script for a new Agent version and execute it on a device where you intend to install the agent:

$wget https://downloads.cpult.ru/agent/v5.1.1/saymon-agent-5.1.1-macos-aarch64-installer.sh
$sh saymon-agent-5.1.1-macos-aarch64-installer.sh
There are separate installation scripts for each system architecture. When you install an agent with the wrong script, the installation will proceed as normal, but the service will not work. You can fix the corrupt installation by updating it with the installation script for the correct architecture.
Looks like SAYMON Agent has been already installed in /opt/saymon-agent directory.
Do you want to update application with respect to current configurations? [y/N]
y
Unpacking the distribution archive... OK
SAYMON Agent will be updated.
Copy resources from package into /opt/saymon-agent.update
Copy resources from previous installation into /opt/saymon-agent.update
'/opt/saymon-agent/storage' -> '/opt/saymon-agent.update/storage'
'/opt/saymon-agent/storage/registration.json' -> '/opt/saymon-agent.update/storage/registration.json'
'/opt/saymon-agent/conf/agent.properties' -> '/opt/saymon-agent.update/conf/agent.properties'
'/opt/saymon-agent/conf/logback-daemon.xml' -> '/opt/saymon-agent.update/conf/logback-daemon.xml'
'/opt/saymon-agent/conf/logback.xml' -> '/opt/saymon-agent.update/conf/logback.xml'
'/opt/saymon-agent/conf/logback-daemon-debug.xml' -> '/opt/saymon-agent.update/conf/logback-daemon-debug.xml'
Swap /opt/saymon-agent -> /opt/saymon-agent.backup
Swap /opt/saymon-agent.update -> /opt/saymon-agent
Restart SAYMON Agent service.
SAYMON Agent update completed.

Linux

Package manager

To update agent installed via the package manager, get the appropriate package with the new version of the Agent (.deb for Debian/Ubuntu and .rpm for Red Hat/Fedora) and install it:

  • deb

  • rpm

$wget https://downloads.cpult.ru/agent/v5.1.1/saymon-agent_5.1.1-cd6973ea_amd64.deb
$sudo dpkg -i saymon-agent_5.1.1-cd6973ea_amd64.deb
$wget https://downloads.cpult.ru/agent/v5.1.1/saymon-agent-5.1.1-cd6973ea.x86_64.rpm
$dnf install saymon-agent-5.1.1-cd6973ea.x86_64.rpm

When you successfully install a package, the console output will have the following messages:

  • deb

  • rpm

(Reading database ... 37680 files and directories currently installed.)
Preparing to unpack saymon-agent_5.1.1-cd6973ea_amd64.deb ...
Stop service
Removed "/etc/systemd/system/multi-user.target.wants/saymon-agent.service".
Backup the configuration files
saymon:x:996:
saymon:x:999:996::/opt/saymon-agent:/sbin/nologin
Unpacking saymon-agent (5.1.1-cd6973ea) over (5.1.1-cd6973ea) ...
Setting up saymon-agent (5.1.1-cd6973ea) ...
You can configure /opt/saymon-agent/conf/agent.properties
Backup directory /opt/saymon-agent.backup found. Also you can restore the configuration from there.
And restart the service
sudo systemctl restart saymon-agent
Start the service
Created symlink /etc/systemd/system/multi-user.target.wants/saymon-agent.service → /etc/systemd/system/saymon-agent.service.
Last metadata expiration check: 0:00:05 ago on Thu 01 Aug 2024 05:13:15 PM MSK.
Dependencies resolved.
==============================================================================================================================================================================
 Package                                   Architecture                        Version                                        Repository                                 Size
==============================================================================================================================================================================
Installing:
 saymon-agent                              x86_64                              5.1.1-cd6973ea                                 @commandline                               90 M

Transaction Summary
==============================================================================================================================================================================
Install  1 Package

Total size: 90 M
Installed size: 186 M
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                                                      1/1
  Running scriptlet: saymon-agent-5.1.1-cd6973ea.x86_64                                                                                                                   1/1
saymon:x:988:
saymon:x:990:988::/opt/saymon-agent:/sbin/nologin
Legacy detected. Will be purged for compatibility.
removed '/opt/saymon-agent/systemd/saymon-agent.service'
removed directory '/opt/saymon-agent/systemd'
...
removed '/opt/saymon-agent/saymon-agent.jar'

  Installing       : saymon-agent-5.1.1-cd6973ea.x86_64                                                                                                                   1/1
warning: /opt/saymon-agent/conf/agent.properties created as /opt/saymon-agent/conf/agent.properties.rpmnew
warning: /opt/saymon-agent/conf/logback.xml created as /opt/saymon-agent/conf/logback.xml.rpmnew

  Running scriptlet: saymon-agent-5.1.1-cd6973ea.x86_64                                                                                                                   1/1
Restore configuration.
You can configure /opt/saymon-agent/conf/agent.properties
Backup directory /opt/saymon-agent.backup found. Also you can restore the configuration from there.
And restart the service
sudo systemctl restart saymon-agent
Start the service


Installed:
  saymon-agent-5.1.1-cd6973ea.x86_64

Complete!

Installation script

To install an agent using an installation script, get the script for a new Agent version and execute it on a device where you intend to install the agent:

$wget https://downloads.cpult.ru/agent/v5.1.1/saymon-agent-5.1.1-linux-x64-installer.sh
$sh saymon-agent-5.1.1-linux-x64-installer.sh

You can use script to update agent installed with a package manager.

There are separate installation scripts for each system architecture. When you install an agent with the wrong script, the installation will proceed as normal, but the service will not work. You can fix the corrupt installation by updating it with the installation script for the correct architecture.
Looks like SAYMON Agent has been already installed in /opt/saymon-agent directory.
Do you want to update application with respect to current configurations? [y/N]
y
Unpacking the distribution archive... OK
SAYMON Agent will be updated.
Copy resources from package into /opt/saymon-agent.update
Copy resources from previous installation into /opt/saymon-agent.update
'/opt/saymon-agent/storage' -> '/opt/saymon-agent.update/storage'
'/opt/saymon-agent/storage/registration.json' -> '/opt/saymon-agent.update/storage/registration.json'
'/opt/saymon-agent/conf/agent.properties' -> '/opt/saymon-agent.update/conf/agent.properties'
'/opt/saymon-agent/conf/logback-daemon.xml' -> '/opt/saymon-agent.update/conf/logback-daemon.xml'
'/opt/saymon-agent/conf/logback.xml' -> '/opt/saymon-agent.update/conf/logback.xml'
'/opt/saymon-agent/conf/logback-daemon-debug.xml' -> '/opt/saymon-agent.update/conf/logback-daemon-debug.xml'
Swap /opt/saymon-agent -> /opt/saymon-agent.backup
Swap /opt/saymon-agent.update -> /opt/saymon-agent
Systemd detected.
SAYMON Agent systemd service installed and enabled.
Restart SAYMON Agent service.
SAYMON Agent update completed.

Update via web-interface

You can use web-interface to update only minor versions of the same major version of the agent. For example, you can update the agent v5.1.1 to the agent v5.5.0, but you cannot update an agent from the 4.4.71 to the 5.0.0.

Agents registered in the systems can be updated via the web-interface. Each agent release has a special update archive. Usually, this update archive has the following name structure:

saymon-agent-x.x.x-update.zip

To update the agent via the web-interface.perform the following actions:

  1. Open the agent’s parent object in the standard view.

  2. Hover over the object that represents the agent, registered in the system.

    agent object
  3. Press the button to open the agent configuration window:

    agent config
  4. Press the Upload agent update.

  5. Select agent update archive.

    You don’t need to unpack the archive before uploading it.

After the successful update the Upload agent update button will be replaced with the Update successfully uploaded button.