Установка нескольких версий сервера 1С на один компьютер
Для установки нескольких разных версий сервера 1С на один компьютер, необходимо разместить их на разных портах и указать разные папки описания кластера.
Первым этапом устанавливаем первую версию. Заходим в редактор реестра по пути:
Компьютер\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
Находим там ветку с сервером.


Открываем файл текстовым редактором и правим:

Меняем название ветки и имя сервиса, добавляем, например, номер версии платформы. Запускаем этот файл и помещаем его данные в реестр.
Открываем редактор реестра, там появляется уже две ветки с сервером 1С. Далее необходимо у второй ветки указать в параметре ImagePath другие порты и папку описания кластера. Если серверы разной разрядности, то они уже разнесены по разным папкам.

После этого заходим в службы, и запускаем службу сервера 1С. Возможно потребуется дополнительно настроить имя, под которым служба будет запускаться.


При создании новой базы, в адресе сервера 1С необходимо через знак двоеточие прописывать номер порта.
В консоль настройки кластеров 1С можно добавить оба кластера, но, если серверы разной версии, то открыть получится только один. В меню «Пуск» есть команды регистрации консоли кластеров конкретной версии, и они взаимоисключающие. Запускать команду необходимо от имени администратора системы.
Установка двух серверов 1С на Windows
Рассмотрим для чего нам может понадобиться установить второй сервер 1С и как это сделать на ОC Windows.
Для чего нужен второй экземпляр сервера 1С
Основными причинами, по которым необходим запуск двух служб сервера 1С на одной машине это:
1. Создание тестового контура 1С. По понятным причинам, разработка и отладка программ 1С на продуктивном сервере плохая идея. В лучшем случае это будет замедлять производительность рабочего контура 1С, в худшем приведет к его падению и простою. Чем это чревато, думаю не стоит говорить.
2. Необходимость запуска серверов 1С разных версий. Данный вариант так же довольно часто становиться актуальным если используется большое количество конфигураций. Для работы некоторых конфигураций иногда требует более свежая версия платформы. Но часто по разным причинам новые релизы платформы не отличается стабильностью и переносить все продуктивные базы на них не очень хорошее решение.
3. Наконец работа нескольких служб сервера 1С на одной машине позволяет в ручном режиме дифференцировано настроить производительность кластера 1С для отдельных баз данных.
Установка второго сервера 1С одной версии
Итак, будем считать, что у нас на компьютере уже установлен один экземпляр сервера 1С. Чтобы запустить второй экземпляр сервера 1С установленной версии необходимо:
1. Запускаем утилиту «Командная строка» от имени администратора:

2. Выполним в командной строке следующую команду, создадим службу 1CServer_test:
sc create 1CServer_test binPath = «C:\Program Files (x86)\1cv8\8.3.17.1549\bin\ragent.exe»
После выполнения, должны увидеть CreateService: успех
3. Заходим в редактор реестра. Находим там в ветке HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ services нашу службу 1CServer_test:
4. Меняем ключ ImagePath, вносим туда такую строку:
«C:\Program Files\1cv8\8.3.17.1549\bin\ragent.exe» — srvc — agent — regport 1641 — port 1640 — range 1660 : 1691 — d «C:\Program Files\1cv8\srvinfo_16»

