В 2012 году я опубликовал пост, где подробно описал процедуру перехода на новое SAP ядро 7.20 для систем на базе SAP NetWeaver 7.00 - 7.11. На текущий момент SAP ядро 7.20 не поддерживается, а для систем на базе SAP NetWeaver 7.00 - 7.31 рекомендуется перейти на версию ядра 7.22 EX2. Скорее всего данная ветка SAP kernel последняя (для этих версий систем) и будет поддерживаться до конца 2025 года (рис. 1).
Рис. 1. Окончание поддержки SAP kernel 7.22_EX2. |
Если кто-то не знает про EX2, поясню. Для финальных версий SAP ядер, выше которых системы переводить не планируется, выпускают дополнительные ядра. Сначала с приставкой EXT, а потом EX2. В эти версии добавляют только самые критичные изменения для поддержки нового оборудования, безопасности или важных функций.
Для перевода систем на SAP ядро 7.22 EX2 следует руководствоваться SAP note # 2115344 - Installation of Kernel 722 (EXT/EX2). Помимо описания вполне стандартной процедуры обновления SAP ядра, там указано несколько нюансов, которые следует учитывать при переводе систем на это ядро.
Во-первых, системы на базе SAP NetWeaver 7.00/7.01 не поддерживают механизм динамических рабочих процессов, который уже реализован в версиях SAP kernel 7.20 и выше. Про данный механизм я подробно писал в этом посте. Для корректной совместной работы ядра с такой системой эту функцию надо отключить через выставление следующих параметров инстанции:
rdisp/wp_no_restricted = 0
rdisp/configurable_wp_no = 0
rdisp/dynamic_wp_check = FALSE
rdisp/wp_max_no = <сумма всех сконфигурированных рабочих процессов инстанции>
Второй момент, на который стоит обратить внимание, это новый формат центрального системного журнала SAP системы. Если у вас версия системы, основанная на SAP NetWeaver 7.00/7.01 (рис. 2) и работают процессы, отвечающие за центральный системный журнал (rslgsend и rslgcoll), то могут возникнуть проблемы с производительностью. Я с таким столкнулся и хочу об этом рассказать.
Рис. 2. Пример версии системы на базе SAP NetWeaver 7.01. |
Для начала пару слов о том для чего нужны эти процессы. В SAP системе, установленной на операционную систему Unix (любую её реализацию), в транзакции SM21 можно включить центральный системный журнал, который будет отображать журналы всех инстанций системы. Доступен он через пункт меню "System log -> Choose -> Central System logs". При этом в системах, работающих на операционной системе MS Windows центральный журнал не поддерживается.
Принцип работы заключается в следующем. SAP ядро в специальной общей области памяти каждой SAP инстанции сохраняет локальный системный журнал (записи об ошибках и событиях инстанции). Выделенный процесс-демон с именем rslgsend пересылает эти записи центральному журналу выделенной инстанции (обычно это центральная инстанция системы). А на этой инстанции в свою очередь другой выделенный процесс коллектор (rslgcoll) собирает все записи вместе. Передача данных осуществляется по протоколу TCP, а процесс коллектор добавляет записи логов в файл центрального журнала, расположение которого задаётся через параметр rslg/central/file. Вот на этой странице документации можно найти описание этого механизма.
Подробности же настройки упоминаются в SAP note # 25526 - Central system log not available. Стоит отметить, что часто функция центрального журнала активируется автоматически при установке SAP системы. Для старта вышеупомянутых процессов-демонов в стартовые профайлы инстанций добавляются строки для запуска вида:
#---------------------------------------------------------------------
# start rslgcoll
#---------------------------------------------------------------------
_CO =co.sap<SID>_DVEBMGS00
Execute_05 =local ln -s -f $(DIR_EXECUTABLE)/rslgcoll $(_CO)
Start_Program_05 =local $(_CO) -F pf=$(DIR_PROFILE)/<SID>_DVEBMGS00#---------------------------------------------------------------------
# start rslgsend
#---------------------------------------------------------------------
_SE =se.sap<SID>_DVEBMGS00
Execute_06 =local ln -s -f $(DIR_EXECUTABLE)/rslgsend $(_SE)
Start_Program_06 =local $(_SE) -F pf=$(DIR_PROFILE)/<SID>_DVEBMGS00
Учтите, что здесь "Execute_XX" и "Start_Program_XX" должны иметь свой уникальный порядковый номер в зависимости от остальных аналогичных записей в профайле.
Всё было бы хорошо, но начиная с версии SAP ядра 7.20 функции центрального журнала перекочевали в Web Services (процесс sapstartsrv), а процессы демоны (rslgsend и rslgcoll) больше не используются. Но системы с SAP_BASIS 7.00 или 7.01 новую версию центрального журнала использовать не могут, а для работы старой версии журнала при переходе на SAP ядро 7.20 процессы демоны передачи и сбора записей должны продолжать свою работу. И в этом случае, при их работе могут возникать коллизии с производительностью.
Процессы демоны начинают потреблять излишнее количество ресурсов: как процессорных (рис. 3), так и генерируя повышенный ввода-вывод на дисковую подсистему. Причем, ввод-вывод идёт на файловую систему, где хранится файл центрального системного журнала. В Unix системах это директория /sapmnt/<SID>/global/. Ощущение, что процессы вхолостую постоянно пересоздают файл центрального системного журнала.
Рис. 3. Процессы-демоны в топе по потреблению процессорных ресурсов. |
- Установка через транзакцию RZ10 параметра инстанции rslg/new_layout = 9.
- Остановка SAP инстанций.
- Удаление файла центрального журнала с уровня файловой системы.
- Старт SAP инстанций.
После этого процессы-демоны сразу успокаиваются и больше не тратят ресурсы системы впустую (рис. 4-8).
Рис. 4. Количество процессорного времени, съеденного демонами за неделю без установки параметра. |
Рис. 5. Количество процессорного времени, съеденного демонами за 3 дня после установки параметра. |
Рис. 6. График потребления процессорных ресурсов сервера. |
Рис. 7. График нагрузки на СХД по SAN. |
Рис. 8. График операций записи в файловую систему /sapmnt сервера. |
На графиках разница видна невооружённым взглядом.
Проблема описана в SAP note # 1517379 - Which system log format does the 720 kernel write? Будьте внимательны и выполняйте все рекомендации компании SAP.
Автор: Шиболов Вячеслав Анатольевич
Комментариев нет:
Отправить комментарий