Обновление#
Требования к окружению Archiving - в начале инструкции по установке Archiving.
План обновления#
Загрузка в конфигуратор конфигурации для новой версии Archiving.
Остановка потока Прикладного журнала для всех источников данных.
Удаление с узлов Archiving компонентов сервиса старой версии.
Установка на узлы Archiving компонентов сервиса новой версии.
Запуск потока Прикладного журнала для всех источников данных.
Проверка корректности установки обновления по чеклисту.
Загрузка новой конфигурации Archiving#
Первым этапом установки обновления Archiving является загрузка конфигурационных файлов в конфигуратор на полигоне. Для этого:
Перейдите в каталог дистрибутива
./config.Импортируйте конфигурационные файлы модулей:
arch-journal-cdm-init-config-struct.xml;arch-journal-gbk-init-config-struct.xml;arch-journal-ucp-consents-init-config-struct.xml;arch-journal-dataspace-init-config-struct.xml;pprbod-applied-journal-handler-config-struct.xml;pprbod-data-quality-processor-config-struct.xml;pprbod-grid-lib-v4-config-struct.xml;pprbod-offline-dq-collector-v4-config-struct.xml;pprbod-source-provider-v4-config-struct.xml;pprbod-stream-processor-config-struct.xml.
Кроме данных файлов в каталоге размещены файлы с параметрами с именованием вида:
<module>.properies.<stand>
Данные параметры используются в следующих случаях:
при первичном развертывании сервиса;
при изменении каких-либо значений, которые не зависят от сервера установки;
в сравнении с предыдущей версией изменился состав параметров.
Подробнее о применении конфигурации написано в следующем пункте.
Изменение конфигурации при обновлении с 4.5 на 4.6#
Параметры Конфигуратора#
В случае перехода с Archiving 4.5 на Archiving 4.6 нет необходимости изменять параметры:
модуль pprbod-source-provider-v4:
Название |
Значение по умолчанию |
Описание |
|---|---|---|
|
|
Время (таймаут) ожидания подписывания консьюмеров на топики перед началом обработки данных из них. Настройка общая для всех системных и прикладных топиков. Для промышленных сред и сред ИФТ-ПСИ не допускается установка околонулевых значений. Рекомендуемое - 1 минута |
|
|
Ограничивающий лимит числа потоков на системной службе отслеживания доставки DeliveryTracker. Допускается его уменьшение или увеличение в ходе тонкой настройки инстанса ТСА |
Параметры, определяющие работу интерцепторов для функциости целостности и полноты в части ЭЦП сообщений.
Название |
Значение по умолчанию |
Описание |
|---|---|---|
|
Включение интерцепторов для функционала полноты в разрезе источников. Содержит список мнемоник источников, по которым включается функционал подписывания сообщений в интеграционной Kafka. Например, GBK,PU_UL_SIC |
|
|
|
Имя класса реализации интерцептора продюсера. Не меняется в текущих релизах ТСА относительно умолчаний |
|
|
Имя класса реализации (сервиса) провайдера ЭЦП. Не меняется в текущих релизах ТСА относительно умолчаний - применяется реализация Synapse |
|
Имя заголовка сообщения Kafka, в который помещается ЭЦП. При включении для хотя бы одного источника не может быть пустым. В разрезе отдельных источников не конфигурируется - заголовок всегда одинаковый |
|
|
Префикс атрибутов, используемых для кастомизации формирования ЭЦП. В текущих реализациях используются значения реализации Synapse по умолчанию - значение всегда пустое. Возможность кастомизации заложена на будущие реализации |
|
|
|
Признак остановки обработки пакета в случае, если подпись в заголовке не совпала. Для промышленных сред и сред ИФТ-ПСИ всегда должно быть |
|
|
Алгоритм ЭЦП. Не меняется. Допустим любой RSA алгоритм (если ключ у сертификата RSA), который доступен через security провайдеры jvm, |
|
Имя ключа (алиас) в локальном keystore (параметры далее) для формирования подписи. Должно заполняться согласно выпущенному сертификату ЭП |
|
|
Имя заголовка сообщения Kafka, в который помещается имя алгоритма подписи для проверки принимающей стороной. В текущих реализациях используются значения реализации Synapse по умолчанию - значение всегда пустое. Возможность кастомизации заложена на будущие реализации |
|
|
Имя заголовка сообщения Kafka, в который помещается открытый ключ для проверки подписи принимающей стороной. В текущих реализациях используются значения реализации Synapse по умолчанию - значение всегда пустое. Возможность кастомизации заложена на будущие реализации |
|
|
Позволяет переопределить SSL провайдера для взаимодействия с Kafka для работы интерцептора ЭП. Не применяется, не заполняется никогда |
|
|
Путь на ЛФС к хранилищу с сертификатами для формирования ЭЦП сообщений Kafka. Переопределяет базовый путь к хранилищу сертификатов, используемых для подключения к интеграционной Kafka. Применяется и заполняется в случае, если сертификат ЭП не был экспортирован из контейнера и импортирован в базовое хранилище, а был размещен в отдельном keystore |
|
|
Пароль от хранилища сертификатов для формирования ЭЦП сообщений Kafka. Переопределяет базовый пароль от хранилища сертификатов. Используется в паре с параметром |
|
|
Позволяет переопределить SSL клиентский сертификат для взаимодействия с Kafka для работы интерцептора ЭП. Должен соответствовать применяемому Keystore выше |
Параметры, определяющие работу прозрачного шифрования (Transparent Data Encryption, TDE) для функциональности целостности и полноты в части шифрования Kafka трафика.
Название |
Значение по умолчанию |
Описание |
|---|---|---|
|
Включение Transparent Data Encryption в разрезе источников для интеграционных топиков. Содержит список мнемоник источников, по которым включается функционал прозрачного шифрования сообщений в интеграционной Kafka. Например, |
|
|
Включение Transparent Data Encryption в разрезе источников для топиков сырых данных. Содержит список мнемоник источников, по которым включается функционал прозрачного шифрования сообщений в топиках сырых данных. Например, |
|
|
|
Включение шифрования на топиках доставки системных сообщений. Повышает устойчивость, но снижает производительность. Для текущих инсталляций рекомендуется |
|
Секрет для алгоритма HMAC для прозрачного шифрования данных. Должен удовлетворять требованиям доменной парольной политики к секретам |
|
|
Соль для алгоритма шифрования. Должна удовлетворять требованиям доменной парольной политики к секретам |
|
|
|
Фабрика, реализующая алгоритм шифрования (имя реализации) JCP |
|
|
Алгоритм шифрования AES/CBC/PKCS5 Padding. Допустимые значения: |
|
|
Алгоритм шифрования секрета |
|
|
Параметр дает возможность управления переключением bean-обсервера, который слушает семафоры ПЖ для перехода в Si и обратно в Normal. Для промышленных сред и сред ИФТ-ПСИ значение строго обязательно должно быть установлено в |
|
|
Таймаут запросов |
|
|
Размер пула потоков обработки ответов |
|
|
Размер пула потоков обработки обратных вызовов |
|
|
Интервал между повторными попытками настройки транспортных топиков (при ошибках) |
|
|
Количество повторных попыток настройки транспортных топиков (при ошибках) |
|
|
Гарантированное время жизни записей в транспортных топиках (устанавливается при создании) |
|
|
Фактор репликации, используемый при создании транспортных топиков |
|
|
Кол-во партиций, устанавливаемое при создании транспортных топиков |
|
Путь к хранилищу доверенных сертификатов для Kafka протокола 4-3 |
|
|
Пароль от хранилища доверенных сертификатов для Kafka протокола 4-3 |
|
|
Путь к админскому сертификату для работы с Kafka 4-3 (набор ключей, который содержится в данном хранилище, используется при создании и настройке транспортных топиков) |
|
|
Пароль от хранилища ключей и сертификатов для Kafka протокола 4-3 |
|
|
Пароль от ключа для Kafka протокола 4-3 |
|
|
|
Флаг, включающий и отключающий автоконфигурирование топиков в Kafka протокола 4-3 |
|
|
Интервал между повторными попытками настройки интеграционных топиков (при ошибках) |
|
|
Количество повторных попыток настройки интеграционных топиков (при ошибках) |
модуль pprbod-transport-kafka-lib:
Название |
Значение по умолчанию |
Описание |
|---|---|---|
|
|
Флаг, включающий и отключающий автоконфигурирование топиков в Kafka протокола 4-3 с использованием admin-client. На промышленных средах, а также на средах ИФТ-ПСИ, целевое значение флага |
|
|
Таймаут запросов |
|
|
Размер пула потоков обработки ответов |
|
|
Размер пула потоков обработки обратных вызовов |
|
|
Гарантированное время жизни записей в транспортных топиках (устанавливается при создании) |
|
|
Фактор репликации, используемый при создании транспортных топиков. Фактическое значение рекомендуется оставлять |
|
|
Количество партиций, устанавливаемое при создании транспортных топиков. Фактическое значение должно устанавливаться согласно рекомендациям по масштабированию соответственно числу узлов и КТС полигона |
|
Путь к хранилищу доверенных сертификатов для транспортной Kafka протокола 4-3 |
|
|
Пароль от хранилища доверенных сертификатов для транспортной Kafka протокола 4-3 |
|
|
Путь к админскому сертификату для работы admin-client c транспортной Kafka 4-3 (набор ключей, который содержится в данном хранилище, используется при создании и настройке транспортных топиков) |
|
|
Пароль от хранилища ключей для работы admin-client c транспортной Kafka 4-3 |
|
|
Пароль от закрытого ключа клиентского SSL сертификата для транспортной Kafka протокола 4-3 |
|
|
|
Интервал между повторными попытками настройки транспортных топиков (при ошибках) |
|
|
Количество повторных попыток настройки транспортных топиков (при ошибках) |
Топики Kafka#
В релизе 4.6 для обоих контуров необходимо добавить Normal или StandIn: v4-[название контур]-[normal или standin]-pprbod-[название системного топика].
Пример для контура Normal :
v4-<полигон>-normal-pprbod-batch-topic;v4-<полигон>-normal-pprbod-chunk-topic;v4-<полигон>-normal-pprbod-delivery-topic;v4-<полигон>-normal-pprbod-quality-response-topic;v4-<полигон>-normal-pprbod-quality-topic;v4-<полигон>-normal-pprbod-source-update-topic.
Пример для контура Stand-In:
v4-<полигон>-standin-pprbod-batch-topic;v4-<полигон>-standin-pprbod-chunk-topic;v4-<полигон>-standin-pprbod-delivery-topic;v4-<полигон>-standin-pprbod-quality-response-topic;v4-<полигон>-standin-pprbod-quality-topic;v4-<полигон>-standin-pprbod-source-update-topic.
* pprbod-chunk-topic новый топик в 4.6 - в batch-topic писались два разных типа ивентов, и из него же читались двумя консьюмерами с предикатами, настроенными каждый на свой тип, что приводило к ошибке, когда к консьюмеру чанков прилетал батч. Решение - разделить на два топика batch и chunk
Системные топики на контурах создаются автоматически при развертывании модулей. Поскольку до релиза 4.6 разделения контуров по признаку NORMAL-STANDIN не было, ранее созданные системные топики имеют вид:
v4-<полигон>-pprbod-batch-topic;v4-<полигон>-pprbod-chunk-topic;v4-<полигон>-pprbod-delivery-topic;v4-<полигон>-pprbod-quality-response-topic;v4-<полигон>-pprbod-quality-topic;v4-<полигон>-pprbod-source-update-topic.
Автоматически они удалены не будут, а также не будут использоваться системой после обновления до 4.6. Рекомендуется их удалить, оформив соответствующий ЗНО.
Остановка потока АС Прикладной журнал#
Перед остановкой Archiving необходимо остановить поток Прикладного журнала во всех зонах ПЖ (т.е. по всем источникам данных).
В зонах ПЖ для каждого из источников данных Archiving необходимо отключить плагин EXPORT_FD4 по всем типам данных.
Примечание:
Если на полигоне, куда устанавливается обновление, потеря данных не критична, то данный шаг можно пропустить.
Удаление старой версии Archiving#
Для удаления старой версии Archiving с серверов приложений:
Остановите сервер приложений WildFly (выполнить для всех узлов Archiving на полигоне).
Включите сервер приложений, не включая модули.
Удалите с сервера приложений все модули Archiving.
Выполните шаги 2 и 3 для всех узлов Archiving на полигоне.
Установка модулей актуальной версии на WildFly#
Установка модулей осуществляется по следующему алгоритму:
Установите на WildFly без запуска компонентов, которые присутствуют в дистрибутиве (не включать):
Наименование компонента
Назначение компонента
pprbod-source-provider-v4
JBoss модуль - хранилище системных компонентов сервиса
pprbod-stream-processor
Обработчик данных, отправляющий данные в интеграционную Kafka Archiving
pprbod-offline-dq-collector-v4
Обработчик данных, присылаемых от источников данных в процессе Init и ТКД
pprbod-data-quality-processor
Модуль, отвечающий за выполнение ТКД и DRP
pprbod-applied-journal-handler
Обработчик данных, получаемых от АС Прикладной журнал
arch-journal-cdm-init, arch-journal-dataspace-init, arch-journal-gbk-init, arch-journal-ucp-consents-init
Модули - адаптеры для инициализирующей выгрузки различных типов источников данных
Пропишите все модули Archiving в seap-lib overlay в конфигурации WildFly.
Один из вариантов выполнения с помощью встроенной утилиты WildFly
./jboss-cli.sh.При помощи терминала откройте каталог, где установлен WildFly, затем перейдите в подкаталог bin (пример: wildfly/bin), используя команду:
./jboss-cli.sh --connect --controller=<адрес сервера>:<порт WildFly> --user=<имя пользователя> ---password=<пароль пользователя> --command="deployment-overlay link --name=seap-lib-9.2 --deployments=<название модуля>*".--deployments=<название модуля>*- звездочка означает, что overlay прописывается для любой версии данного модуля. Чтобы прописать overlay для конкретной версии, необходимо указать--deployments=<название модуля>-<номер версии>.war.Пример команды для модуля pprbod-source-provider-v4:
./jboss-cli.sh --connect --controller=XX.XX.XX.XX:XXXX --user=admin --password=admin --command="deployment-overlay link --name=seap-lib-9.2 --deployments=pprbod-source-provider-v4*"Выполните перезапуск WildFly.
Запустите компонеты Платформы в нужном порядке.
Запустите компоненты Archiving в следующем порядке:
pprbod-source-provider-v4.war.
pprbod-stream-processor.war.
pprbod-data-quality-processor.war.
pprbod-offline-dq-collector-v4.war.
pprbod-applied-journal-handler.war.
Остальные модули Archiving в любом порядке.
Повторите шаги 1-4 на всех серверах приложений WildFly, где необходимо установить Archiving.
Если запуск всех модулей на всех узлах произведен успешно, Archiving установлен на полигон.
В случае возникновения ошибок при запуске одного из модулей необходимо проверить корректность выполнения предыдущих шагов развертывания.
Включение потока АС Прикладной журнал#
Необходимо включить поток ПЖ во всех зонах ПЖ, где он был отключен на шаге Отключение потока АС Прикладной журнал.
Признаки установки компонентов Archiving на стенд#
Чек-лист установленного Archiving:
На серверах приложений все модули Archiving установлены успешно.
В логах отсуствуют ошибки.
В АС ПЖ идет репликация данных (журналы помечены зеленым).