Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Устаревшая версия Jira
serverSystem JIRA
serverIdbc8d3685-f9c0-329d-9054-b12aabbcb834
keySRTB-5679

...

Устаревшая версия Jira
serverSystem JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverIdbc8d3685-f9c0-329d-9054-b12aabbcb834
keySRTS-71

Оглавление

Описание

Менеджер Управления Конфигурацией (МУК) – сервис, предназначенный для обновления серверов SetCentrum, SetRetail и касс (клавиатурные, SetTouch, SCO, CSI K).

МУК входит в состав серверной части SetCentrum/SetRetail.

Функциональность и возможности

  • Использование собственного веб-приложения для обновления компонентов продукта.
  • Управление обновление через любой веб-браузер: Google Chrome, Microsoft Edge, Mozilla Firefox, Opera, Safari.
  • Обеспечение пользователя информацией о текущей версии серверов и касс.
  • Централизованное обновление версии серверов и касс.
  • Возможность проведения удаленного обновления.
  • Возможность проведения отложенного по времени обновления. Например: планирование автоматического обновления на часы, в зависимости от наименьшей загрузки кассового узла.
  • Полностью контролируемый процесс обновления.
  • Автоматизированная проверка первого запуска компонентов системы.
  • Полноценный откат к предыдущей версии с уведомлением пользователя в случае проблем при обновлении (например: обрыв связи).

Вход на страницу МУК

1. Наберите в браузере адрес в формате http://IP-адрес сервера SetRetail10:8092 → нажмите Enter.

...

3. Откроется страница МУК с сервером и кассами.

Интерфейс

Основные элементы управления на странице

Статусы касс и сервера

Иконка статусаОписание

Служба МУК кассы на связи. Касса готова к обновлению

Связь со службой МУК отсутствует. Загрузка патчей невозможна.

Столбцы списка

СтолбецОписания
Магазин

Отображается привязка объекта к магазину топологии:

  • SetCentrum - отображается прочерк. 
  • SetRetail - отображается текущий номер сервера магазина, на котором установлена служба МУК.
  • Касса:
    • SetCentrum: в случае топологии SetCentrum ↔ Кассы отображаются номера магазинов, к которым они привязаны.
    • SetRetail ↔ Кассы отображается номер магазина SetRetail к которому привязаны кассы.
Сервер

Отображается тип сервера:

  • SetCentrum
  • SetRetail
Касса

Отображается номер кассы и её тип:

  • POS - клавиатурная касса;
  • Touch - касса SetTouch;
  • SCO - касса самообслуживания (ITAB, NCR, CSI K и т.п.).
IPОтображается IP-адрес сервера и касс.
Текущая версияТекущая установленная версия для сервера или кассы
Статус

Статус обновления

Когда не происходит никаких обновлений, столбец пустой.

  • Статусы:
    • Сервер SetCentrum/SetRetail:
      • Загрузка версии ХХ.ХХ.ХХ.ХХ запланирована на [ДАТА ВРЕМЯ]
      • Перезапуск системы обновления
      • Разархивирование
      • Сохранение текущего состояния
      • Проверка прав доступа
      • Применение обновления
      • Тестовый запуск после обновления
      • Ошибка обновления, восстановления сохраненной копии
      • Ошибка при откате обновления
      • Ошибка обновления или отката на версию ХХ.ХХ.ХХ.ХХ, произведен откат к текущей версии
      • Обновление было отменено
    • Кассы:
      • Загрузка версии ХХ.ХХ.ХХ.ХХ запланирована на [ДАТА ВРЕМЯ]
      • Загрузка файлов
      • Разархивирование
      • Ожидаение перезагрузки
      • Тестовый запуск после обновления
      • Ошибка обновления, восстановления сохраненной копии
      • Ошибка при откате обновления
      • Обновление было отменено
      • Ошибка обновления или отката на версию ХХ.ХХ.ХХ.ХХ, произведен откат к текущей версии

Фильтры поиска касс

ФильтрОписание
МагазинПоиск по номеру магазина
Номер кассыПоиск по номеру кассы из списка
Тип кассыПоик по типам касс доступным из списка