Здесь мы изменили типовые порты, который уже заняты первым экземпляром сервера. Вместо указанных в примере можно задать свои значения. При необходимости можно прописать ключ -debug чтобы включить отладку на сервере 1С. Подробней про отладку можно почитать тут.
Установка второго сервера 1С другой версии
«C:\Program Files\1cv8\8.3.15.1830\bin\ragent.exe» — srvc — agent — regport 1641 — port 1640 — range 1660 : 1691 — d «C:\Program Files\1cv8\srvinfo_16»
Запуск второго экземпляра сервера 1С
1. Заходим в раздел «Службы», ищем созданную нами службу 1CServer_test и задаем если надо необходимые настройки. Можно, например, задать пользователя, под которым будет работать второй экземпляр сервера 1С:
2. После сохранения настроек службы стартуем ее. Контролируем что состояние службы стало «Работает».
3. Переходим к проверке работы второго экземпляра сервера 1С. Создаем через консоль серверов 1С подключение к нашему новому серверу. Указываем тот порт, агента сервера, который мы задали в настройках службы, в данном случае 1640:
4. Создаем подключение к базе расположенной на втором экземпляре сервера 1С. Напомню, что обращаться к этому кластеру серверов 1С надо уже с указанием порта менеджера кластера, например, так: SRV1C:1641 
Итоги
Как видим запуск второго сервера 1С не представят особого труда и в тоже время дает ряд преимуществ. Так запуск нескольких экземпляров сервера 1С на одной машине позволяет более гибко осуществлять настройку и эксплуатацию как рабочих так и тестовых контуров 1С.
Еще можно посмотреть
ЧТО ТАКОЕ PG_TEMP В POSTGRESQL ДЛЯ 1С И КТО ИХ СОЗДАЕТ?
pg_temp — это пространство СУБД PostgreSQL для временных таблиц, то есть таблиц, существующих в пределах жизни одного соединения (в терминах СУБД) или сеанса (в терминах кластера 1С). Такие таблицы мы можем увидеть в тексте запроса СУБД, если в запросе на языке запросов 1С присутствует конструкция ПОМЕСТИТЬ, которая и помещает выборку во временную таблицу. Таким образом […]

Ошибка в типовой интеграция 1С:ЗУП с 1С:Документооборот
Разбираем ошибку в типовом обменен 1С:ЗУП с интегрированной 1С:Документооборот после обновления на новый релиз ЗУП.

Ошибки сервера 1С на Linux
Описание типичных ошибок которые возникают при запуске службы сервера 1С на Linux и пути их исправления
ЧТО ТАКОЕ TTIMEOUT 1С:ПРЕДПРИЯТИЯ И КАК ЕГО НАЙТИ?
В этой статье мы поговорим о том, что такое таймаут на управляемых блокировках 1С:Предприятия и как расследовать причины его возникновения. При управляемом режиме , помимо управляемых блокировок 1С:Предприятия, на стороне СУБД в этот самый момент могут действовать также свои блокировки СУБД, обеспечивая изоляцию на более низком уровне. Блокировки СУБД при этом, в общем случае, осуществляются […]

Проверка рабочих процессов сервера 1С на Linux
Как проверить на Linux запущены ли процессы сервера 1С. Проверка открытых портов сервера 1С

Очистка кэша: серверного и клиентского для 1С:Предприятия
Лечим непонятные ошибки 1С Предприятия чисткой так называемого кеша — служебных файлов с настройками 1С

Установка сервера 1С Предприятие 8.3 на Linux
Пошаговый процесс установки 1С сервера на Linux. Подготовка Linux к установке. Инсталяция дистрибутива 1С сервера. Его настройка и запуск.
Похожие записи
- ОШИБКА 1С:ПРЕДПРИЯТИЯ «ПОТЕРЯНО СОЕДИНЕНИЕ»
- Очистка кэша: серверного и клиентского для 1С:Предприятия
- 1C тормозит и возникают ошибки. С чего начать расследование?
- Анализ технологического журнала 1С регулярными выражениями. От простого к сложному.
- Администрирование серверов 1С на Linux
- Настройка и сбор логов для анализа проблем производительности систем 1С на Linux
- Утилита ring license для 1С версии 8.3.14 и выше под Linux
- Разворачиваем виртуальный сервер VirtualBox для 1С и не только
- Ошибка «Слишком много открытых файлов» или«Too many open files» В 1С на Linux
- Ошибки СУБД. 1С+PostgreSQL+Linux. Часть 2.
Инструкция по установке разных версий серверов 1С на один сервер
Предполагается, что на сервере уже имеется один установленный сервер «1С:Предприятие» и на нем работают пользователи. Вам необходимо на этом же сервере поднять еще один сервер «1С:Предприятие» другой версии.
Текущий сервер 1С имеет следующие параметры:
Версия сервера 1С: 8.3.16.1224
Порт центрального сервера 1С:Предприятия: 1540
Порт главного менеджера кластера: 1541



