Обновление Визион до версии 1.7

Обновление до версии 1.7 поддерживается с версий 1.5.2 и 1.6. Если версия Визиона меньше указанных, необходимо произвести сначала обновление по соответствующей инструкции.

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

Обновление PostgreSQL описано в отдельной инструкции .

Обновление Визиона предусматривает:

  • бэкап конфигурации;
  • обновление компонентов Визиона;
  • копирование эталонной конфигурации;
  • обновление файлов конфигурации NGINX (старые файлы конфигурации будут перезаписаны);
  • сохранение пользовательской конфигурации (за исключением конфигурации NGINX);
  • добавление в файл конфигурации vision_core новых полей со стандартными значениями;
  • добавление новых ключей со стандартными значениями в vault.

Обновление Визиона не предусматривает полное обновление конфигурации и удаленных компонентов(плагины и агенты).

Подготовка к обновлению#

Сохранение конфигураций#

Обязательно перед обновлением необходимо сохранить следующие конфигурации:

  • Параметры интеграций со сторонними системами. Например, если vmagent_proxy был настроен на отправку метрик в сторонний Prometheus.

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

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

Перед обновлением необходимо деинсталлировать все агенты и плагины всех ПАК в интерфейсе Визиона:

  1. в интерфейсе Визиона в разделе “Объекты” необходимо выбрать ПАК;
  2. деинсталлировать все элементы во вкладке “Агенты”;
  3. деинсталлировать все элементы во вкладке “Плагины”.

Чтобы убедиться, что все элементы деинсталлированы успешно, необходимо проверить, что статус каждого элемента во вкладках “Агенты” и “Плагины” — “Не установлен”;

После выполнения обновления необходимо повторно провести установку во вкладках “Агенты” и “Плагины”.

Обновление#

Для обновления Визиона необходимо выполнить следующие действия:

  1. Из директории дистрибутива запустить установку пакетов зависимостей:

    ./setup.sh -p
    

    Если запустить установку с параметром -g, зависимости будут установлены из репозиториев ОС:

    ./setup.sh -g
    
  2. Запустить установку сервера Визиона:

    ./setup.sh -u
    

    Начнется процесс обновления.

    Перед обновлением будет создан бэкап конфигурации сервера Визиона, куда будут входить:

    • содержимое хранилища секретов .secrets_vault;
    • конфигурация NGINX;
    • конфигурационные файлы postgresql.conf, pg_hba.conf для PostgreSQL;
    • файлы конфигурации из директории /opt/skala-r/etc/vision/server/.

    Перед обновлением будет осуществлена проверка установленных пакетов. Если есть неустановленные зависимости, то обновление будет прервано.

  3. После успешного обновления необходимо запустить скрипт ./setup.sh и выбрать опцию “Проверка работы сервисов”. Критерием корректности развертывания является значение “active” для всех сервисов, которые приведенны в таблице в выводе работы скрипта.

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

  5. Установить plagent:

    1. Сформировать инвентори-файл для нужного ПАК во вкладке “Объекты”.
    2. Запустить скрипт ./setup.sh из директории дистрибутива и выбрать опцию “Установка plagent”.
    3. Выбрать сформированный инвентори-файл. При необходимости отредактировать его, указав значения ключей ansible_user, ansible_ssh_pass, ansible_become_password для доступа к узлам по SSH.

Доконфигурирование параметров Визиона#

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

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

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

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

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

Для сверки конфигураций используйте утилиту diff, указав пути к нужным файлам или каталогам, например:

diff -ry /path/to/left /path/to/right

Для улучшения вывода используйте дополнительные аргументы, например:

diff -ry -W 200 --left-column /path/to/left /path/to/right

где:

  • -W 200 — вывод не более 200 знаков в строке (по умолчанию 130);
  • --left-column — вывод только левой колонки общих строк.

NGINX#

Конфигурационные файлы:

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

Эталонные конфигурационные файлы:

  • /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

AlertManager#

Конфигурационный файл: /opt/skala-r/etc/vision/server/alertmanager.

Эталонный конфигурационный файл: /opt/skala-r/vision/server/default/server/alertmanager.

Grafana#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/grafana.

Эталонные конфигурационные файлы/opt/skala-r/vision/server/default/server/grafana.

snmp_notifier#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/snmp_notifier.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/snmp_notifier.

VictoriaLogs#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/victorialogs/.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/victorialogs/.

VictoriaMetrics#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/victoriametrics_st.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/victoriametrics_st.

vision_alertcollector#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/vision_alertcollector.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/vision_alertcollector.

vision_backup#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/vision_backup.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/vision_backup

vision_core#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/vision_core.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/vision_core.

vision_iamsyncer#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/vision_iamsyncer.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/vision_iamsyncer.

vision_taskdaemon#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/vision_taskdaemon.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/vision_taskdaemon.

vision_utilizer#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/vision_utilizer.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/vision_utilizer.

vmalert_st#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/vmalert_st.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/vmalert_st.

vmalert_vl#

Конфигурационные файлы: /opt/skala-r/etc/vision/server/vmalert_vl.

Эталонные конфигурационные файлы: /opt/skala-r/vision/server/default/server/vmalert_vl.

PostgreSQL#

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

  • RedOS, PostgreSQL 12:

    • /var/lib/pgsql/data/postgresql.conf
    • /var/lib/pgsql/data/pg_hba.conf
  • RedOS, PostgreSQL 16:

    • /var/lib/pgsql/16/data/postgresql.conf
    • /var/lib/pgsql/16/data/pg_hba.conf
  • ALT Linux:

    • /var/lib/pgsql/data/postgresql.conf
    • /var/lib/pgsql/data/pg_hba.conf
  • Astra Linux:

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

Эталонные конфигурационные файлы:

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

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

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

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

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

    • SNMP-шлюз: через API как указано в п. 9 Руководства Администратора Визион

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

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

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

  • При необходимости перенастроить ролевую модель согласно руководства администратора.