IP кассы

Поиск по IP-адресу касс
ВерсияПоиск по номеру текущей вресии

Форма управления обновлением

ФункциональностьОписание
Версия

Выбирается версия на которую будет обновлен сервер или касса.

После подкладывания патчей в папку обновления ../acm/updates МУК производит валидацию целостоности патча. Если CRC, архив "битый" или файл патча пустой, то он не появится с списке обновлений

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

Если база данных сервера достаточно объемна, то данная функциональность позволит сэконоить время при его обновлении, так как в этом случае, будут выполнены только обновления основных компонентов SetRetail10: базы данных и программные файлы.

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

Автоматически обновить кассы, если она простаивает

Сократить время на обновление касс, за которыми не работают кассиры, можно с помощью данной опции. Обновление неактивной кассы произойдет автоматически.

Окно состояния кассы

КнопкаОписание

Сохранить текст состояния кассы, а также возможной ошибки текста лог-файла.

Скопировать текст состояния кассы, а также возможной ошибки текста лог-файла.

Закрыть форму с информацией по кассе.

...

Также можно скопировать или сохранить текст ошибки для отправки службу поддержки.

Служба МУК

Служба МУК устанавливается вместе с сервером SetRetail/SetCentrum.

Управление службой МУК

Windows

В оснастке служб Windows, за МУК отвечает сервис SETv10 Configuration Manager.

Linux

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

  • service SCM_SVC start - запустить службу МУК.
  • service SCM_SVC stop - остановить службу МУК.
  • service SCM_SVC restart - перезапустить службу МУК.

Файловая структура 

Папка МУК

Windows: {Disk}\{SetRetail10}\acm

...

Windows: /var/lib/jboss/acm

Назначение папок и файлов

Папка/файлОписание

backups

Папка для резервных копий файлов и папок сервера

Резервная копия баз данных сохраняется только при установленном флажке Создать резервную копию баз данных при обновлении.

bin

Системные файлы службы МУК.

conf

Конфигурационные файлы.
history
Файлы статусов обновлений.
logs
Логирование событий работы службы и обновлений.
script_after_update
Папка для обработки SQL-скриптов обновления баз данных PostgreSQL.
script_for_revert
Папка для обработки SQL-скриптов отката баз данных PostgreSQL.
updates
Папка для обновлений (файлов патчей).
web
Папка страниц веб-версии МУК.

mook.jar

Приложение службы МУК.

updater.jar

Приложение службы МУК для процесса обновления.

update.status

Статус работы службы МУК.

Информация

Файл может быть пересоздан после перезапуска службы.

Список статусов:

  • BACKUP_DB – выполнение процесса резервного копирования баз данных;
  • BACKUP_FILES – выполнение процесса резервного копирования файлов;
  • DOWNGRADE_ERROR – ошибка отката версии, откат к текущей версии произвести не удалось;
  • DOWNGRADE_RUNNING – идет процесс отката версии;
  • IN_WORK – сервер/касса работает;
  • TEST_UPDATE – проверка работоспособности сервера/касы после обновления;
  • UNZIP – распаковка файлов;
  • UPDATE_FILES – обновление файлов;
  • UPDATE_RUNNING – производится обновление;
  • UPGRADE_ERROR – ошибка обновления, откат произвести не удалось;
  • UPGRADE_ERROR_WITH_DOWNGRADE – ошибка обновления или отката версии, удалось произвести откат к текущей версии;
  • WAIT – ожидание (не запущено обновление на сервере);
  • WAIT_CASH_FOR_REBOOT – ожидание перезагрузки кассы.

topology.structure

Данные по топологии.

Информация

Файл может быть пересоздан после перезапуска службы.

Пример файла:

Блок кода
languagebash
themeMidnight
#Thu May 20 22:32:25 MSK 2021
status=UPDATE_RUNNING
patches=retail_10.2.98.0_10.2.98.1
shiftMustBeClosed=false
makeDBBackup=false


Обновление

Загрузка патчей

Для загрузки патчей перейдите в раздел портала поддержки.