Планируемые параметры нового сервера 1С:
Версия сервера 1С: 8.3.12.1924
Порт центрального сервера 1С:Предприятия: 2540
Порт главного менеджера кластера: 2541
Порядок выполнения работ
1. Создать нового пользователя
Создадим пользователя USR1CV8_8_3_12, от имени которого будет работать новая служба 1С.

Заполним поля в выведенном окне Новый пользователь.

Нажмем кнопку Создать и потом кнопку Закрыть.
1.1. Зададим локальные групповые политики для пользователя USR1CV8_8_3_12.
Выполним следующие действия:
1. В главном меню Windows выбираем пункт Выполнить (либо по комбинации клавиш Win+R).
2. Вводим в строку Открыть имя “secpol.msc” . И нажимаем кнопку ОК. Будет запущен редактор локальной политики безопасности.

3. В редакторе локальной политики безопасности в левой части окна выбираем ветку Параметры безопасности | Локальные политики | Назначение прав пользователя.

4. Добавляем пользователя USR1CV8_8_3_12 во все политики, в которых имеется пользователь USR1CV8, а именно:
— Вход в качестве пакетного задания

— Вход в качестве службы

— Запретить локальный вход

— Отказать в доступе к этому компьютеру из сети

5. Выходим из редактора локальной групповой политики.
1.2. Даем права на создание баз данных
Пользователю USR1CV8_8_3_12 необходимо дать право на создание баз данных в сервере СУБД Microsoft SQL Server.
В MS SQL Management Studio, во вкладке Безопасность -> Имена для входа нажимаем “Создать имя для входа…”:

Создаем пользователя USR1CV8_8_3_12 с проверкой подлинности Windows:

Даем необходимые права новому пользователю MSSQL. Для работы 1С достаточно прав роли “dbcreator”:

2. Установить новую версию сервера 1С:Предприятие
Устанавливаем сервер 1С:Предприятия 8.3.12:

Снимаем галочку с пункта “Установить сервер 1С:Предприятия как сервис Windows”:

Иначе новая установка затрет параметры службы текущего сервера 1С (8.3.16).
3. Создаем каталог для новой службы сервера 1С:Предприятие 8.3.12
Для службы сервера 1С:Предприятие 8.3.12 потребуется отдельный каталог:

Добавляем для нового каталога “Полные права” для пользователя USR1CV8_8_3_12:

4. Зарегистрировать новую службу Агент сервера 1C:Предприятие и установить новые порты для кластера
Для регистрации новой службы необходимо воспользоваться утилитой sc.exe, и прописать в службу необходимые параметры. Для этого можно создать *.bat-файл. Пример текст *.bat-файла для описываемой ситуации приведен ниже:
@echo off
chcp 1251
set SrvcName=»1C:Enterprise 8.3.12 Server Agent»
set BinPath=»\»C:\Program Files\1cv8\8.3.12.1924\bin\ragent.exe\» -srvc -agent -regport 2541 -port 2540 -range 2560:2591 -d \»C:\Program Files\1cv8\srvinfo_8_3_12\»»
set Desctiption=»Агент сервера 1С:Предприятия 8.3.12″
sc create %SrvcName% binPath= %BinPath% start= auto displayname= %Desctiption% depend= Tcpip/Dnscache/lanmanworkstation/lanmanserver/
pause
. Запуск *.bat-файлов производится только с правами Администратора
После успешного выполнения *.bat-файла должно появиться следующее сообщение:

После чего для закрытия окна нажимаем любую клавишу (например, пробел).
В результате исполнения *.bat-файла служба отобразится в утилите.

5. Донастроить службу вручную
Открыть свойства новой службы и указать учетную запись, от имени которой она будет запускаться, и ее пароль. В нашем случае это запись USR1CV8_8_3_12:

Запустить обе службы: Агент сервера 1C:Предприятие 8.3 и Агент сервера 1C:Предприятие 8.3.12:

