Обновление Визион до версии 1.9
ВАЖНО
До версии 1.9 могут быть обновлены только версии Визион 1.8 и 1.8.1. Если используемая версия Визион ниже указанных, сначала обновите её до 1.8 или 1.8.1, следуя соответствующей инструкции.

Особенности обновления:

  • После обновления некоторые компоненты нужно будет настроить вручную, а некоторые удалить и установить заново.

  • Режим обновления не предусматривает полное обновление конфигурации, а также обновление компонентов Визион.Прокси и Визион.Агент, расположенных на удалённых узлах (plagent, vmagent и экспортеры).

  • Конфигурационные файлы NGINX заменяются файлами, входящими в состав дистрибутива.

  • В конфигурационный файл vision_core добавляются новые поля со значениями по умолчанию.

  • В Ansible Vault добавляются новые ключи со значениями по умолчанию.

  • Секрет vault.database.password заменяется на vault.database.dsn.

Подготовка#

Перед обновлением сохраните следующие конфигурации:

  • Параметры интеграций со сторонними системами.

    Например, настройки vmagent_proxy, если он настроен на отправку метрик в сторонний Prometheus.

  • Конфигурационные файлы sudo, если вносили в них изменения вручную:

    • /etc/sudoers.d/vision

    • /etc/sudoers.d/plagent

    При обновлении эти файлы будут перезаписаны. Если вы добавляли в эти файлы настройки для плагина bash_exporter, перенесите их в файл /etc/sudoers.d/vision_bash_exporter.

  • Другие изменения в файлах конфигурации компонентов Визиона, выполненные вручную.

Резервное копирование#

Скрипт setup.sh автоматически создаёт резервную копию действующей конфигурации перед обновлением. Архив с резервной копией размещается в директории /opt/skala-r/vision/. Имя архива формируется по шаблону:

backup-<datetime>

Здесь <datetime> — дата и время запуска скрипта setup.sh с точностью до секунды.

Архив резервной копии включает в себя:

  • файл с секретами Ansible Vault .secrets_vault;

  • конфигурационные файлы NGINX;

  • конфигурационные файлы PostgreSQL postgresql.conf и pg_hba.conf;

  • конфигурационные файлы из директории /opt/skala-r/etc/vision/server/.

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

Удаление предыдущих версий компонентов#

Через интерфейс Визиона деинсталлируйте все элементы каждого ПАК из разделов Агенты и Плагины. Для этого:

  1. В интерфейсе Визиона в разделе Объекты выберите ПАК.

  2. Деинсталлируйте все элементы во вкладках:

    • Агенты метрик

    • Агенты логов

    • Плагины

Обновление Визион.Сервера#

В директории дистрибутива выполните следующие действия:

  1. Запустите установку зависимостей:

    • Установка из репозиториев ОС (рекомендуется).

      ./setup-sh -g
      
    • Установка из дистрибутива.

      ./setup.sh -p
      

    Для ОС РЕД ОС 8 и ALT Linux СП р10 (c10f2) будет предложено установить Postgres Pro. Подробности см. в разделе Обновление PostgreSQL .

  2. Если пароль служебной БД отличается от значения по умолчанию, в конфигурационном файле _deploy_settings.yml в поле vision_db_pass укажите действующее значение.

  3. Запустите обновление компонентов Сервера:

    ./setup.sh -u
    
  4. Запустите скрипт setup.sh без параметров и выберите пункт 8. Проверка работы сервисов.

    Критерием корректности развертывания является значение active для всех сервисов, приведённых в выводе скрипта.

  5. Убедитесь, что в веб-интерфейсе Визиона в разделе Настройки → О программе указана новая версия Визион.

Переустановка агентов и плагинов#

Установите необходимые агенты и плагины, следуя Руководству администратора .

Установка и обновление агента Платформы#

Для установки plagent выполните следующие действия:

  1. Сформируйте инвентори-файл для нужного ПАК во вкладке Объекты.

  2. Запустите скрипт ./setup.sh из директории дистрибутива.

  3. Выберите пункт Установка plagent.

  4. Выберите сформированный инвентори-файл.

  5. При необходимости внесите изменения в инвентори-файл, например, актуализируйте значения переменных ansible_user, ansible_ssh_pass, ansible_become_user и ansible_become_password для доступа к узлам по SSH.

Донастройка параметров Визиона#

После обновления проверьте конфигурацию Визиона и внесите необходимые изменения. Для этого сравните действующую конфигурацию с эталонной, например, с помощью утилиты diff:

diff -ry /path/to/reference /path/to/current/config

Здесь:

  • /path/to/reference — путь к файлу или директории в эталонной конфигурации;

  • /path/to/current/config — путь к файлу или директории в действующей конфигурации.

Для большего удобства можно добавить в вызов команды дополнительные аргументы:

diff -ry -W 200 --left-column /path/to/reference /path/to/current/config

Здесь:

  • -W — желаемая ширина столбцов (по умолчанию 130);

  • --left-column — вывод только левой колонки общих строк.

При наличии новых ключей, фрагментов и файлов добавьте их в действующую конфигурацию.