Копирование патчей в папку МУК

Скопируйте патчи сервера и касс в папку для обновления на сервер SetCentrum/SetRetail.

...

Linux: /var/lib/jboss/acm/updates

Патчи для SetCentrum

Включить страницу
SetRetail10 ▪️ МУК ◾️ Как переименовать патчи для обновления SetCentrum?
SetRetail10 ▪️ МУК ◾️ Как переименовать патчи для обновления SetCentrum?

Структура файлов патчей

Тип патчаТип файла
retailПатч для обновления сервера SetRetail (сервер магазина)
centrumПатч для обновления центрального сервера SetCentrum (не выпускается отдельно, переименовывается префикс патча сервера SetRetail).
posПатч для обновления клавиатурных касс POS.
touchПатч для обновления касс SetTouch
scoПатч для обновления касс самообслуживания и CSI K.

Подготовка к обновлению и рекомендации

Включить страницу
SetRetail10 ▪️ МУК ◾️ Общие рекомендации по самостоятельному обновлению
SetRetail10 ▪️ МУК ◾️ Общие рекомендации по самостоятельному обновлению

Перед обновлением

Примечание
  • Обновление сервера и касс можно выполнять кумулятивно. Например: можно обновить кассу с версии 10.2.95.0 до 10.2.99.0.
  • Для обновления от версии к версии должна соблюдаться полная последовательность:
    • Пример: обновиться с версии 10.2.95.0 до 10.2.97.0, при этом есть версия 10.2.96.0, для которой есть патч 10.2.95.1_10.2.96.0, и патч 10.2.96.3_10.2.97.0
      • В этом случае обязательно нужно сделать цепочку из всех патчей, таким образом она будет выглядеть так:
        • 10.2.95.0_10.2.95.1
        • 10.2.95.1_10.2.96.0
        • 10.2.96.0_10.2.96.1
        • 10.2.96.1_10.2.96.2
        • 10.2.96.2_10.2.96.3
        • 10.2.96.3_10.2.97.0
  • Если сервер подключен к системе мониторинга, необходимо на время обновления отключить эту службу.

Обновление сервера

1. Установите флажок  → кликните .

...

10. Также для просмотра состояния сервера можно кликнуть по его названию.

Обновление касс

1. Установите флажок  напротив требуемых касс → кликните .

...

10. Также для просмотра состояния кассы можно кликнуть по её названию.

Откат

Примечание

Откат возможен только к предыдущему шагу! Откатиться на 2 или более версий НЕВОЗМОЖНО!

Примеры

  1. Если обновление было произведено с версии 10.2.30.0 до 10.2.33.0, тогда откатиться можно только до версии 10.2.30.0, а не до патча 10.2.30.1!
  2. Если произведены обновления с версии 10.2.65.0 до версии 10.2.66.3 кумулятивно (использованы патчи: 10.2.65.1, 10.2.65.4, 10.2.65.6, 10.2.65.9, 10.2.66.0, 10.2.66.1, 10.2.66.3), тогда произвести откат обновления обратно можно только до версии 10.2.65.0.

...

8. Версия изменит номер на предыдущий.

Дополнительная функциональность

Сохранить список касс в csv-файл 

Информация
  • Сохраняется только список касс.
  • Производится экспорт списка касс отобранных с помощью фильтров.
  • Флажки применяются только для обновления касс, а не для формаирования списка в csv-файл.

...

2. Откройте файл, например с помощью Microsoft Excel.

Изменить пароль входа на страницу МУК

1. Откройте на сервере в любом текстовом редакторе файле application.properties.

...

Блок кода
languagebash
themeMidnight
service SCM_SVC restart

Централизованная доставка файлов патчей

Включить страницу
SetRetail10 ▪️ МУК ◾️ Централизованная доставка файлов патчей по всей сети магазинов
SetRetail10 ▪️ МУК ◾️ Централизованная доставка файлов патчей по всей сети магазинов

Планирование обновлений

Якорь
upd_plan
upd_plan

Статус
colourBlue
title10.2.44.0

...

