31 декабря 2010 г.

С наступащим Новым Годом!

С наступающим Новым Годом, друзья!

Желаю Вам смелее планировать следующий год и пусть в действительности Вы сможете реализовать еще больше, чем запланировали и станете еще лучше!

Я очень ценю, что Вы читаете мой блог. Спасибо Вам большое. 

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



Желаю весело отметить Новый Год и с пользой провести праздники.
Пусть в следующем году у Вас все сложится! Удачи!

Автор: Шиболов Вячеслав Анатольевич


Logical Volume Manager (LVM) своими руками. Часть I

Logical Volume Manager (LVM) - система позволяющая управлять распределением дискового пространства с помощью логических томов. Я делаю памятку прежде всего для HP-UX. В других операционных системах могут быть свои особенности и нюансы, но основа, безусловно, одна.

Структура LVM: один или несколько дисков объединены в Volume Group, внутри которой можно создать один или несколько Logical Volume, между которыми распределить дисковое пространство входящих в Volume Group дисков. На Logical Volume создать файловые системы или swap-области и указать точки монтирования.


Диск, входящий в LVM, имеет определенную структуру и содержит служебную информацию.


Полезные директории и файлы:
  • /dev/dsk/cXtXdX и /dev/rdsk/cXtXdX - файлы устройств (block и raw) жестких дисков в системе,
  • /dev/vgXXX/group - файл устройств для Volume Group vgXXX,
  • /dev/vgXXX/lvXXX и /dev/vgXXX/rlvXXX - файлы устройств (block и raw) Logical Volumes из Volume Group vgXXX,
  • /etc/lvmtab - бинарный файл, который содержит список Volume Groups системы и список входящих в них жестких дисков (физических томов). Часть информации из файла можно просмотреть командой strings,
  • /etc/lvmconf - директория с бэкапом конфигурационных файлов Volume Group. Обновляется командами изменения Volume Group или Logical Volume или отдельно командой - vgcfgbackup,
  • /etc/fstab - список файловых систем и точек монтирования, используется для автоматического монтирования файловых систем при старте ОС,
  • /etc/mnttab - список того, что и куда смонтировано в данный момент. Информация используется командами mount/umount и df/bdf.

Продолжение следует... :)

Автор: Шиболов Вячеслав Анатольевич


1 декабря 2010 г.

Подружить кластер и brbackup/brarchive

Исходные данные:
  • ленточная библиотека на 2 устройства записи на ленту,
  • библиотека подключена по оптической сети (FC),
  • система SAP работает в отказоустойчивом кластере (HP MC/ServiceGuard), состоящем из 2-х нод,
  • бэкапы базы данных и журналов ORACLE делаются стандартными средствами SAP (brbackup/brarchive).

Вывод команды # ioscan -fnC tape на первой и второй ноде выдает несколько отличную картину:
первая нода кластера:


вторая нода кластера:


Программы brbackup/brarchive информацию для своей работы берут из профиля /oracle/<SID>/<ora_vers>/dbs/init<SID>.sap и из планировщика заданий в SAP - транзакции DB13. В профиле помимо всего прочего прописаны и файлы устройств ленточной библиотеки. Из выше показанных скриншотов видно, что необходимо создавать 2 профиля инстанции для каждой ноды. И обновлять содержимое профиля init<SID>.sap из этих профилей при переходе кластерного пакета на ту или иную ноду.

Есть более изящное решение. Создаем линки к файлам устройств на каждой ноде с одинаковыми именами. Прописываем их в профиль и всё. Профиль один на две ноды.


параметры профиля:


Здесь ltm и rtm - это left type и right tape. Названия выбраны для удобства использования и для несовпадения с возможными реальными.
Так, мне кажется, жить удобнее. :)

Автор: Шиболов Вячеслав Анатольевич


30 ноября 2010 г.

SAP GUI for Windows, patches and hotfixes

На данный момент SAP поддерживает следующие версии SAP GUI for Windows:
  • SAP GUI 6.20 - окончание поддержки 31.12.2010,
  • SAP GUI 7.10 - окончание поддержки 12.04.2011,
  • SAP GUI 7.20 - окончание поддержки 09.04.2013.

Список поддерживаемых ОС начинается с Windows XP/Windows 2003 Server (состояние de-support, что означает - поддерживаем, но предлагаем сделать апгрейд), заканчивается Windows 7. Windows 2000 не поддерживается с 13.07.2010.

