V. HI-TECH
УДК 004.4; 004.4; 004.7
К.И. Дегтярев1, С.М.Семенов2
КЛИЕНТ-СЕРВЕРНЫЙ ВАРИАНТ ФУНКЦИОНИРОВАНИЯ ИНФОРМАЦИОННОЙ
СИСТЕМЫ «НАУКА» ВГУЭС
В работе последовательно излагается технология установки необходимых программных продуктов для организации доступа к информационной системе «Наука» (равно как и к любой другой) с использованием веб-клиента и «тонкого клиента». Статья может представлять интерес для разработчиков информационных систем с организацией доступа через Интернет.
Появление новой технологической платформы «1С: Предприятие 8.2» существенно расширяет возможности применения платформы «1С» для создания корпоративных систем, так как новая платформа позволяет вести работу с базой данных, используя интернет-браузер Internet Explorer или Mozilla из операционных систем Windows и Linux. Последнее весьма актуально, так как в ряде вузов и учреждений осуществляется переход на свободно распространяемую систему Linux.
1 Константин Игоревич Дегтярев, аспирант кафедры информационных систем и компьютерных технологий ИИБС ВГУЭС, специальность 05.13.18, E-mail: [email protected].
2 Сергей Максимович Семенов кандидат технических наук, заведующий кафедрой информационных систем и компьютерных технологий ИИБС ВГУЭС, E-mail: sergey. [email protected].
Важно также отметить автоматическую генерацию интерфейсов в системе «1С: Предприятие 8.2», что существенно повышает качество и, в то же время, удешевляет разработку корпоративных систем. При этом, платформа «1 С» является предметно-ориентированной, что также ускоряет разработку приложений, связанных с управлением
предприятием, и упрощает их последующее сопровождение и изменение.
Разработанная во ВГУЭС экспериментальная версия
информационной системы «Наука» предназначена для автоматизации научно-исследовательской деятельности, которая может потребоваться в следующих случаях: при формировании списка трудов по различным критериям, при работе с перечнем изданий ВАК, при подборе кодов УДК и ГРНТИ по определенным специальностям ВАК и т.д. Целью автоматизации является существенное ускорение поиска необходимой информации.
Предметом данной статьи является последовательное изложение технологии установки необходимых программных продуктов для организации доступа к информационной системе «Наука» (равно как и к любой другой) с использованием веб-клиента и «тонкого клиента». Необходимо отметить, что ряд вопросов приводится в литературе весьма схематично, либо вообще не рассматривается, например, криптозащита. Статья может представлять интерес для разработчиков информационных систем с организацией доступа через Интернет.
Установка сервера 1С: Предприятия 8.2
Комплект пакетов 1С: Предприятие «Управляемое приложение» доступен на сайте usersv81.1c.ru. Комплект состоит из следующих пакетов:
- 1C_Enterprise-common-8.2.8-256.i386.rpm содержит собственно компоненты сервера 1С (кластера серверов);
- 1C_Enterprise-server-8.2.8-256.i386.rpm содержит компоненты, необходимые для остальных пакетов, входящих в комплект серверного программного обеспечения;
- 1C_Enterprise-ws-8.2.8-256.i386.rpm содержит компоненты web-сервиса. Они дают возможность работать с конфигурацией 1С посредством web-интерфейса;
- 1C_Enterprise-crs-8.2.8-256.i386.rpm содержит компоненты сервера хранилища конфигураций. С помощью этого сервиса возможно получать удаленный доступ к хранилищу конфигураций 1 С;
Устанавливаются пакеты в приведенном порядке с помощью утилиты rpm. Запуск сервера управляемого приложения проводится командой service srv1cv82 start. Вывод скрипта запуска 1С сервера при успешном запуске приведен на рисунке 1
[rootßlc ~] # service srvlcv82 staut Starting 1C:Enterprise 8.2 server: OK Рис. 1 - Вывод стартового скрипта при успешном запуске.
При запуске этого сервиса в домашнем каталоге пользователя usr1cv82 (/home/usr1cv82/) создается папка .1cv82, в которой содержатся конфигурационные файлы сервера кластеров 1 С. При изменении сетевого имени компьютера необходимо отредактировать файл конфигурации сервера кластеров /home/usr1cv82/.1cv82/1C/1Cv82/srvribrg.lst, указав в нем сетевое имя (в данном случае 1c.vvsu.ru). После изменения конфигурационных файлов сервис следует перезапустить. Осуществляется перезапуск сервера командой service srv1cv82 restart. После всех вышеуказанных действий сервер запущен и готов к работе.
Необходимо заметить что, для серверной части 1 С предприятие «Управляемое приложение» в комплекте поставляется ключ защиты HASP. Без этого ключа возможна одновременная работа только двенадцати пользователей на устанавливаемом сервере. Для снятия этого ограничения необходимо установить ключ физически, а также установить программное обеспечение к нему. Необходимое программное обеспечение входит в комплект пакета aksusbd-redhat-1.14-3.i386.rpm. Пакет устанавливается с помощью команды rpm. Вывод утилиты rpm при успешной установке и запуске программы выглядит так, как показано на рисунке 2.
Таким образом, после выполненных действий на серверной операционной системе серверное приложение 1C: Предприятие
«Управляемое приложение» запущено и готово к работе с тем количеством пользователей, которое позволяет ключ HASP.
[root@1с ~]# rpm -і aksusbd-redhat-1.14-3.І386.rpm Starting AKSUSB daemon: [ OK ]
Starting ÜINEHASP daemon: [ OK ]
Starting HASPLH daemon: [ OK ]
Рис. 2 - Вывод команды установки ПО для ключа HASP.
Проверка состояния серверного приложения 1 С: Предприятие «Управляемое приложение» и программного обеспечения необходимого для работы ключа HASP производится с помощью команд service srv1cv82 status и service aksusbd status. Результат выполнения этих команд при запущенных приложениях должен выглядеть как на рисунке 3.
[rootßlc ~]U service srvlcv82 status 1C:Enterprise S.2 server status:
[rootSlc ~]U service aksusbd status aksusbd (pid 13353) is running... winehasp (pid 13359) is running... hasplmd (pid 13 3 62) is running...
Рис. 3 - Вывод команды запроса состояния при запущенных приложениях
Установка сервера СУБД PostgreSQL
Для работы 1С: Предприятие «Управляемое приложение» с сервером СУБД PostzgreSQL необходимо установить следующие пакеты:
- postgresql-libs-8.1.5-14.1C.x86_64.rpm;
- postgresql-8.1.5-14.1C.x86_64.rpm;
- postgresql-server-8.1.5-14.1C.x86_64.rpm;
- postgresql-pl-8.1.5-14.1C.x86_64.rpm;
- postgresql-contrib-8.1.5-14.1C.x86_64.rpm.
Для нормальной работы сервера 1С необходима особая -пропатченная версия PostgreSQL. Для установки пакетов необходимо убедиться, что на сервере нет установленных пакетов другой версии PosqtgeSQL. Пакеты с пропатченной PostgreSQL можно найти на сайте ethersoft.ru. Необходимо загрузить указанные пакеты и приступить к инсталляции PostgreSQL.
Перед запуском сервера надо проследить чтобы параметр ядра Linux shmmax=256000000, обеспечивал это условие выполнением команды sysctl -w kernel.shmmax=256000000. Автозапуск команды производится её добавлением в /etc/rc.local.
После установки всех пакетов следует запустить службу postgres (важно, чтобы переменная LANG имела именно такое значение как показано ниже):
LANG=ru_RU.utf-8 /etc/init.d/postgresql start.
Эта команда также заполнит папку /var/lib/pgsql/data/ настройками по умолчанию.
После запуска необходимо открыть файл
/var/lib/pgsql/data/postgresql.conf и изменить параметр:
- stats_row_level = off.
Далее следует открыть файл /var/lib/pgsql/data/pg_hba.conf в котором указаны допустимые параметры подключения к PostgreSQL-серверу. Необходимо убедиться, что строки:
- host all all 0.0.0.0/0 trust;
- host all all 127.0.0.1/32 trust;
- local all postgres trust;
присутствуют и не закомментированы.
Для применения параметров следует перезапустить сервер PostgreSQL:
- /etc/init.d/postgresql restart.
Далее необходимо выполнить вход в консоль PostgreSQL командой:
- psql -h localhost postgres postgres.
При первом запуске PostgreSQL создаётся учётная запись postgres с паролем postgres. Первое, что нужно сделать, это сменить пароль командой:
ALTER USER postgres PASSWORD 'your_new_password';
По окончании работы с консолью PostgreSQL следует выполнить команду:
- \q
Для доступа к базам данных 1С: Предприятие «Управляемое приложение» нужно создать пользователя (onec) и присвоить ему права необходимые для создания информационной базы. Для этого нужно выполнить команду createuser onec с правами пользователя postgresql. Далее требуется установить для пользователя пароль утилитой psql (команда «ALTER USER onec WITH ENCRYPTED PASSWORD 'пароль'; «). Появится окно, в котором необходимо заполнить поля (рисунок 4):
Рис. 4 - Настройка имени и описания сервера 1С: Предприятия 8.2
После того, как сервер СУБД PostgreSQL и сервер 1С: Предприятие «Управляемое приложение» установлены и запущены, можно приступить к созданию информационной базы в кластере серверов
1С: Предприятие. Для этого на клиентской рабочей станции надо зайти в Пуск > программы > 1С: Предприятие «Управляемое приложение» > Серверы 1С Предприятия. Создать новый центральный сервер можно правым щелчком. Действия после закрытия окна приведены на рисунке 5. В новой версии 1С можно создавать БД прямо из оснастки (не прибегая к помощи консоли Ров1§ге80Ь, хотя такая возможность сохранилась).
Рис. 5 - Создание информационной базы в 1С 8.2.
В появившемся окне необходимо ввести настройки соединения и отметить флажок «Создать базу данных в случае её отсутствия». В качестве примера можно привести значения параметров:
Имя:
Описание:
Защищенное соединение: Сервер баз данных:
Тип СУБД:
База данных: Пользователь сервера БД: Пароль пользователя БД Язык (Страна):
Смещение дат:
Создать базу данных
demo
demo
выключено
1c.vvsu.ru
PostgreSQL
demo
onec
****
русский (Россия) 0
в случае ее отсутствия: Да
Установить блокировку
регламентных заданий: Нет
Установка и настройка web-сервера
Установка web-сервера производится с помощью системы apt, заранее установленной и настроенной, с помощью команды apt-get install httpd, после ввода которой система apt автоматически будет искать пакет httpd на ресурсе ftp.mirror.yandex.ru. После того, как система его найдет, она осуществит его загрузку и проверку на наличие зависимостей. Если неудовлетворенная зависимость будет найдена, то система apt загрузит недостающие пакеты и установит их. После успешного выполнения команды установки в системе появится установленный и готовый к работе web-сервер Apache 2.2.3-22. После того как web-сервер установлен, необходимо установить модуль поддержки ssl для web-сервера apache. Для этого нужно выполнить команду apt-get install mod_ssl.
В случае успешного запуска web-сервера следует перейти к его настройке. Поскольку доступ к информационным базам средствами web-клиента будет осуществляться через протокол HTTPS, то все основные настройки будут выполнены в файле конфигурации ssl модуля, но некоторые параметры необходимо добавить в основной файл конфигурации /etc/httpd/conf/httpd.conf, а именно строки:
- NameVirtualHost 1c.vvsu.ru:443 # Сообщает серверу о существовании виртуального хоста на HTTPS порту;
- LoadModule _1cws_module /opt/1C/v8.2/i386/wsap22.so # Подгружает модуль web-расширения от 1С.
После добавления этих строк можно переходить к конфигурационному файлу ssl, а именно /etc/httpd/conf.d/ssl.conf. В файле настройки помимо основных настроек содержатся описания двух директорий /demo и /nauka. Описания этих директорий и есть настройки необходимые для работы каждой информационной базы.
Прежде всего, каталог указанной информационной базы привязывается к месту хранения настроек для доступа к информационным базам 1С: Предприятия или доступа к файловому варианту базы).
Местом хранения настроек является каталог /home/usr1cv82/apache_bases. В этой директории присутствуют поддиректории с таким же названием, как имя информационной базы (это необязательно, но рекомендуется во избежание путаницы).
Далее устанавливаются права доступа к папке, программа обработчик(wsap22), и файл с настройками информационной базы.
Файл настройки информационной базы сообщает программе обработчику, на каком сервере находится информационная база и как она
называется. Файл для информационной базы demo должен выглядеть так, как на рисунке 6.
Информационная база demo является простейшей конфигурацией и создана только в целях проверки работы web-клиента.
Указанных настроек достаточно для запуска тестовой базы в режиме web-клиента. Тестирование должно происходить с помощью программы Internet Explorer или Mozilla Firefox. В адресной строке программы броузера нужно ввести следующий адрес
ittps://lc.vvsu.ru/demo/._____________________________________________
[uoot01c demo]# cat ./default.vrd ivrs:point
xmlns : vus=,rhttp : //v8 . lc . ru/8 . 2/virtual-resource-systenirr base="/demo"
ifci=,rSi:v]:=.£quot; lc . wsu. rusquot; ; Ref=£quot; deinoiquot; "/> Рис. 6 - Листинг файла /home/usr1cv82/apache_bases/demo/default.vrd
Успешным результатом является появление окна, требующего ввести имя пользователя и пароль.
Возможна загрузка информационной базы сразу, если в конфигурации не установлена система привилегий. Если же окно появилось, то необходимо заполнить предлагаемые поля.
Если логин и пароль верны, то в программе для просмотра web-страниц открывается главное окно информационной базы. В этом случае тестирование работоспособности web-клиента завершается.
Поскольку подключение осуществляется через защищенный протокол HTTPS, для нормальной работы которого необходимы зарегистрированные в специальных системах сертификаты (которых нет) -необходимо подтвердить доверие к этому сертификату.
Заключение
Проведенные работы показали хорошие временные показатели доступа к информационной системе «Наука» с использованием вебклиента. Поэтому поставлена следующая задача - провести НИОКР и разработать тиражируемую версию информационной системы для использования ее в других вузах и научно-исследовательских учреждениях.
Библиография
Марк Арнольд, Джефф Д. Алмейда, Клинт Миллер. Администрирование Apache, Изд-во «Лори», 2002 - 418 с.
Стоунз Р., Мэтью Н. PostgreSQL. Основы.-Пер. с англ.- Спб: Символ-Плюс, 2002.- 640 с., ил.