1С Предприятие 8.2 Сервер на базе ALT Linux 7.0 ServerЛабораторная работа № 2:
Развертывание 1С Предприятие 8.2 Сервер для подключения веб-клиентов.
Скачать ролик можно по адресу:
http://salomatin.ru/1C-L3.ogv -оригинальное качество
http://youtu.be/sZx5PBwgcB0Отдельно показана работа в командной строке.
Что и как надо вводить, какие выводы сервера на команды. Какие вносятся изменения в конфигурационные файлы.
Второй ролик не является самостоятельным, а идет как дополнение к лабораторной работе.
Скачать ролик можно по адресам:
http://salomatin.ru/1C-L4.ogv оригинальное качество
http://youtu.be/zL_chZ6uuWw На рабочей станции с любой операционной системой устанавливаем VirtualBox с официального сайта. Для этого заходим на сайт
http://download.virtualbox.org/virtualbox/Скачиваем подходящую нам версию и разворачиваем у себя.
При создании виртуальной машины используем образ
ftp://ftp.altlinux.org/pub/distributions/ALTLinux/p7/images/centaurus/altlinux-7.0.1-centaurus-i586-ru-install-dvd5.iso.
При настройках опция Сеть: Адаптер 1, Выбираем сетевой мост, Имя eth0 ваша сетевая карта, для того чтобы сервер появился в вашей локальной сети как самостоятельный ресурс. Лучше, если в этой сети был уже настроен DHCP, который бы выдавал IP адрес нашему серверу автоматически. В противном случае, при установке пропишите адрес, шлюз и DNS вручную.
Запускаем установку. Далее по шагам:
Шаг 4/11 выбираем профиль: Установка сервера (требуется 11 Gb) и ставим галочку "очистить все диски перед применением профиля"
Шаг 5/11 выбираем "Минимальная установка", после чего вручную ставим всего две галочки
Графическая система - "Основные компоненты (Xorg)"
Серверные приложения - Сервер HTTP (Apache2, PHP)
Галочка SysVinit остается.
Нажимаем "Далее"
Шаг 8/11 Сетевой карте указываем получать адрес автоматически по DHCP. (или вручную, если в вашей локальной сети нет DHCP-сервера)
Заканчиваем установку. При появлении приглашения login вводим имя пользователя и его пароль.
командой
[vova@server1c ~]$ ip a
узнаем ip адрес с которго теперь наш сервер виден в локальной сети для удаленного управления командной строкой.
Можно дальнейшую настройку Сервера осуществлять используя только его интерфейс.
Даем команду startx и открываем графическое окно. Там есть пускалка Firefox для настройки и терминал.
Открываем терминал. Становимся суперпользователем root ( не забываем su применять со знаком "-" т.е su -). Обновляем сведения о пакетах для apt-get.
[root@server1c ~]#apt-get update
Устанавливаем более удобный терминал
[root@server1c ~]#apt-get install qterminal
выходим из графики и снова заходим.
Открываем QTerminal
Браузером Firefox находим инструкцию, для того чтобы вручную не писать команды. Дальше копируем и вставляем.
Добавляем пакеты:
[root@server1c ~]#apt-get install glib2 glib2-devel ttf2pt1
[root@server1c ~]#apt-get install ImageMagick wget
[root@server1c ~]#apt-get install libgsf unixODBC
[root@server1c ~]#apt-get install 1c-preinstall 1c-preinstall-full
Далее:
Имя нашего сервера должно без проблем разрешаться в IP-адрес. Для это открываем для редактирования файл
[root@server1c ~]# mcedit /etc/hosts
и вписываем туда:
127.0.0.1 server1c server1c.localdomain
Выходим из редактора с сохранением и запускаем скрипт, чтобы изменения вступили в силу:
[root@server1c ~]# /etc/chroot.d/resolv.all
Проверяем:
[root@server1c ~]# ping server1c
[root@server1c ~]# ping server1c.localdomain
Переходим ко второй части:
Развертывание на сервере приложений 1C Предприятие 8.2, Создаем каталог, например 1с в домашней директории
[root ot@server1c ~]#mkdir /root/1c
размещаем туда архив приложения 1С rpm.tar.gz и открываем это архив
[root@server1c 1c]#gunzip rpm.tar.gz
устанавливаем пакеты:
[root@server1c 1c]#apt-get install *.rpm
выполняем скрипт:
[root@server1c ~]#/opt/1C/v8.2/i386/utils/config_server
скрипт должен быть исполнен без ошибок,
далее заходим
[root@server1c ~]# mcedit /opt/1C/v8.2/i386/conf/grcmncfg/type.xml
добавляем в конец файла
</typemap>
перезапускаем
[root@server1c ~]# service srv1cv82 restart
СУБД PostgreSQLСоздаем каталог, например postgres в домашней директории,
[root ot@server1c ~]#mkdir /root/postgres
заходим в него и скачиваем
[root@server1c postgres]#wget -c ftp://updates.etersoft.ru/pub/Etersoft/Postgres@Etersoft/stable/ALTLinux/p7/*.rpm
устанавливаем:
[root@server1c postgres]#apt-get install *.rpm
Переходим в
[root@server1c ~]# mcedit /etc/sysctl.conf
добавляем в конец файла
kernel.shmmax = 1073741824
kernel.shmall = 2097152
kernel.shmmni = 4096
перегружаем сервер
[root@server1c ~]# reboot
осуществляем первый запуск
[root@server1c ~]#service postgresql start
открываем для редактирования файл
[root@server1c ~]#mcedit /var/lib/pgsql/data/pg_hba.conf
разрешаем входить локально без пароля изменив одну строку
local all all ident
на
local all all trust
перегружаем:
[root@server1c ~]#service postgresql restart
задаем пароль 333 для пользователя postgres, от имени которого потом будем создавать базу со стороны клиента подключения
[root@server1c ~]#psql -U postgres -d template1 -c "ALTER USER postgres PASSWORD '333'"
Установка и запуск защиты HASPСоздаем каталог, например hasp в домашней директории,
[root ot@server1c ~]#mkdir /root/hasp
заходим в него и скачиваем
[root@server1c hasp]#wget -c ftp://updates.etersoft.ru/pub/Etersoft/HASP/stable/ALTLinux/p7/*.rpm
устанавливаем:
[root@server1c hasp]#apt-get install *.rpm
осуществляем первый запуск
[root ot@server1c ~]#service haspd start
Веб-сервер 1С Предприятие 8.2 Возвращаемся на сервер и запускаем web-server Apache2
[root@server ~]#service httpd2 start
заходим по адресу
http://192.168.0.10 и видим тестовую страницу It Works
Редактируем Apache2 для 1С
Запускаем скрипт:
[root@server ~]#/opt/1C/v8.2/i386/webinst -apache22 -wsdir basa1 -dir '/var/www/html/basa1/' -connStr 'Srvr="server1c.localdomain";Ref="basa1"' -confPath /etc/httpd2/conf/httpd2.conf
Подправляем права вновь созданному каталогу ( скрипт его создал сам)
[root@server ~]#chown -R apache2:apache2 /var/www/html/basa1
заходим в стартовый файл 1С
[root@server ~]#mcedit /var/www/html/basa1/default.vrd
и заменяем локальное имя на IP адрес нашего сервера
ib="Srvr="server1c.localdomain";Ref="basa1""/>
на
ib="Srvr="192.168.0.10";Ref="basa1""/>
заходим
[root@server ~]#mcedit /etc/httpd2/conf/httpd2.conf
исправляем ошибку, убирая лишний "/" в предпоследней строке
ManagedApplicationDescriptor "/var/www/html/basa1//default.vrd"
на
ManagedApplicationDescriptor "/var/www/html/basa1/default.vrd"
наконец
[root@server ~]#service httpd2 restart
На стороне клиента: На клиенте также имя нашего сервера должно без проблем разрешаться в IP-адрес. Для это открываем файл
C:\WINDOWS\system32\drivers\etc\hosts
и добавляем строки:
192.168.0.10 server1c
192.168.0.10 server1c.localdomain
сохраняем и проверяем:
ping server1c
ping server1c.localdomain
Если порты 1451, 5432 на сервере со стороны клиента доступны, пинги по имени проходят, то подключаемся клиентом к нашему серверу штатным 1C способом, создаем новую базу, закачиваем любую готовую базу для тестирования.
Заходим на сервер с любой рабочей станции браузером по адресу
http://192.168.0.10/basa1и видим приглашение 1С
Если связи нет, возможно закрыт порт 1451
Удаляем конфигурационные файлы:
[root@server1c ~]#rm -f /home/usr1cv82/.1cv82/1C/1Cv82/srvribrg.lst
[root@server1c ~]#rm -f /home/usr1cv82/.1cv82/1C/1Cv82/reg_1541/1CV8Reg.lst
Запускаем:
[root@server1c ~]# service srv1cv82 restart
Проверяем открыт ли порт 1541