6. Проверить работоспособность новой технологической платформы
Запустить консоль Администрирование серверов 1С Предприятие (C:\Program Files\1cv8\common\1CV8 Servers (x86-64).msc). Проверить подключение к обоим кластерам (по портам 1540 и 2540 для старой и новой технологической платформы соответственно).
. Если в системе используются сетевые экраны, то необходимо разрешить передачу данных по портам 2540-2541, 2560-2591.
Вместо разрешения портов можно разрешить передачу данных процессам кластера (ragent, rmngr, rphost).
Для платформы 8.3.16.1224:

Для платформы 8.3.12.1924:

Решение возможных проблем
В ходе выполнения проверки возможно возникновение некоторых ошибок.

При возникновении данной ошибки проверьте, запущены ли службы Агент сервера 1С Предприятие

При возникновении данной ошибки необходимо перерегистрировать radmin.dll.
*.cmd-файл для перерегистрации библиотеки платформы версии 8.3.16.1224 расположен по пути:
«C:\Program Files\1cv8\8.3.16.1224\bin\RegMSC.cmd»
*.cmd-файл для перерегистрации библиотеки платформы версии 8.3.12.1924 расположен по пути:
«C:\Program Files\1cv8\8.3.12.1924\bin\RegMSC.cmd»
После выполнения нужного *.cmd-файла в свойствах кластера возможно потребуется изменить порт на нужный (в нашем случае для 8.3.16 указать порт 1540, а для 8.3.12 — порт 2540)

После смены порта центрального сервера нужно нажать кнопку “Обновить”:

