Установка двух версий сервера 1С на Linux
Часто на практике возникает необходимость установки двух версий сервера 1С Предприятия на одну машину.
Как это сделать в Linux читайте ниже.
Но для начал вкратце напомним для чего это может понадобиться.
Для чего устанавливать два сервера 1С на одну машину
- Надо запустить тестовый сервер 1С, а отдельной машины под него нет.
- Надо запустить сервера 1С разных версий на production-сервере.
- Надо запустить сервера лицензий разных версий на выделенной машине.
Итак, например у нас на сервере Linux уже установлена платформа 8.3.13.1648 – это первый экземпляр сервера. Теперь мы хотим установить сервер версии 8.3.14.1857 – второй экземпляр. Подразумеваем, что первый экземпляр сервера уже установлен и запущен. Если кто забыл, про установку можно почитать тут Установка сервера 1С Предприятия на Linux.
Установка второго экземпляра сервера 1С
Зайдём на сервер под пользователем root.
1. Создадим пользователя usr1cv8314 для запуска второго экземпляра сервера
1 |
adduser usr1cv8314 |
2. Создадим каталог для помещения установочных пакетов второго экземпляра и перейдем в этот каталог:
1 2 |
mkdir /install cd /install |
3. Поместим в этот каталог установочные пакеты второго экземпляра:
- 1C_Enterprise83-common-8.3.14-1857.x86_64.rpm
- 1C_Enterprise83-server-8.3.14-1857.x86_64.rpm
- 1C_Enterprise83-ws-8.3.14-1857.x86_64.rpm
4. Распакуем эти пакеты, находясь в каталоге /install. Команда rpm2cpio просто извлекает файлы из пакета без установки в формате архива cpio, утилита cpio в свою очередь их разархивирует:
1 2 3 |
rpm2cpio 1C_Enterprise83-common-8.3.14-1857.x86_64.rpm | cpio -idv rpm2cpio 1C_Enterprise83-server-8.3.14-1857.x86_64.rpm | cpio -idv rpm2cpio 1C_Enterprise83-ws-8.3.14-1857.x86_64.rpm | cpio -idv |
5. Переименуем каталог с исполняемыми файлами сервера 1С в /opt/1C/v8.3.14-1857 чтобы не было совпадения с уже установленым сервером другой версии. Значение 8.3.14-1857, означает версию платформы 1С и ее релиз. Вместо номера релиза можно указать номер порта, например так 8.3.14-2540. Главное чтобы не было совпадений с другими установленными версиями сервера 1С:
1 |
sudo mv /install/opt/1C/v8.3 /opt/1C/v8.3.14-1857 |
6. В файле /install/etc/init.d/srv1cv83 поменяем параметры:
1 |
vim /install/etc/init.d/srv1cv83 |
Внесем следующие изменения:
Зададим новую переменную G_VER_SRV с версией второго экземпляра сервера 1С. Присвоим ей значение 8.3.14-1857, именно так ранее мы назвали каталог, но без «v» в начале. Важно указать именно имя каталога, так как из него будет происходить запуск исполняемых файлов сервера 1С:
1 |
G_VER_SRV=8.3.14-1857 |
- Изменим переменную G_BINDIR — добавим строку ${G_VER_SRV}, должно получиться так:
1 |
G_BINDIR="/opt/1C/v${G_VER_SRV}/${G_VER_ARCH}" |
- Меняем переменную G_TITLE — укажим в названии имя нашей переменной с версией сервера, можно еще добавить строку «on port 2540», должно получиться так:
1 |
G_TITLE="1C:Enterprise ${G_VER_SRV} server on port 2540" |
- Изменим имя пользователя, если второй экземпляр будет запускаться под другим пользователем:
1 |
[ -z "$SRV1CV8_USER" ] && SRV1CV8_USER=usr1cv8314 |
- Изменим имя pid-файла процесса для второго экземпляра сервера 1С:
1 |
[ -z "$SRV1CV8_PIDFILE" ] && SRV1CV8_PIDFILE="/var/run/srv1cv${G_VER_SRV}.pid" |
7. В файле /install/etc/sysconfig/srv1cv83 поменяем параметры:
1 |
vim /install/etc/sysconfig/srv1cv83 |
Внесем изменения в строки, укажем новый порты и рабочий каталог:
1 2 3 4 |
SRV1CV8_PORT=2540 SRV1CV8_REGPORT=2541 SRV1CV8_RANGE=2560:2591 SRV1CV8_DATA=/home/usr1cv8314/v8.3.14-1857/.1cv8 |
8. Скопируем скрипт запуска демона агента сервера в системный каталог /etc/init.d в папку с именем нашего второго экземпляра сервера 1С:
1 2 |
sudo cp /install/etc/init.d/srv1cv83 /etc/init.d/srv1cv83.14-1857 sudo cp /install/etc/sysconfig/srv1cv83 /etc/sysconfig/srv1cv83.14-1857 |
Запуск второго экземпляра сервера 1С
1. Запустим второй экземпляр.
1 |
service srv1cv83.14-1857 start |
2. Убедимся, что процессы сервера 1С первого и второго экземпляра запущены и работают:
1 |
ps -ef | grep usr1c |
На экране видим в том числе процессы ragent, rmngr и rphost запущенные из папки /opt/1C/v8.3.14-1857 — это и есть процессы второго экземпляра сервера.
Проверим что процессы сервера 1С первого и второго экземпляра слушают заданные нами порты:
1 |
netstat -tlnp | egrep '1540|2540|1541|2541|1560|2560|1561|2561|1562|2562' |
Видим, что порты 2540, 2541 и 2560 прослушиваются, значит все настройки сделаны правильно.
Аналогичную проверку можно выполнить такой командой:
1 |
ss -tlnpu | egrep '1540|2540|1541|2541|1560|2560|1561|2561|1562|2562' |
3. Поле проверки работоспособности нашего второго экземпляра серера 1С можно удалить файлы из каталога /install:
При использовании команды рекурсивного удаления файлов rm -rf соблюдайте осторожность!!! Особое внимание при использовании шаблонов типа «/*». Так команда rm -rf /* может привести к полной очистке системного диска и краху системы.
1 |
rm -Rf /install |
Если после этой команды Linux все еще работает, поздравляем!!! Вы все сделали правильно!
Еще можно посмотреть
Похожие записи
- Подключение репозитория под ОС Linux
- Ошибка 1С:Предприятие «Потеряно соединение»
- НАСТРОЙКА PG_PROFILE ДЛЯ POSTGRESQL 1.
- Статистика PostgreSQL при работе с 1С:Предприятием
- Очистка кэша: серверного и клиентского для 1С:Предприятия
- Настройка непрерывного архивирования (point-in-time-recovery, PITR) в PostgresPro 11 Linux
- 1C тормозит и возникают ошибки. С чего начать расследование?
- Анализ технологического журнала 1С регулярными выражениями. От простого к сложному.
- Хранение файлов 1С в томах на nfs-шаре Linux
- Администрирование серверов 1С на Linux