Сигрид Хагеман - SAP R/3 Системное администрирование
На рис. 2.2 показано добавление записей SAPLOGON для примера производственной системы «SKP» на компьютере (сервере приложений) «prdsapr3» с номером системы «00». Можно также вызвать SAP GUI на SKP непосредственно следующим образом:
□ sapgui /H/prdsapr3/S/sapdp00
Рис. 2.2. Создание новой группы в SAPLOGON
2.4. Общие задачи администрирования
После запуска системы SAP R/3 и получения к ней клиентского доступа можно выполнять в системе все административные задачи. Прежде, чем переходить к следующим главам, где административные задачи будут рассмотрены более подробно, рассмотрим некоторые базовые функции SAP R/3.
2.4.1. Проверка состоянияВ любой точке системы SAP R/3 можно получать на экране наиболее важную информацию о состоянии системы. Для этого достаточно выбрать команду System • Status. Кроме такой информации по системе SAP R/3, как номер версии, номер инсталляции и действительность лицензии, можно видеть имя сервера БД и используемой РСУБД, имя текущего пользователя и код транзакции, а также узнать о том, какая программа выполняет текущую активную транзакцию (см. рис. 2.3).
2.4.2. Мониторинг системыМониторинг системы — одна из наиболее важных задач, выполняемых системным администратором. Для этой цели можно использовать несколько мониторов. Начнем с краткого обзора всех инстанций и процессов, выполняющихся на уровне приложений. Выберите Server list, чтобы вывести список всех выполняющихся инстанций и их служб (см. рис. 2.4).
После выбора инстанции можно перейти к ряду обзоров, включая следующие:
► Goto • Processes
Обзор процессов (см. рис. 2.5)
► Goto • User
Зарегистрированный в данный момент пользователь
Рис 2.3. Состояние системы
Рис. 2.4. Список всех инстанций и их служб
► Goto • Release Information
Описание данных ядра SAP R/3 (версия, номер исправления программы, дата генерации, библиотека базы данных и поддерживаемая среда)
► Goto • Environment
Рабочая среда пользователя <sid>adm на уровне операционной системы
► Goto• Systemlog
Системный журнал (см. раздел 2.4.3)
Можно также использовать Goto • Remote Logon для удаленной регистрации на выбранной инстанции.
Обзор процессов (Process Overview) на рис. 2.5 показывает, что выбранная инстанция выполняет в данный момент 11 диалоговых процессов (DIA), 3 процесса обновления (UDP и UDP2), 1 процесс блокирования (ENQ), 3 фоновых процесса (BGD)h 1 процесс спулинга (SPO).
Рис. 2.5. Обзор процессов инстанции
В этом примере инстанция занята копированием клиента. Администратор может использовать просмотр процессов для оценки текущей активности в системе и балансирования нагрузки инстанции. Процесс просмотра является ключевой частью мониторинга системы. Системному администратору доступна самая разнообразная информация для вывода на экран (см. главу 15). Рабочий процесс можно отменить (если это необходимо), выбрав команду Process • Cancel with Core или without Core. Отмена рабочего процесса (принудительное прекращение его работы) не окажет серьезного влияния на функционирование инстанции. При отмене рабочего процесса выполняется откат открытых транзакций, а планировщик инстанции (Dispatcher) распознает принудительное завершение процесса и пытается немедленно запустить новый рабочий процесс того же типа. Процесс просмотра не показывает процессы самого планировщика или сервера сообщений. Просмотр пользователей (►User overview) предоставляет аналогичные функции, но на экран выводится информация по пользователям.
На уровне операционной системы администратор может применять средство, доступное пользователю ОС <sid>adm. Команда
□ dpmon pf = <профиль_инстанции>
показывает процессы инстанции в текстовом режиме (см. ниже). Как видно из этого примера, начальное окно дает краткую статистическую сводку нагрузки ввода/вывода.
Листинг 2.4. Вывод dpmon
Dispatcher Queue Statistics
===========================
+------+------+--------+-------+--------+---------+
| Тур | now | high | max | writes | reads |
+------+------+--------+-------+--------+---------+
| NOWP | 0 | 18 | 2000 | 2349360| 2349360 |
+------+------+--------+-------+--------+---------+
| DIA | 0 | 49 | 2000 | 1428784| 1428784 |
+------+------+--------+-------+--------+---------+
| UPD | 0 | 2 | 2000 | 7587 | 7587 |
+------+------+--------+-------+--------+---------+
| ENQ | 0 | 0 | 2000 | 0 | 0 |
+------+------+--------+-------+--------+---------+
| BTC | 0 | 3 | 2000 | 15464 | 15464 |
+------+------+--------+-------+--------+---------+
| SPO | 0 | 1 | 2000 | 25638 | 25638 |
+------+------+--------+-------+--------+---------+
| UP2 | 0 | 1 | 2000 | 612 | 612 |
+------+------+--------+-------+--------+---------+
max_rq_id 9351
wake_evt_udp_now 0
wake events total13102978, udp2954229
(95%), shm148749 ( 4%)
since last update total 0, udp 0 ( 0%)
shm 0 ( 0%)
q - quit
m - menu
Пользователи могут использовать m для выбора из следующих доступных мониторов
□ Dispatcher Monitor Menu
=========================
d – dispatcher queue statistics
p - work-process—admin-table
l – work-process—admin-table (long)
t – trace level / components for wp
w – wp_ca blocks
a – appc_ca blocks
m – mbuf status
v – tm_ad dump
q - quit
Пункт 1 по существу эквивалентен просмотру процессов в системе SAP R/3. Приведенный ниже листинг получен в системе UNIX. Когда он был получен, были активны процессы диалога 0,1 и 2 и четыре фоновых рабочих процесса. Процессы можно завершать в dpmon, так же, как в обзоре процессов системы SAP R/3.
Листинг 2.5. Список процессов
Work Process Table (long)
=========================
No Ту Pid Status Cause Start Err Sem CPU Time
Program C1 User Action Table
------------------------------------------------------------------
0 DIA 28577 Run yes 0 0 37
SAPLEDI1 001 SCHAAK Insert EDI40
1 DIA 28578 Wait yes 0 0 0
2 DIA 28579 Run yes 0 0 9
001 SCHAAK Sequential Read DD01L
3 DIA 28580 Run yes 0 0 33
SAPLEDIN 001 SCHAAK
4 DIA 28581 Run yes 0 0 8
001 SCHAAK
5 DIA 28582 Wait yes 0 0 0
6 DIA 28583 Wait yes 0 0 0
7 DIA 28584 Wait yes 0 0 0
…………………….
20 DIA 28597 Wait yes 0 0 0
21 UPD 28598 Wait yes 0 0 0
22 UPD 28599 Wait yes 0 0 0
23 UPD 28600 Wait yes 0 0 0
24 ENQ 28601 Wait yes 0 0 0
25 BTC 7176 Run yes 0 0 158
/SAPAR0/ 001 SCHAAK DB-PROC "S
26 BTC 6590 Run yes 0 0 439
/SAPAR0/ 001 SCHAAK Direct Read /SAPARO/MA
27 BTC 10238 Run yes 0 0 7
001 SCHAAK Delete RSDELPART
28 BTC 6823 Run yes 0 0 17
001 SCHAAK DB-PROC "S
29 SPO 28606 Wait yes 0 0 0
30 SPO 28607 Wait yes 0 0 0
31 BTC 28608 Wait yes 0 0 0
32 UP2 28609 Wait yes 0 0 0
s - stop work process
к - kill work process (with core)
r - enable restart flag (only possible in wp-status ended")
q - quit
m - menu
Для получения информации о процессах SAPR/3 можно использовать и другие средства операционной системы. В Windows основным средством будет диспетчер задач (Task manager) вместе со средствами мониторинга из ММС. Между тем, информация, получаемая с помощью данных средств, будет не столь полной, как сведения, предоставляемые самой системой SAP R/3.
Показанный ниже фрагмент (см. листинг 2.6) был создан с помощью команды ps -ef в среде UNIX, которая содержит распределенную инстанцию, выполняющую РСУБД Oracle. Чтобы сделать информацию более понятной, этот вывод был вручную отсортирован. В нем оставлены только процессы SAP R/3 и процессы Oracle. Первый процесс в списке — программа saposcol. Следующий процесс, sapstart, активизируется, когда начинается выполнение командного файла startup. Он запускает отдельные процессы SAP R/3 на центральной инстанции («01») и диалоговой инстанции ("64") . Процесс co.sap<SID>_<инстанция> собирает информацию для центрального системного журнала системы SAP R/3 и записывает ее в этот журнал. Он работает совместно с процессом se.sap<SID>_ <инстанция>, передающим информацию в системный журнал. Эти процессы активизируются непосредственно командным файлом запуска, в котором используются номера процессов (столбец PID) программы sapstart и номера родительских процессов (столбец PID). Сервер сообщений обозначается идентификатором ms. Все рабочие процессы инстанции обозначены как dw, что означает disp+work. Планировщика среди рабочих процессов можно опознать по соглашению о номере порождающего процесса и номере процесса из командного файла запуска: только планировщик запускается непосредственно из командного файла запуска. Все другие рабочие процессы запускает планировщик, поэтому номера порождающих процессов логически согласуются с номером процесса планировщика.