gifts2017

Установка второго сервиса сервера 1С той же платформы.

Опубликовал Алексей Бочков (Aleksey.Bochkov) в раздел Администрирование - Системное

После выхода платформы 8.2.11 появилась задача установить на один физический сервер несколько серверов приложений 1С 8.2 - 8.2.10 и 8.2.11. Информацию как это сделать в документации по 1С я не нашел, более того, говорилось о том, что второй сервер возможно запускать только в ручном режиме.

Решить этот вопрос помогла сторонная утилита создания сервисов Windows (архив приложен).

Для начала необходимо распаковать архив в какую-нибудь папку, зайти в нее командной строкой и запустить команду создания сервиса, например:

"INSTSRV "Агент сервера 8.2.11" "C:\Program Files\1cv82\8.2.11.229\bin\ragent.exe"", Где Агент сервера 8.2.11 - придуманное имя сервиса. Если всё сделано правильно, то появится сообщение, подтверждающее успешное создание сервиса:


Теперь зайдите в Администрирование - Службы (Services). Находите только что созданную службу, двойной клик вызывает свойства сервиса. На первой вкладке можно выбрать параметры запуска - Automatic (автоматически при загрузке компьютера), Manual (Вручную) и Disabled (отключено). Для работы созданного сервиса в отдельном окне необходимо отметить на второй вкладке (Вход в систему) пункт Allow Service to Interact with Desktop (Разрешить взаимодействие с рабочим столом) + указать параметры входа в систему.

Следующим шагом является редактирование реестра. Запускаем редактор реестра Regedit. Ищем строку "C:\Program Files\1cv82\8.2.11.229\bin\ragent.exe" и меняем ее на правильную команду запуска с параметрами, например: ""C:\Program Files\1cv82\8.2.11.229\bin\ragent.exe" /Debug -srvc -agent -regport 11641 -port 11640 -range 11660:11691 -d "C:\Program Files\1cv82\srvinfo2""

Запустить сервис, если он не отключен, можно несколькими способами, во-первых через командную строку: Net Start ServiceName - где SеrviceName - имя Вашего сервиса. И другим способом - непосредственно через апплет административной панели - службы.

Чтобы удалить сервис, его сначала необходимо остановить: net stop ServiceName, затем опять же в коммандной строке выполнить команду INSTSRV ServiceName remove.

 

С появление второго сервиса 1С другой версии встает вопрос об использовании консоли (она для каждой версии своя).
Тут есть 2 варианта:

1) каждый раз находить в меню нужную версию "Регистрация утилиты администрирования серверов 1С Предприятия", а затем запускать консоль

2) сделать на рабочем столе нужное число "батников" по образцу

regsvr32 "C:\Program Files\1cv82\8.2.15.284\bin\radmin.dll" /s
start mmc "C:\Program Files\1cv82\common\1CV8 Servers (x86-64).msc"

т.е. при каждом запуске выполняется тихая регистрация нужной версии, а затем уже запуск консоли.

 

P.S. - информация из официальной документации 1С: http://users.v8.1c.ru/Adm3413.aspx

цитата:

Установка нового экземпляра сервера 1С:Предприятия 8.1/8.2 при работающем сервере 1С:Предприятия той же версии

В 1С:Предприятии отсутствуют штатные возможности по регистрации нескольких экземпляров сервера 1С:Предприятия одной версии (8.1 или 8.2).

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

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

Скачать файлы

