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

Ключ

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

Установка

(Опционально)Если обязательно нужно сохранить всю историю выполнения запросов и логи Апдейтера 1.X в новых версиях, тогда переименуйте файлы eventlog.db и logfile.log в updater.db и updater.log соответственно.

Предупреждение

Для работы нового «Апдейтера» на операционных системах семейства RHEL нужно установить версию пакета unzip-6.0-24 или выше.

Установка и настройка

...

Сохраните копию старой утилиты, например в /tmp, после чего очистите корневой каталог утилиты

Блок кода
languagebash
cp -r /opt/updater /tmp
rm -R  /opt/updater/*

...

Если ранее пользователь утилиты был не updater, создайте отдельного пользователя на всех серверах приложений, для которых требуется обновление справочника и поменяйте права на директории  самой утилиты:

Блок кода
languagebash
useradd updater
chown -R updater:updater /opt/updater

...

Для директорий справочников приложений настройте пользователей выдайте права 777 и SGID бит, пути к справочникам можно посмотреть в файлах конфигурации старой утилиты (/tmp/updater/updater.env или /tmp/updater/custom.env):

Блок кода
languagebash
chown -R updater:suggestions /opt/suggestions/dictionaries
chmod -R 2777 /opt/suggestions/dictionaries


chown -R updater:factor /opt/factor/dictionaries
chmod -R 2777 /opt/factor/dictionaries

chown -R updater:cdi /opt/cdi/dictionaries
chmod -R 2777 /opt/cdi/dictionaries

...

На сервере Апдейтера также создайте корневые директории справочников для нужных продуктов и выдайте права:

Блок кода
languagebash
# Подсказки
mkdir -p /opt/suggestions/dictionaries
chown -R updater /opt/suggestions/dictionaries
chmod -R 2777 /opt/suggestions/dictionaries


# Фактор
mkdir -p /opt/factor/dictionaries
chown -R updater /opt/factor/dictionaries
chmod -R 2777 /opt/factor/dictionaries

# Единый клиент
mkdir -p /opt/cdi/dictionaries
chown -R updater /opt/cdi/dictionaries
chmod -R 2777 /opt/cdi/dictionaries

...

Скачайте в директорию /tmp файлы утилиты с

https://fs.hflabs.ru/%ваш_спейс%/updater

...

/:

  • updater — исполняемый файл
  • updater.service — юнит-файл для настройки службы

Переместите файл updater

...

в директорию «Апдейтера» и выдайте права на выполнение

Блок кода
languagebash

...

mv /tmp/

...

updater

...

 

...

/opt/updater/

...

 

...

&& 

...

chown updater: /opt/updater/updater

...

 && chmod 755 /opt/updater/updater

...

Настройка службы

Переместите юнит-файл updater.service в директорию с юнитами и настройте автозапуск для службы:

...

Блок кода
languagebash

...

mv /tmp/updater.

...

service /

...

Оставьте в нём только строки с переменными из списка ниже:

Раскрыть
Блок кода
languagebash
FACTOR_DICTIONARY_HOME
FACTOR_USERNAME

SUGGESTIONS_DICTIONARY_HOME
SUGGESTIONS_USERNAME
SUGGESTIONS_API_PORT

CDI_DICTIONARY_HOME
CDI_USERNAME
CDI_API_USERNAME
CDI_API_PASSWORD
CDI_API_PORT

...

Укажите значения для недостающих обязательных настроек:

Раскрыть
Блок кода
languagebash
titleupdater.env
# Логин и пароль для авторизации в Artifactory (если у вас их нет, обратитесь в поддержку)"
ARTIFACTORY_LOGIN="..."
ARTIFACTORY_PASSWORD="..."


# Использовать ли команду chown для изменения прав (по умолчанию false)
WITH_ROOT="false"


# Хост, на котором работает API Фактора (если отличается от localhost)
FACTOR_API_HOST="..."

# Порт, на котором работает API Фактора 
FACTOR_API_PORT="..."

# Имя заказчика в адресе к Фактору http://host:18080/factor-service-<имя заказчика>
FACTOR_API_TAG="..."


# Хост, на котором работает API Подсказок (если отличается от localhost)
SUGGESTIONS_API_HOST="..."

# Пароль пользователя API Подсказок (если включена авторизация в админку)
SUGGESTIONS_API_PASSWORD="..."


# Хост, на котором работает API Единого клиента (если отличается от localhost)
CDI_API_HOST="..."

...

Если необходимо, укажите значения для дополнительных настроек:

Раскрыть
Блок кода
languagebash
titleupdater.env
# Путь к Artifactory по умолчанию:
# ARTIFACTORY_HOST="https://maven.hflabs.ru/artifactory/repo"
# Если есть локальное зеркало Artifactory, достаточно раскрыть эту переменную,
# чтобы Апдейтер переключился с maven.hflabs.ru на локальное зеркало, например:
# ARTIFACTORY_HOST="http://maven.mycorp.ru/artifactory/hflabs-maven-remote"  

# Имя пользователя, под которым работает Апдейтер (используется для очистки старых справочников на удаленном сервере)
UPDATER_USERNAME="..." 

# Управление проверкой сертификата Artifactory.
# По умолчанию значение true.
CHECK_CERTIFICATE = "..."

# Ограничивает скорость скачивания словарей (указывается в мегабитах в секунду).
# Значение по умолчанию - 0 (без ограничений).
DOWNLOAD_RATE_LIMIT=0

# Настройки подключения к прокси-серверу в формате 'http://user:password@ipaddress:port'
HTTP_PROXY='http://...'


# Уровень логирования - ERROR, WARN, INFO, DEBUG (по умолчанию INFO)
LOGGING_LEVEL="INFO"

# Включение HTTPS протокола отдельно для каждого из продуктов
CDI_HTTPS="true"
FACTOR_HTTPS="true"
SUGGESTIONS_HTTPS="true"

...

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

Раскрыть
titleunset_env.sh
Блок кода
languagebash
unset ARTIFACTORY_PATH
unset FACTOR_DICTIONARY_HOME
unset FACTOR_USERNAME
unset FACTOR_BUILD
unset SUGGESTIONS_DICTIONARY_HOME
unset SUGGESTIONS_USERNAME
unset SUGGESTIONS_API_PORT
unset CDI_DICTIONARY_HOME
unset CDI_USERNAME
unset CDI_API_USERNAME
unset CDI_API_PASSWORD
unset CDI_API_PORT

...

etc/systemd/system/ && systemctl daemon-reload && systemctl enable updater.service && systemctl start updater.service

Настройка конфигурации

Настройте файл конфигурации updater.yaml, перенеся в него настройки из старого файла  updater.env. Если возникнут вопросы, пришлите, пожалуйста, в поддержку файлы конфигурации прошлой версии Апдейтера updater.env и dictionaries.json (если есть) - поможем с переносом настроек.

Настройка планировщика

Если у вас была настроена загрузка справочников по расписанию, то пришлите, пожалуйста, в поддержку все

...

ваши .sh (или .cron) скрипты нам на почту. Мы конвертируем их в

...

запросы для добавления задач новом «Апдейтере» и вернем их вам

...

.

Замените старые скрипты на конвертированные из пункта выше, после чего из cron-расписания на сервере (редактируется командой «crontab -e») удалите часть с "&& . /opt/updater/updater.env".

...

titleПример

Было:

Без форматирования
00 21 * * 6  cd /opt/updater && . /opt/updater/updater.env && /opt/updater/download-dictionaries.sh
00 01 * * 0  cd /opt/updater && . /opt/updater/updater.env && /opt/updater/update-dictionaries.sh

Стало:

...

Выполните запросы, сконвертированные из скриптов загрузки справочников по расписанию.

Hfl

Лицензирование

(предупреждение)  Только для заказчиков, у которых куплены коннекторы — сейчас это SBINS и SBLIFE.

Нужно подложить соответствующий заказчику файл лицензии рядом с исполняемым файлом.