Обновление агентов

Обновление агентов

Обновление агентов ​

Агенты можно обновлять с помощью тех же скриптов и программ, которые используются для установки агента. Если установочный скрипт или программа обнаружит существующую установку агента, то предложит обновить его, с возможностью сохранить конфигурацию.

NOTE

Инструкцию по установке дополнительного агента на хост, без обновления существующего агента можно найти в статье Установка дополнительных агентов .

Примечания для обновлений конкретных версий можно найти на странице Примечания для обновления агента.

Windows ​

Для обновления агента, запустите установочный файл нужной версии и следуйте инструкции по установке агента. После завершения установки, поля в окне первичной настройки агента должны быть заполнены значениями существующей конфигурации.

NOTE

До версии агента 5.0.0, установщик агента для Windows не поддерживал автоматическое определение установленных версий агента и их обновление. Для обновления существующего агента на версию до 5.0.0 следует удалить существующего агента и установить новую версию в эту же папку. При удалении агента остаются папки conf, log и storage.

macOS ​

Агент для macOS распространяется в виде установочного скрипта. Для обновления агента нужно получить скрипт для новой версии агента и запустить его на нужном устройстве:

console
$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

NOTE

Для каждой архитектуры системы существует свой установочный скрипт. При установке и обновлении скриптом неподходящей архитектуры агент будет перезаписан, но сервис не запустится. Исправить некорректную установку можно обновив агент скриптом для нужной архитектуры.

console
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 ​

Пакетный менеджер ​

Для обновления агента, установленного через пакетные менеджеры нужно получить пакет с новой версией агента для своего пакетного менеджера (.deb для систем Debian/Ubuntu и .rpm для Red Hat/Fedora) и установить его на нужном устройстве:

  • deb
  • rpm
console
$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
console
$wget https://downloads.cpult.ru/agent/v5.1.1/saymon-agent_5.1.1-cd6973ea_amd64.deb
$dnf install saymon-agent-5.1.1-cd6973ea.x86_64.rpm

При успешном обновлении пакетов, в консоль выведутся следующие сообщения:

  • deb
  • rpm
console
(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.
console
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!

Установочный скрипт ​

Для обновления агента с помощью установочного скрипта нужно получить скрипт для новой версии агента и запустить его на нужном устройстве:

console
$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

Скриптом обновить можно даже агента, который был установлен через пакетный менеджер.

NOTE

Для каждой архитектуры системы существует свой установочный скрипт. При установке и обновлении скриптом неподходящей архитектуры агент будет перезаписан, но сервис не запустится. Исправить некорректную установку можно обновив агент скриптом для нужной архитектуры.

console
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.

Обновление через web-интерфейс ​

NOTE

Через web-интерфейс можно обновлять только агентов одной major-версии. Например, можно обновить агента версии 5.1.1 до агента версии 5.5.0, а агента версии 4.4.71 до версии 5.0.0 – нет.

Установленные и зарегистрированные в системы агенты можно обновлять через web-интерфейс. Для этого, каждый выпуск агента имеет специальный архив обновления. Обычно, этот архив имеет название следующего вида:

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

Для обновления агента через web-интерфейс нужно выполнить следующие шаги:

  1. Открыть родительский объект агента в стандартном виде.
  2. Навести курсор на объект, представляющий зарегистрированного в системе агента.
  3. Нажать на кнопку , чтобы перейти к окну настройки агента:
  4. Нажать на кнопку Загрузить обновление объекта.
  5. Выбрать архив с обновлением.

Распаковывать архив перед загрузкой не нужно.

После успешной загрузки обновления кнопка Загрузить обновление объекта заменится на кнопку Обновление успешно загружено.