Установка и настройка сервера Global3#
Инструкция описывает подготовку окружения, установку Oracle Client, развертывание сервера приложений GlobalServer, настройку подключения к Oracle и запуск сервиса global3.
Необходимое программное обеспечение#
Для установки сервера приложений требуется:
Java — требования к версии и используемой JDK/JRE приведены в разделе Требования к Java;
libaio1— для Debian 12;patchelf,libaio1t64— для Debian 13;tar;unzip.
Установка Oracle Client 11#
Требуется полная установка Oracle Client с типом Administrator.
В примерах ниже предполагается, что Oracle Client установлен в каталог:
/opt/oracle
Если используется другой путь, подставьте его в команды и переменные окружения.
Настройка файла tnsnames.ora#
Создайте файл tnsnames.ora:
/opt/oracle/network/admin/tnsnames.ora
Пример содержимого файла:
<ALIAS> =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = <IP_HOST>)(PORT = <PORT>))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = <DB_NAME>)
)
)
Параметры файла:
<ALIAS>— логический псевдоним базы, который будет использоваться приложением;<DB_NAME>— имя сервиса базы данных;<IP_HOST>— адрес сервера СУБД;<PORT>— порт подключения к СУБД.
Настройка прав доступа к Oracle Client#
Создайте отдельную группу и пользователя, от имени которого будет работать сервер приложений:
sudo groupadd global
sudo useradd -g global -m -s /bin/bash global
Выдайте права на каталог Oracle Client:
sudo chown -R global:global /opt/oracle/
Настройка локали Oracle#
При необходимости настройте локаль для корректного отображения русских символов:
export NLS_LANG=RUSSIAN_RUSSIA.CL8MSWIN1251
Проверка необходимых библиотек#
Debian 12#
Установите пакет libaio1. Он используется Oracle Database в Linux для асинхронного ввода-вывода:
sudo apt update
sudo apt-get install libaio1
Debian 13#
Установите пакет libaio1t64:
sudo apt-get update
sudo apt-get install libaio1t64
sudo ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/x86_64-linux-gnu/libaio.so.1
Проверьте, что в каталоге Oracle Client присутствуют следующие файлы:
ojdbc6.jar;ucp.jar;orail18n.jar.
Обычно они находятся в корневом каталоге Oracle Client или в его подкаталогах, например jdbc/lib.
Если файлов нет, скопируйте их из дистрибутива Oracle Client или установите недостающие компоненты.
Развертывание сервера приложений GlobalServer#
Подготовка каталогов и дистрибутива#
Скачайте архив дистрибутива. Файл globalserver.zip передается через контактное лицо.
Создайте временный каталог и загрузите в него архив:
sudo mkdir -p /tmp/global
Создайте каталог для установки сервера:
sudo mkdir -p /opt/global/globalserver
Распакуйте дистрибутив:
sudo unzip /tmp/global/globalserver.zip -d /opt/global/globalserver
Назначьте владельцем каталога пользователя global:
sudo chown -R global:global /opt/global/globalserver
Настройка прав на скрипты#
Выдайте права на выполнение основных скриптов:
sudo chmod ug+x /opt/global/globalserver/start.sh
sudo chmod ug+x /opt/global/globalserver/stop.sh
sudo chmod ug+x /opt/global/globalserver/globalscheduler.sh
Настройка parameters.sh#
Откройте актуальный файл parameters.sh и проверьте параметры окружения. При необходимости скорректируйте их в соответствии с фактическим расположением Oracle Client и его библиотек.
Внимание
Изменения конфигурации выполняйте только в файле parameters.sh. При изменении конфигурации в других файлах работоспособность не гарантируется.
Пример минимальной работоспособной конфигурации без дополнительных библиотек:
# Для запуска сервера приложений с подключением к БД Oracle
# Путь к Oracle Client
export ORACLE_HOME="/opt/oracle"
# Путь к каталогу с tnsnames.ora
export TNS_ADMIN="/opt/oracle/network/admin"
# Пути к библиотекам Oracle Client
export LD_LIBRARY_PATH=$ORACLE_HOME:$ORACLE_HOME/:$LD_LIBRARY_PATH
# Java-библиотеки и JDBC-драйвер Oracle Client
export EXT_LIBS=$ORACLE_HOME/ojdbc6.jar:$ORACLE_HOME/ucp.jar:$ORACLE_HOME/orai18n.jar
export EXT_LIBS_CLASSPATH="$EXT_LIBS/*"
Убедитесь, что указанные пути соответствуют фактическому расположению Oracle Client на сервере.
Настройка сервиса global3#
Для управления сервером приложений через systemd используется сервис global3.
Скопируйте шаблон сервиса и создайте файл global3.service:
sudo cp /opt/global/globalserver/admin/linux/global3.service.origin /lib/systemd/system/global3.service
Обновите конфигурацию systemd и включите сервис:
sudo systemctl daemon-reload
sudo systemctl enable global3
Настройка подключения к базе данных#
Откройте файл global3.config.xml в каталоге конфигурации сервера приложений внутри директории:
/opt/global/globalserver/application
В раздел <databases> добавьте описание подключения к базе данных Oracle:
<database alias="<alias>">
<users>
<user name="<user>" password="<password>"/>
</users>
</database>
Параметры подключения:
<alias>— логический псевдоним базы данных, который используется приложением;<alias>должен совпадать с именем подключения, указанным вtnsnames.ora;<user>и<password>— учетные данные схемы Oracle, под которой сервер приложений подключается к базе данных.
После изменения сохраните файл конфигурации.
Запуск сервера приложений#
Запустите сервис:
sudo systemctl start global3
Проверьте его состояние:
sudo systemctl status global3
При успешном запуске сервис должен перейти в состояние active (running).
Устранение ошибки с библиотеками Oracle#
При входе в Global может возникнуть ошибка:
/opt/oracle/libocijdbc11.so: libnnz11.so: невозможно задействовать исполняемый стек, как требует разделяемый объект: Отказано в доступе.
Причина связана с тем, что некоторые библиотеки Oracle помечены как требующие исполняемый стек, а политика безопасности системы запрещает это.
Debian 12#
Установите execstack:
sudo apt update
sudo apt install execstack
Если на сервере нет доступа в интернет, выполните следующие действия на другой машине с той же версией системы и архитектурой:
Скачайте пакет
execstack:sudo apt update sudo apt download execstack
Передайте
.deb-файл на сервер.Установите пакет:
sudo dpkg -i execstack_*.deb
Снимите флаг исполняемого стека у библиотек Oracle:
sudo execstack -c /opt/oracle/libnnz11.so
sudo execstack -c /opt/oracle/libocijdbc11.so
Перезапустите сервис global3.
Debian 13#
Установите patchelf и снимите флаг исполняемого стека:
sudo apt update
sudo apt install patchelf
patchelf --clear-execstack /opt/oracle/libnnz11.so
patchelf --clear-execstack /opt/oracle/libocijdbc11.so
Настройка логирования#
Настройка логирования сервера приложений выполняется в отдельных конфигурационных файлах и описана в разделе Логирование сервера приложений.
Важно
Конфигурационные файлы поставляются с закомментированным содержимым. Проверьте файлы конфигурации, настройте необходимые параметры и раскомментируйте их.
Проверка установки#
После завершения настройки выполните проверку.
Убедитесь, что сервис запущен:
sudo systemctl status global3
Проверьте журналы сервера приложений и
systemd. Убедитесь, что в них нет критических ошибок.Для проверки используйте:
логи
GlobalServer;журнал
systemdдля сервисаglobal3.
Проверьте подключение к базе данных Oracle:
выполните авторизацию в системе;
убедитесь, что базовые операции в приложении выполняются без ошибок.
Если проверки завершились успешно, сервер приложений GlobalServer установлен, подключен к Oracle и готов к работе.