Запись опубликована автором admin в рубрике 1с сервер, Администрирование. Добавьте в закладки постоянную ссылку.
Несколько версий сервера 1С на одном компьютере
Вопросы по установке двух серверов 1С на одном компьютере возникают регулярно, несмотря на то, что яндекс с гуглом выдают достаточное количество ссылок на мануалы, как это сделать. Однако лично мне они помогли лишь частично, так как все необходимые знания пришлось «собирать по частям». Поэтому я решил написать свой собственный мануал, который, возможно, мне пригодится через год-другой, когда сам забуду, как это делать.
Есть два основных случая:
- Вы хотите установить два сервера разных платформ, например 8.2.19.130 и 8.3.12.1412 (ключевым здесь будет отличие первых двух цифр – 8.2 и 8.3)
- Вы хотите установить два сервера одной платформы или платформ, отличающихся минорными релизами, например два сервера платформы 8.3.11.3034 (один с отладкой, другой без, один 32, другой 64) или два сервера 8.3.11.3034 и 8.3.11412 (здесь ключевым будет совпадение первых двух цифр релиза – 8.3 и 8.3)
Случай 1:
Будем считать, что у вас уже имеется штатно установленный и работающий сервер 1С платформы 8.2. Трогать его мы не будем и сразу перейдем к установке сервера на платформе 8.3.
Для установки новой платформы можете взять дистрибутив под названием «Технологическая платформа 1С:Предприятия (64-bit) для Windows» (файл обычно называется windows64full.rar).
ВАЖНО! При установке новой версии платформы необходимо снять галку «Установить сервер 1С:Предприятие 8 как сервис Windows».
После установки платформы, необходимо запустить Command Prompt (Admin) – если у вас Win 10 или Win 2012 – правой кнопкой по кнопке Пуск – там выбрать Command Prompt (Admin). Дальше я буду исходить из того, что у вас есть определенные навыки работы через командную строку (если же нет, рекомендую прерваться и уделить пару часов изучению темы).
Для начала перейдем в папку Bin установленной платформы 8.3.11.3034:
И при помощи программы ragent.exe зарегистрируем еще один сервис для сервера 1С на платформе 8.3.11.3034:
.\ragent.exe -instsrvc -port 2540 -regport 2541 -range 2560:2591 -usr .\USR1CV8 -pwd PASSWORD -d «C:\Program Files\1cv8\srvinfo»
В данной строке мы даем команду создать службу, которая будет запускать агент сервера (RAGENT) на порту 2540, менеджер кластера (RMNGR) на 2541 и рабочие процессы (RPHOST) на портах с 2560 по 2591. Как вы заметили, порты отличаются от штатных первой цифрой (2 вместо 1). Напомню, что штатно используются порты 1540, 1541, 1560-1591. Также мы указываем локального пользователя .\ USR 1 CV 8 (точка и обратный слеш перед именем пользователя в данном случае обязательны), пароль пользователя PASSWORD и каталог C :\ Program Files \1 cv 8\ srvinfo , где будут храниться данные реестра кластера.
Запустить службу можно командной:
Или же просто открыть список служб и запустить вашу новую службу оттуда.
Чтобы только что установленный сервер 1С был доступен по сети, необходимо добавить используемые сервером порты (2540, 2541, 2560-2591) в исключения Брандмауэра Windows (Windows Firewall). Сделать это можно в настройках Брандмауэра или вот этой строкой:
netsh advfirewall firewall add rule name=»1c_server_ports» protocol=TCP dir=in localport=2540,2541,2560-2591 action=allow
Далее вам необходимо будет открыть консоль, расположенную по адресу:
C:\Program Files\1cv8\common\1CV8 Servers (x86-64).msc
И создать еще один центральный сервер с указанным портом 2540. На картинке видны две консоли 8.2 (верхний) и 8.3 (нижний) и два сервера работающих на порту 1540 и 2540.
Создавать базы и подключаться к ним вы можете указывая имя сервера и номер порта, как на картинке.
При написании этой части я опирался на статью Виталия Онянова http://tavalik.ru/zapusk-neskolkix-serverov-1spredpriyatiya-raznyx-versij/. Вы всегда можете обратиться к ней за дополнительной помощью.
Как вы видите, задача относительно простая. Однако цель моей статьи по большей части был второй случай, материалов по которому в гуглояндексах чуть меньше.
Случай 2:
И так, вам нужно установить два экземпляра сервера на одном компьютере, причем экземпляры одной версии платформы. Исходный материал, от которого должно все начинаться — https://its.1c.ru/db/v8312doc#bookmark:cs:TI000000130
В «1С:Предприятии» отсутствуют штатные средства регистрации нескольких экземпляров сервиса сервера «1С:Предприятия» одной версии. Для того чтобы выполнить такую регистрацию, следует воспользоваться утилитой sc . При выполнении такой регистрации, должны различаться имена служб, номера сетевых портов и адреса каталогов кластера.
А также приведен пример скрипта, который позволит установить службу, однако он в чистом виде работать отказывается (по крайней мере у меня). Вот чуть подправленная и рабочая версия этого скрипта, полученная методом проб и ошибок:
@echo off
rem %1 — version number
rem %2 — first 2 port characters. for 1540,1541,1560:1591 it will be 15
rem %3 — cluster reg catalog
rem register-service 8.3.11.3034 25 «C:\Program Files\1cv8\srvinfo2541»
set SrvUserName=.\USR1CV8
set SrvUserPwd=PASSWORD
set RangePort=%260:%291
set BasePort=%241
set CtrlPort=%240
set SrvcName=»1C:Enterprise 8.3 Server Agent %CtrlPort% %1″
set BinPath=»\»C:\Program Files\1cv8\%1\bin\ragent.exe\» -srvc -agent -regport %BasePort% -port %CtrlPort% -range %RangePort% -d \»%~3\» -debug»
set Desctiption=»1C:Enterprise 8.3 Server Agent. Parameters: %1, %CtrlPort%, %BasePort%, %RangePort%»
if not exist «%~3» mkdir «%~3»
sc stop %SrvcName%
sc delete %SrvcName%
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption% depend= Tcpip/Dnscache/lanmanworkstation/lanmanserver/
Ключевые отличия – перед именем пользователя указывается точка и обратный слеш, в переменной BinPath вместо «/» перед параметрами указывается «-» и в параметре depend обязательно после lanmanserver должен быть «/». Ну и конечно не забудьте заменить PASSWORD на пароль вашего USR1CV8.
А теперь как с этим скриптом работать. Опять же, считаем что одна версия платформы штатно уже установлена и вы хотите установить еще один экземпляр сервера этого же релиза или этой же версии.
Для начала сохраните вашу отредактированную версию скрипта (назвав его register-service.bat) в папке с установленной новой платформой C :\ Program Files \1 cv 8\8.3.11.3034\ bin .
После этого откройте командную строку и перейдите в папку Bin установленной платформы 8.3.11.3034:
Теперь запустите ваш скрипт register-service.bat указав 3 обязательных параметра (пример этой команды в 4й строчке скрипта, который приведен выше):
register-service 8.3.11.3034 25 «C:\Program Files\1cv8\srvinfo2541»
Данный скрипт установит службу для платформы 8.3.11.3034 (первый параметр), пропишет штатные порты на 25** (второй параметр), укажет папку C:\Program Files\1cv8\srvinfo2541 (третий параметр) как каталог для данных реестра кластера (если папка отсутствует – она будет создана).
Тут важно понимать, что новому экземпляру сервера 1С нужна будет своя папка C:\Program Files\1cv8\srvinfo2541 (назвать ее можете как угодно), так как штатная папка C:\Program Files\1cv8\srvinfo уже будет занята первым экземпляром сервера.
Следующий важный нюанс, про который не говориться в статье на ИТС – необходимо дать права на папку C:\Program Files\1cv8\srvinfo2541 пользователю USR1CV8.
Готово. Можно открывать консоль служб Windows и запускать службу. Все дальнейшие действия не отличаются от случая 1.
НО. Есть еще нюанс. Если у вас второй экземпляр сервера другого релиза (например первый 8.3.10.2299, а второй 8.3.11.3034), то у вас возникнут определенные трудности связанные с запуском консоли сервера.
По умолчанию, вы всегда запускаете консоль C:\Program Files\1cv8\common\1CV8 Servers (x86-64).msc, которая в свою очередь работает с определенной версией файла radmin.dll. Т.е. консоль для работы с платформой 8.3.10.2299 должна работать с файлом C:\Program Files\1cv8\ 8.3.10.2299\bin\radmin.dll, а для работы с 8.3.11.3034 — C:\Program Files\1cv8\8.3.11.3034\bin\radmin.dll. Есть рекомендации, что перед запуском консоли для работы с определенной версией сервера – необходимо каждый раз регистрировать нужную версию radmin.dll при помощи regsvr32. Однако мне этот вариант не помог (и судя по вопросам на форумах не мне одному). И я нашел один рабочий способ.
В папке C:\Program Files\1cv8\common создаете два файла 8.3.10.2299.reg и 8.3.11.3034.reg с соответствующим содержим:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\\InprocServer32]
@=»C:\\Program Files\\1cv8\\8.3.10.2299\\bin\\radmin.dll»
«ThreadingModel»=»Both»
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\\InprocServer32]
@=»C:\\Program Files\\1cv8\\8.3.10.2299\\bin\\radmin.dll»
«ThreadingModel»=»Both»
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\\InprocServer32]
@=»C:\\Program Files\\1cv8\\8.3.11.3034\\bin\\radmin.dll»
«ThreadingModel»=»Both»
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\\InprocServer32]
@=»C:\\Program Files\\1cv8\\8.3.11.3034\\bin\\radmin.dll»
«ThreadingModel»=»Both»
Также вы создаете два bat файла Console83102299.bat и Console83113034.bat с соответствующим содержимым:
regedit /s «C:\Program Files\1cv8\common\8.3.10.2299.reg»
mmc /s «C:\Program Files\1cv8\common\1CV8 Servers (x86-64).msc»
regedit /s «C:\Program Files\1cv8\common\8.3.11.3034.reg»
mmc /s «C:\Program Files\1cv8\common\1CV8 Servers (x86-64).msc»
И теперь для запуска консоли используете нужный вам bat файл Console831*****.bat.
В принципе, все. Ставьте лайки, подписывайтесь на канал, оставляйте комментарии (с).