Получается, что в качестве оптимальной рабочей станции необходим компьютер под управлением Windows 7 или Windows Vista (окончание основной поддержки в 2012 году и выход на de-support со сроком до 2017 года) с SAP GUI 7.20. В крайнем случае Windows XP (Windows 2003 Server).
У меня на работе и дома стоит связка Windows XP + SAP GUI 7.10 last SP.

Теперь еще один новый нюанс. Для SAP GUI 7.20 вышел уже 3-й SP, который можно скачать с SAP Support Portal. Так как частота выхода SP для SAP GUI составляет 6-8 недель SAP ввел такое понятие как HotFix для SP. Это пакеты поддержки, которые выходят между основными SP для SAP GUI и содержат критические исправления. Относятся к конкретным SP (PL в описании) и устанавливаются так же как SP для SAP GUI (закрываем все окна SAP Logon и запускаем *.exe файл с пакетом поддержки). Подробности по поводу HotFix для SP для SAP GUI можно прочитать в SAP note # 1489891 - Hotfixes for SAP GUI for Windows 7.20.


Еще две полезные нотки:

Держите нос по ветру. ;)

Автор: Шиболов Вячеслав Анатольевич


18 ноября 2010 г.

ORACLE 8i, ORA-01555


В ORACLE 8i используются сегменты отката (ROLLBACK SEGMENTS) и ручное управление информацией отката. В табличном пространстве, обычно это PSAPROLL, находятся сегменты отката (типичные имена PRS_0, PRS_1, ...). Данные сегменты используются для отката/восстановления транзакций, обеспечения целостности чтения из базы (блоков данных, которые в данный момент времени изменяются) и для команд чтения данных на предыдущий момент времени. Количество сегментов отката можно посмотреть через транзакцию DB02. Все сегменты отката прописаны в профиле init<SID>.ora. Если меняете их количество, то не забудьте внести изменения в профиль.

Если возникает дамп в системе, который ссылается на ошибку СУБД ORA-01555 (ORA-01555: snapshot too old: rollback segment number <rbs_nr> with name "<rbs>" too small), то это про них, родимых.

Привожу список полезных SAP note по этой теме:


Если возникает именно ORA-01555, то стоит обратить внимание на параметр OPTIMAL у ROLLBACK SEGMENTS. Мне правильное выставление его позволило увеличить время хранения информации в ROLLBACK SEGMENTS с 3 до 6 часов. Частота дампов с ошибкой ORA-01555 резко уменьшилась. Порядок и SQL-запросы для пересоздания сегментов отката можно найти в вышеуказанных нотах.

Начиная с ORACLE 9i, сегменты отката (ROLLBACK SEGMENTS) переименованы в сегменты отмены (UNDO SEGMENTS) и появилось автоматическое управление данными сегментами. Задача администратора в этом случае сводится к активации/мониторингу этого режима и создании/поддержании UNDO табличного пространства достаточного размера.

Автор: Шиболов Вячеслав Анатольевич


17 ноября 2010 г.

Буферы ORACLE

Продуктивная система SAP R/3 4.6C с ORACLE 8.1.7.4.0 в качестве СУБД. В системе ежедневно порядка 600 активно работающих пользователей. Размер базы данных около 400 Гб. Были проблемы с производительностью. Среднее время отклика системы в среднем по диалоговым инстанциям стало 3000 мс. На наиболее загруженных серверах приложений доходило до 13000 мс!
После анализа ситуации было решено увеличить параметры памяти ORACLE (профайл init<SID>.ora):


После этого (параметры вступают в силу только после перезагрузки базы данных) картина загрузки дисков на дисковом массиве стала выглядеть иначе.
  • было:


  • стало:

Первый график (синяя кривая) - загрузка дисков в процентах. Второй график (красная кривая) - время ожидания запросов в очереди к дискам в мс. Графики взяты за рабочий день с высокой нагрузкой.

Среднее время отклика системы в среднем по диалоговым инстанциям стало 1000-1200 мс, уменьшение произошло за счет "Времени БД". На наиболее загруженных серверах приложений доходит лишь до 1500-2000 мс.

Увеличение параметров происходило в 2 этапа. Это видно на первом скриншоте. Второй этап имел меньшую эффективность, поэтому дальнейшее увеличение параметров пока не планируется.

Начиная с версии ORACLE 9.2 параметры немного изменились, их стало меньше.

Полезная SAP note на эту тему:
Note # 789011 - FAQ: Oracle memory areas.

Вывод: не зажимайте ORACLE, дайте ему тоже поработать.

Автор: Шиболов Вячеслав Анатольевич