Руководство по системному администрированию#
Основные понятия#
В таблице приведены основные аббревиатуры и сокращения:
Аббревиатура, сокращение |
Определение |
|---|---|
АС |
Автоматизированная система |
БД |
База данных |
BPMS |
Business Process Management System. Система управления бизнес-процессами |
RPC |
Remote Procedure Call. Удаленный вызов процедур |
В таблице приведены основные термины:
Термин |
Определение |
|---|---|
Вторая рука |
Пользователь, осуществляющий функции по подтверждению обработки или подтверждению отклонения обработки ошибок в интерфейсе Продукта |
Инцидент, отклонение, ошибка |
Изменение, произошедшее во внешней или внутренней среде, зафиксированное в Продукте, факт возникновения которого повлек негативные последствия (материальные или нематериальные) для функционирования бизнес-процессов организации |
Продукт |
Компонент Устранение Сбойных Ситуаций (USSX) продукта Platform V Incident Manager (USS) |
Platform V |
Набор продуктов Platform V, правообладателем которых является АО «СберТех». Перечень таких продуктов обозначен в документации на конкретный продукт |
Сценарии администрирования#
Сценарии администрирования, выполняемые системным администратором при установке дистрибутива, приведены в разделе Установка документа Руководство по установке.
Сценарии администрирования, выполняемые системным администратором при работе в административном интерфейсе, приведены в разделе Настройки администратора документа Руководство оператора.
Администратору рекомендуется регулярно выполнять:
контроль состояния работы Продукта;
мониторинг производительности Продукта;
контроль свободного места на жестких дисках всех серверов Продукта, а также в файловой системе.
При выявлении нештатных ситуаций администратору необходимо:
проверить работоспособность всех сервисов Продукта;
проверить логи на наличие ошибок.
В рамках выполнения требований безопасной работы Продукта, администратор выполняет следующие функции:
осуществляет контроль использования средств защиты информации;
осуществляет контроль доступа к обрабатываемым данным пользователями, согласно с их правами доступа к Продукту;
несет ответственность за качество проводимых им работ.
Доступ должны иметь только те сотрудники, которым он необходим в соответствии с их должностными обязанностями.
Доступ должен ограничиваться минимально необходимым объемом данных.
Должны разделяться среды разработки, тестирования и эксплуатации. При этом производится разделение обязанностей между разработчиками, тестирующим персоналом и сотрудниками, непосредственно эксплуатирующими уже введенный в промышленную эксплуатацию Продукт.
Особых рекомендаций по использованию средств защиты информации в Продукте не предусмотрены.
Особенности работы сервиса при не указанных или указанных некорректно значениях различных параметров описаны в Руководстве оператора.
Просмотр системного журнала доступен в логах подов компонентов в среде контейнеризации Kubernetes или Red Hat OpenShift 4+ (опционально) и в UI компонента Журналирование (LOGA) продукта Platform V Monitor (OPM) при его включении (компонент является опциональным). Мониторинг доступен в случае инсталляции с включением компонента Объединенный мониторинг Unimon (MONA) продукта Platform V Monitor (OPM) (компонент является опциональным).
Справочники#
В Продукте поддерживаются следующие справочники:
Справочник Настройки для ошибок (DICTERRORSETTING).
Справочник содержит информацию по режиму запуска корректирующих сценариев и подтверждению второй рукой. В справочнике хранятся настроечные данные по обработке инцидента:
Наименование |
Расшифровка |
|---|---|
errorCode |
Код ошибки |
originSystemCode |
Код АС |
serviceCode |
Код сервиса |
operCode |
Код операции |
innerProcessName |
Имя внутреннего процесса. DELAYED_CALL для автозапуска корректирующего сценария |
bpmsProcessName |
Имя сценария для запуска в BPMS |
processingSLA |
SLA по обработке ошибки (часы) |
selectedCorrectiveServiceName |
Корректирующий сценарий по умолчанию (техническое наименование) |
delay |
Задержка перед автозапуском корректирующего сценария (мс) |
repeatCount |
Количество повторов ошибочного шага / операции перед отправкой в Продукт |
repeatInterval |
Временной интервал между попытками повтора (секунды) |
dictCorrectiveService |
Ссылка на список корректирующих сценариев по ошибке из справочника Корректирующий сценарий |
needApprove |
Необходимость подтверждения второй рукой |
Справочник Корректирующий сценарий (DICTCORRECTIVESUBPROCESS).
Справочник содержит список параметров корректирующих сценариев по данной ошибке (коду ошибки). Справочник привязан к справочнику Настройки для ошибок (DICTERRORSETTING). В справочнике хранятся параметры корректирующих сценариев:
Наименование |
Расшифровка |
|---|---|
code |
Техническое наименование корректирующего сервиса |
name |
Имя корректирующего сценария, отображаемое пользователю |
mmtModule |
Ссылка для вызова корректирующего сценария по JSON-RPC |
waitingTime |
Время ожидания ответа от корректирующего сценария в мс. (по умолчанию 60 сек.) |
Справочник Текст ошибки (ErrorText).
Справочник содержит тексты бизнес-описания ошибки:
errorCode — код ошибки;
serviceCode — код сервиса;
operCode — код операции;
errorMessage — текст ошибки.
Настройка вызова корректирующего сценария#
Корректирующий сценарий вызывается автоматически или пользователем вручную при обработке инцидента в интерфейсе Продукта.
Результат обработки инцидента корректирующим сценарием не возвращается из Продукта в АС-источник. Если по результатам отработки корректирующего сценария необходимо изменить статус экземпляра сервиса (операции) или уведомить АС-источник, то это должно быть реализовано в корректирующем сценарии.
В справочниках Продукта задаются следующие параметры для автоматического вызова корректирующего сценария:
В справочнике Настройки для ошибок (ErrorSetting) по коду ошибки errorCode и коду сервиса serviceCode указываются параметры:
innerProcessName — значение DELAYED_CALL;
selectedCorrectiveServiceName — техническое наименование (code) сценария из списка доступных сценариев в CorrectiveServices;
delay — значение по умолчанию 0 (без ожидания).
Список доступных сценариев по данной ошибке задается по коду ошибки errorCode и коду сервиса serviceCode в связанном справочнике Корректирующий сценарий (CorrectiveSubProcess). Указываются реквизиты каждого сценария.
Обновление сервиса#
Обновление сервиса осуществляется согласно документу Руководство по установке.
Регламентные работы / работы по восстановлению#
Обслуживание Продукта должно производиться квалифицированным персоналом. Уровень квалификации обслуживающего персонала должен соответствовать требованиям производителей технических и программных средств системы, а также требованиям эксплуатационной документации. Регламент обслуживания должен содержать перечень работ, периодичность их проведения, журнал регламентных работ.
События системного журнала#
В Продукте реализован механизм логирования с использованием компонента Журналирование (LOGA) продукта Platform V Monitor (OPM).
Уровень логирования прописан в сущностях ConfigMap в среде контейнеризации Kubernetes или Red Hat OpenShift 4+ (опционально) с суффиксом в названии "-logback" и доступен для изменения администратору компонента.
Местонахождение событий системного журнала: /mnt/logs/application.log.
Для системного журнала используются следующие приоритеты:
ERROR:
Любые ошибки вызова сервисов Platform V, кроме отправки метрик в Продукт.
Любые ошибки интеграционных вызовов.
Пример кода:
logger.error("Error during FieldLengthCache initialization", e);Пример сообщения:
16:40:51,640 INFO [stdout] (transport-[16H29M59S52385]-[error-processor]-[rejecting]-request-processing-[error-processor]-thread-0) [transport-[16H29M59S52385]-[error-processor]-[rejecting]-request-processing-[error-processor]-thread-0] ERROR [FieldLengthCache:init:116] - Error during FieldLengthCache initializationjava.sql.SQLSyntaxErrorException: ORA-00942: table or view does not existWARNING:
Ошибки отправки метрик в Продукт.
Любые некритичные ошибки, кроме ошибок отправки метрик.
Пример кода:
logger.warn("OperDay value contain time: {}. Truncation performed.", rawOperDay);Пример сообщения:
16:40:51,613 INFO [stdout] (transport-[16H29M59S52385]-[error-processor]-[rejecting]-request-processing-[error-processor]-thread-0) [transport-[16H29M59S52385]-[error-processor]-[rejecting]-request-processing-[error-processor]-thread-0] WARN [UssServiceImpl:fillErrorInfoCommonFieldsFromMmtDto:972] - OperDay value contain time: Thu Jun 02 16:40:51 MSK 2022. Truncation performedINFO: сообщения о вызове и возврате из вызова интеграционного адаптера.
Пример кода:
logger.info("DictUssSettingsCache инвалидация кэша");Пример сообщения:
17:17:03,157 INFO [stdout] (pool-294-thread-1) [pool-294-thread-1] INFO [DictUssSettingsDao:reloadCache:100] - DictUssSettingsCache инвалидация кэшаDEBUG:
Все входные и выходные параметры операций сервисов.
Все входные и выходные параметры вызовов интеграционных адаптеров.
Пример кода:
logger.debug("Полный состав пришедших значений: " + errorInfoMmt.toString());Пример сообщения:
16:40:51,643 INFO [stdout] (transport-[16H29M59S52385]-[error-processor]-[rejecting]-request-processing-[error-processor]-thread-0) Полный состав пришедших значений: innerProcessName=<значение>, bpmsProcessName=null, dateTime=Thu Jun 02 16:40:51 MSK 2022, timeZone=USS_UNKNOWN, operDay=Thu Jun 02 16:40:51 MSK 2022, serviceId=<значение>, serviceCode=USS_UNKNOWN, serviceName=USS_UNKNOWN, subprocessId=<значение>, subprocessCode=<значение>, subprocessName=<значение>, operId=<значение>, operCode=<значение>, operName=<значение>, moduleFrom=USS_UNKNOWN, clientName=<значение>, clientId=<значение>, errorCode=USS_UNKNOWN, errorTechnoInfo=USS_UNKNOWN, errorBusinessInfo=USS_UNKNOWN, productTypeCode=<значение>, needApprovefalse, tb=<значение>, osb=<значение>, vsp=<значение>, selectedCorrectiveServiceName=null
События мониторинга#
В Продукте реализован мониторинг событий с использованием компонента Объединенный мониторинг Unimon (MONA) продукта Platform V Monitor (OPM).
Метрики компонента Объединенный мониторинг Unimon (MONA) продукта Platform V Monitor (OPM) приведены в таблице ниже.
Название метрики |
Точка мониторинга |
Тип метрики |
Название сервиса |
|---|---|---|---|
uss.take_to_process_stopwatch |
Время взятия инцидента в работу в Продукте |
Состояние |
App-api |
uss.availability |
Доступность Продукта |
Состояние |
App-api |
uss.standin_receive_stopwatch |
Время обработки вызова компонента Прикладной Журнал (APLJ) продукта Platform V Backend (#BD) |
Состояние |
App-api |
error-processor.counter_error_1 |
Счетчик ошибок |
Состояние |
App-api |
error-processor.counter_error_1.errors |
Счетчик инцидентов в Технологическом сервисе Продукта в разрезе Тип сервиса-Сервис-Код ошибки |
Состояние |
App-api |
error-processor.summary_error_counter |
Общий счетчик инцидентов в Технологическом сервисе Продукта |
Состояние |
App-api |
error-processor.initiate_process_stopwatch |
Время сохранения нового инцидента в Технологическом сервисе Продукта |
Состояние |
App-api |
error-processor.primary.db.availability |
Доступность основного источника данных Продукта |
Состояние |
App-api |
error-processor.availability |
Доступность модуля Технологический сервис Продукта |
Состояние |
App-api |
Часто встречающиеся проблемы и пути их устранения#
Продукт использует репликатор для обеспечения безотказного функционирования рабочего состояния БД в случае сбоев или отказов.
Проблема:
При сбое у потребителей и большой нагрузке в Продукте есть возможность ограничить поток вхождения от потребителя.
Решение:
При большом потоке / нагрузке можно ограничить поток входящих инцидентов через настройки Продукта: Настройки администратора → Балансировка входящих.