Не рекомендуется копировать файлы конфигурации из директории /opt/skala-r/vision/server/default, так как в этом случае будут перезаписаны пользовательские изменения.

Nginx#

Эталонная конфигурация:

  • /opt/skala-r/vision/server/default/nginx/

  • /opt/skala-r/vision/server/default/nginx/nginx.conf

  • /opt/skala-r/vision/server/default/nginx/sites-available.d/

  • /opt/skala-r/vision/server/default/nginx/snippets/

Действующая конфигурация:

  • /etc/nginx/nginx.conf

  • /etc/nginx/sites-available.d/

  • /etc/nginx/snippets/

PostgreSQL#

Эталонная конфигурация:

  • /opt/skala-r/vision/server/default/postgresql/<version>

  • /opt/skala-r/vision/server/default/postgresql/<version>/postgresql.conf

  • /opt/skala-r/vision/server/default/postgresql/<version>/pg_hba.conf

Путь к действующим конфигурационным файлам зависит от используемого дистрибутива Linux и версии PostgreSQL.

  • РЕД ОС, PostgreSQL 12:

    • /var/lib/pgsql/data

    • /var/lib/pgsql/data/postgresql.conf

    • /var/lib/pgsql/data/pg_hba.conf

  • РЕД ОС, PostgreSQL 16

    • /var/lib/pgsql/16/data

    • /var/lib/pgsql/16/data/postgresql.conf

    • /var/lib/pgsql/16/data/pg_hba.conf

  • РЕД ОС, Postgres PRO 16

    • /var/lib/pgpro/std-16/data/

    • /var/lib/pgpro/std-16/data/postgresql.conf

    • /var/lib/pgpro/std-16/data/pg_hba.conf

  • ALT Linux, PostgreSQL

    • /var/lib/pgsql/data

    • /var/lib/pgsql/data/postgresql.conf

    • /var/lib/pgsql/data/pg_hba.conf

  • ALT Linux, Postgres PRO 16

    • /var/lib/pgpro/std-16/data/

    • /var/lib/pgpro/std-16/data/postgresql.conf

    • /var/lib/pgpro/std-16/data/pg_hba.conf

  • Astra Linux Special Edition

    • /etc/postgresql/11/main/

    • /etc/postgresql/11/main/postgresql.conf

    • /etc/postgresql/11/main/pg_hba.conf

Компоненты Визион#

Эталонная конфигурация:

  • /opt/skala-r/vision/server/default/server/grafana

  • /opt/skala-r/vision/server/default/server/snmp_notifier/web.yml

  • /opt/skala-r/vision/server/default/server/victorialogs/

  • /opt/skala-r/vision/server/default/server/vision_core

  • /opt/skala-r/vision/server/default/server/vision_taskdaemon

  • /opt/skala-r/vision/server/default/server/vision_utilizer/config.yml

Действующая конфигурация:

  • /opt/skala-r/etc/vision/server/grafana

  • /opt/skala-r/etc/vision/server/snmp_notifier/web.yml

  • /opt/skala-r/etc/vision/server/victorialogs/

  • /opt/skala-r/etc/vision/server/vision_core/

  • /opt/skala-r/etc/vision/server/vision_taskdaemon

  • /opt/skala-r/etc/vision/server/vision_utilizer/config.yml

Во время обновления автоматически запускается скрипт /opt/skala-r/vision/tools/update_server_configs.sh. Он обновляет содержимое файла /opt/skala-r/etc/vision/server/vision_core/config.yml. Несмотря на это, рекомендуется всегда проводить контрольную сверку файлов конфигурации.

После внесения изменений в конфигурацию:

  1. Запустите скрипт /opt/skala-r/vision/tools/update_server_configs.sh с привилегиями суперпользователя.

  2. Перезапустите сервисы nginx, postgresql и victorialogs, если для них тоже менялась конфигурация:

    systemctl restart nginx.service postgresql.service victorialogs.service
    
ПРИМЕЧАНИЕ
Для компонентов, директории и файлы конфигурации которых не указаны выше, производится автоматическая генерация конфигурационных файлов через запуск скрипта /opt/skala-r/vision/tools/update_server_configs.sh. Сгенерированные конфигурационные файлы основываются на файле конфигурации vision_core /opt/skala-r/etc/vision/server/vision_core/config.yml или специфичном для компонента файле: grafana.yml, backup.yml.

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

  • SMTP-шлюз: в интерфейсе Визиона в разделе Настройки → Настройки отправки → SMTP.

  • SNMP-шлюз: через API.

Все ранее вручную настроенные параметры в файлах конфигурации (например, config.yml, .secrets_vault и прочие) при необходимости донастроить, если появились новые параметры.

Конфигурацию NGINX, если она изменялась вручную, необходимо сконфигурировать заново.

При изменении конфигурационных файлов перезапустите затронутые сервисы и запустите скрипт /opt/skala-r/vision/tools/update_server_configs.sh.

Обновление дашбордов Grafana#

Удалите старые дашборды Grafana и добавьте новые, следуя инструкции .