Появится статус Обновление было отменено.

Целостность патчей

Включить страницу
SetRetail10 ▪️ МУК ◾️ Целостность патчей обновления
SetRetail10 ▪️ МУК ◾️ Целостность патчей обновления

Описание технических процессов работы МУК

Какие скрипты и процессы выполняет МУК в процессе обновления?

  • SH/BAT скрипты;
  • копирование файлов;
  • выполнение *.sql скриптов;
  • обновление *.xml файлов
  • обновление *.properties файлов;
  • выполнение исполняемых *.jar файлов;
  • запуск/перезапуск служб: JBOSS, SVC_SCM, nginx.

Процесс работы МУК на кассе

Кассовый МУК состоит из 2-х частей:

...

  1. UPGRADE_PLANING - обновление запланировано, проставляется на сервере для кассы и держится, пока касса в следующий раз не обратилась за списком патчей.
  2. UPGRADE_DOWNLOADING - проставляется кассовой частью МУКа, пока все патчи скачиваются на кассу (делается это автоматически при работающей кассе).
  3. UNZIP_FILES - разархивирование патчей.
  4. UPGRADE_WAIT_FOR_REBOOT - касса скачала все необходимое и приготовилась обновляться, для этого необходим перезапуск кассового модуля.
  5. CCM_UPDATE_RESTART - далее следует алгоритм работы МУКа: если в любом патче списка обновления есть новый МУК, то обновляться касса будем именно им. Для этого новый МУК подкладывается взамен старого и необходим технический рестарт обновления. Именно для этого процесса и нужен данный статус.
  6. CHECK_PERMISSIONS - проверяется папка и файлы кассы, которая будет обновляться.
  7. BACKUP - выполняется полный бэкап, если установлен флажок (файлы в папке кассы, МУК, база данных). Запаковывается в архив в crystal-conf/backups. Если файл резервной копии создался, то он рабочий еа 100%. Хранится последние 10 бекапов.
    1. Если произошла ошибка до этого момента, то отката не будет, так как с кассой еще ничего не сделали, при ошибке в последующих шагах, будет выполнен быстрый откат.
  8. APPLY_PATCH - выполнение патчей.
  9. TEST_START - после того как все патчи успешно завершились запускаем кассу и убеждаемся, что касса запустислась (проставляется этот статус, когда кассовая часть поднимется вместе с кассой, она проставит IN_WORK, если в конечном итоге запустилась). Таким образом первая проверка, что касса запускается после обновления.
  10. FAST_REVERT - если в процессе обновления произошли ошибки или тестовый запуск неудался, то проставляется этот статус и начинается быстрый откат. Происходит восстановление из бэкапа (базу данных, файлы, настройки так как еще ничего не успело поменяться).
  11. UPGRADE_ERROR_WITH_DOWNGRADE - этот статус стоит у кассы в штатном режиме, когда не удалось обновиться, статус выделен в отдельный, чтобы на визуализации была информация о неудачном обновлении, но касса в обычном работоспособном состоянии.
  12. IN_WORK - обычное штатное состояние кассы

Процесс работы МУК на сервере

Серверный МУК чуть посложней и состоит из 3-х частей:

...

На сервере нет функциоанльности по опросуобновлений как в кассе, так как.оба сервиса установлены на одном сервере. При переключении и подвтеждения обновления на новую версии, mook.jar меняет содержимое файла update.status сервера и перезапускает службу сервера, далее сервер сам себя обновляет по алгоритму, описанному в кассе (у всех клиентов МУКа единый алгоритм обновления).

Допустимы ли расхождения в версиях кассы и сервера?

Включить страницу
SetRetail10 ▪️ МУК ◾️ Допустимы ли расхождения в версиях кассы и сервера?
SetRetail10 ▪️ МУК ◾️ Допустимы ли расхождения в версиях кассы и сервера?

"Тупиковые" патчи 

Включить страницу
SetRetail10 ▪️ МУК ◾️ Правила обновления с "тупиковых" патчей
SetRetail10 ▪️ МУК ◾️ Правила обновления с "тупиковых" патчей

...