Наименование Файл Версия Размер
Утилита 259
.zip 23,72Kb
30.05.10
259
.zip 23,72Kb Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение
Комментарии
1. dushelov (Душелов) 30.05.10 14:10
2. albochkov (Aleksey.Bochkov) 30.05.10 14:16
Например, мне нужно.
Один и тот же сервер используется для двух проектов, которые должны работать на разных платформах.
3. Валерий Гуров (Saint) 30.05.10 14:24
Вообще-то вся необходимая информация в документации имеется. А именно в книге "Клиент-серверный вариант. Руководство администратора", глава 3 "Запуск компонентов системы".
4. albochkov (Aleksey.Bochkov) 30.05.10 14:32
(3) Вообще-то (с) "Глава 4. Запуск компонентов системы" относится лишь к клиентской части 1С.
Специально для вас добавил в конце статьи цитату с сайта 1С. :)
5. Валерий Гуров (Saint) 30.05.10 15:04
(4) Вообще-то я писал про главу 3 книги "Клиент-серверный вариант. Руководство администратора", а не "Руководство администратора". Разницу чувствуешь?
Про полностью одинаковые версии спорить не буду, там такого не написано.
6. dushelov (Душелов) 30.05.10 16:21
(2) А зачем на разных платформах? Просто интересно, когда такое может использоваться...
"несколько серверов приложений 1С 8.2 - 8.2.10 и 8.2.11"
7. albochkov (Aleksey.Bochkov) 30.05.10 16:29
(6) - просто по объективным причинам нет возможности перевести все базы на одну платформу. Приходится вот так извращаться.
8. albochkov (Aleksey.Bochkov) 30.05.10 16:37
(6) - под объективными причинами имел в виду следующее: на сервере расположена база 8.2, с которой через web работает около 100 пользователей (причем из других компаний, обновлять им платформы долго и муторно, и вообще не хочется :), а работу прерывать нельзя),
+ на этом же сервере расположена еще пара баз, которые можно и нужно обновлять.
А сервак один на всех, зато мощный :).
9. Михаил Ражиков (tango) 30.05.10 18:32
10. albochkov (Aleksey.Bochkov) 30.05.10 20:34
(9) подключаются тонкими клиентами к базе, опубликованной на веб-сервере.
11. Михаил Ражиков (tango) 30.05.10 23:40
ну, если сотне клиентов раздали тонкого, то обновляйте теперь :)
Да и в чем проблема-то? спам еще никто не отменял
12. albochkov (Aleksey.Bochkov) 31.05.10 01:03
(11) Целью данной публикации не является обсуждение причин необходимости применения подобного подхода. Конкретно в моем случае, он обоснован. Предлагаю на этом и остановится.
13. Альберт (Alltruist) 02.06.10 09:39
На самом деле не нужна внешняя утилита для создания сервиса. Ragent может и сам себя регистрировать как сервис: ragent.exe -instsrvc <прочие параметры>.
Читайте доки. Например "Дополнение к документации по плаформе". При установке платформы лежит как правило тут (для 8.1) c:\Program Files\1cv81\AddDoc\RU\V8AddDoc81.htm
14. albochkov (Aleksey.Bochkov) 02.06.10 10:57
(13) Подтверждено опытом?
Если на сервере уже установлен сервис той же версии, то это не работает.
15. Альберт (Alltruist) 02.06.10 11:00
(14) Да подтверждено. Собственноручно. Поднимал 2 сервиса 8.1.15.14, один рабочий, 2-й для отладки.
16. Дмитрий К (ll13) 02.06.10 11:12
"...Информацию как это сделать в документации по 1С я не нашел, более того, говорилось о том, что второй сервер возможно запускать только в ручном режиме..."

Жжешь не на шутку, эта информация находиться на диске ИТС еще с 8.1-версии
Единственное применение сабжу - запуск 2-х серверов "боевого" и "отладочного"
17. albochkov (Aleksey.Bochkov) 02.06.10 11:57
(15) Приведите, пожалуйста, полную командную строку, с помощью которой вы создали второй сервис 8.1 средствами самой 1С.
18. Альберт (Alltruist) 02.06.10 12:35
(17) для начала я сделал копию каталога bin, для предотвращения конфликтов между сервисами. сама команда (если память не изменяет):

"C:\Program Files\1cv81\bin_debug\ragent.exe" -instsrvc -agent -regport 1641 -port 1640 -range 1660:1691 -d "C:\Program Files\1cv81\server_debug" -debug

затем в реестре надо исправить имя сервиса.
19. Альберт (Alltruist) 02.06.10 12:39
+(18) естественно нужно создать папку c:\Program Files\1cv81\server_debug\
20. Дмитрий К (ll13) 02.06.10 12:40
(17) Какая тебе нужна "полная командная строка" ? Я разве об этом писал?
Я писал что данная информация о запуске 2-х серверов давным-давно лежит на ИТС.


21. albochkov (Aleksey.Bochkov) 02.06.10 14:23
(18)-(20) Думаешь я это не пробовал в первую очередь?
Обрати, плиз, внимание на последние строки в статье "В 1С:Предприятии отсутствуют штатные возможности по регистрации нескольких экземпляров сервера 1С:Предприятия одной версии (8.1 или 8.2).", ссылка на первоисточник указана.
У rphost нет в качестве параметров имени сервиса, соответственно он всегда пытается создать сервис с предопределенным названием. Думаю, что в этом и состоит вся проблема.
А вот и скрин твоей командной строки, впрочем, результат точно такой же, как был у меня в самом начале:

kostya-nsk; +1 Ответить 2
22. Альберт (Alltruist) 02.06.10 14:28
(21) Теперь вспомнил, как я решал эту проблему с именем сервиса. Я сначала переименовывал существующий сервис в реестре, а затем устанавливал второй.
23. albochkov (Aleksey.Bochkov) 02.06.10 14:33
(22) Ну и где здесь типовой подход?? Где это описано в документации? :)
24. Альберт (Alltruist) 02.06.10 14:43
(21) в любом случае я обошелся без сторонних утилит
25. albochkov (Aleksey.Bochkov) 02.06.10 14:46
(24) а я обошелся без риска нарушить работу существующего сервиса.
26. Дмитрий К (ll13) 02.06.10 16:27
(22),(23) Собственно это и написанно на ИТС.
28. aspirator 23 (aspirator23) 29.11.11 13:32
Несмотря на "бурную" критику пригодилась конкретно.
Нужно было иметь 8.2.13 и 8.2.14
Все заработало. Не без хлопот, но заработало. На win2008
И лучше чем приложением, как 1с предлагает.
А как ты с консолью "выкручиваешься"?
Консоль либо 13 либо 14. Во всяком случае у меня. А на одном сервере вообще только одной версии - 13.
29. Осипов Сергей (fixin) 05.12.11 17:08
спасибо, использовал при настройке одного на 1с81, другого на 1с82.
30. stark temp (stark.temp) 19.01.12 12:24
Лаконично и по существу:) Спасибо, плюс вам
31. Александр Зубцов (iov) 25.01.12 09:33
(28) aspirator23, вот вопрос тоже с консолью мучает...
32. albochkov (Aleksey.Bochkov) 25.01.12 09:37
(28), (31) - для запуска консоли от различных версий можно использовать батники следующего вида:

regsvr32 "C:\Program Files\1cv82\8.2.15.284\bin\radmin.dll" /s
start mmc "C:\Program Files\1cv82\common\1CV8 Servers (x86-64).msc"

т.е. при каждом запуске выполняется регистрация нужной версии, а затем уже запуск консоли.
33. Александр Зубцов (iov) 25.01.12 09:41
(32) блин... спасибо. все таки 1С должна выпускать игрушки для садомазо ... у неё отлично получается...
34. Александр Муравьев (trunix) 29.02.12 10:48
35. Иван Василишин (Notorius) 29.02.12 10:55
у кого получилось отпишитесь пожайлуйста, необходимо аналогичное решение
36. Александр Смирнов (Krabat) 16.03.12 11:11
Очень помогла статья.
Вопрос: можно ли схожим образом регистрировать V82.COMConnector-ы от разных платформ на клиенте?
Он также, как и консоль, регистрируется с установкой последней версии платформы.
Обоснование подобного изврата - формирование сложных аналитических отчетов по разным источникам от разных баз в оперативном режиме. Хозяева и администраторы баз сами решают на какой версии платформы у них должен работать сервер, повлиять на них возможности нет.
37. albochkov (Aleksey.Bochkov) 16.03.12 12:07
(36) Krabat,
> Вопрос: можно ли схожим образом регистрировать V82.COMConnector-ы от разных платформ на клиенте?
Вы можете вставить в "формирование сложных аналитических отчетов по разным источникам" вызов команды регистрации соответствующей версии comcntr.dll перед каждым подключением к внешней базе.
38. Михаил Семенов (mchammer4) 04.04.12 18:38
не кажется,проще написать скрипт командный, чем заморачиваться на эту программу
39. Сергей Козулин (Veselchak) 31.05.12 12:13
Спасибо. Пригодилось, пользуемся.
40. Александр Никитин (ManyakRus) 23.04.13 16:31
(32) albochkov,

не получается так :(

regsvr32 "C:\Program Files\1cv82\8.2.15.284\bin\radmin.dll" /s
start mmc "C:\Program Files\1cv82\common\1CV8 Servers (x86-64).msc"
41. Михаил Семенов (mchammer4) 05.06.13 14:21
Класс! очень полезная инфо и подробная!
42. Михаил Семенов (mchammer4) 05.06.13 14:26
только instsrv нет такой команды
44. N (Smallrat) 28.10.14 11:22
вместо INSTSRV можно использовать встроенную команду sc
Например:
sc create "1C:Enterprise 8.3 Server Agent (debug)" DisplayName="Агент сервера 1С:Предприятия 8.3 (отладка)" binpath="C:\Program Files (x86)\1cv8\8.3.5.1119\bin\ragent.exe"
45. lefthander (lefthander) 08.01.15 18:01
(37) albochkov, Если вас не затруднит можно пример подобного подключения?
46. Виталий Петров (vipetrov2) 05.09.16 09:44
Можно создать службу сразу одной командой без последующей правки реестра.
sc create "1C:Enterprise 8.2.15.284 Server Agent" binPath= "\"C:\Program Files\1cv8\8.2.15.284\bin\ragent.exe\" -srvc -agent -regport 2541 -port 2540 -range 2560:2591 -d \"C:\Program Files\1cv8\8.2.15.284\srvinfo\"" start= auto obj= .\USR1CV8 password= 12345 displayname= "Агент сервера 1С:Предприятия 8.2.15.284" depend= Dnscache/Tcpip/lanmanworkstation/lanmanserver
M.Shalimov; +1 Ответить
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа