Меню Рубрики

Установка две 1с на сервер

Как правильно обнов​и​ть платформу 1С и запустить несколько служб 1С на одном сервере​?

Как правильно обнов​и​ть платформу 1С и запустить несколько служб 1С на одном сервере​?

Введение

Как быстро и без проблем установить новую версию платформы 1С и при этом минимизировать прерывание работы пользователей? Как запустить несколько экземпляров сервера 1С на одной машине? Данные вопросы являются распространенным предметом для обсуждения среди администраторов серверов 1С. В общем, ответы на них вы можете найти на сайте ИТС по этой ссылке, а также по этой.

В нашей статье мы хотим выделить самое главное, добавить что-то от себя, а также поделиться опытом, и, что достаточно важно, показать, что данные задачи не являются чем-то сложным и решаются буквально в два счета и даже без танцев с бубном, как многие думают.

Обновление платформы

Так как установка службы 1С на сервер, где ее еще не было, не представляет никаких сложностей и не отличается какими-то особенностями, рассмотрим другую задачу, когда у нас уже есть продуктивный сервер с запущенным сервером приложений, в котором работают пользователи, и нам необходимо обновить на нем версию платформы 1С. Эту задачу можно разбить на два условных этапа: подготовительный этап и этап обновления.

Подготовительный этап

Когда мы убедились, что все в порядке, можем запускать установку платформы 1С на сервере приложений. Если при его установке снять галочку «установить как сервис», можно не останавливать службу 1С, обслуживающую текущую версию платформы 1С и, что очень важно, можно не прерывать работу пользователей.

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

Этап обновления

После того, как подготовительный этап закончен, необходимо согласовать с пользователями время, когда можно будет прервать их работу на несколько минут. Когда это время настанет, нужно остановить службу 1С и изменить строку запуска службы 1С, а именно путь к исполняемому файлу ragent.exe. Это можно сделать несколькими способами:

  • вручную, при помощи regedit:

  • при помощи заранее подготовленного файла реестра:

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

  • или с помощью скрипта, с применением утилиты sc (выполняется из командной строки с правами администратора):

sc config [имя службы 1С в которой меняем версию платформы 1С] binPath= [строка запуска службы 1С новой версии платформы]

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

Например, если мы хотим обновить версию платформы с текущей (например, 8.3.7.1873) до 8.3.7.1917, тогда строка запуска текущей версии может выглядеть так:

«C:\Program Files\1cv8\8.3.7.1873\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d «C:\Program Files\1cv8\srvinfo»
из неё получим строку запуска службы 1С новой версии платформы:
«C:\Program Files\1cv8\8.3.7.1917\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d «C:\Program Files\1cv8\srvinfo»

имя службы 1С, например, следующее:
1C:Enterprise 8.3 Server Agent (x86-64)

тогда скрипт будет выглядеть так:

sc config «1C:Enterprise 8.3 Server Agent (x86-64)» binPath= «/»C:\Program Files\1cv8\8.3.7.1917\bin\ragent.exe/» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d /»C:\Program Files\1cv8\srvinfo/»»

Установка дополнительной службы 1С

Итак, для того, чтобы использовать несколько экземпляров сервера 1С на одной машине, для обеих версий серверов 1С(если они отличаются) сначала выполняем «Подготовительный этап» из предыдущего пункта.

Далее нам понадобится следующий скрипт:

@echo off
rem %1 — полный номер версии 1С:Предприятия
rem %2 — первые цифры номеров портов
rem %3 — цифра сотого разряда номеров портов
rem %4 — каталог с данными службы 1С
set SrvUserName=
set SrvUserPwd=
set RangePort=%2%301:%2%399
set BasePort=%2%300
set CtrlPort=%2000
set SrvcName=»1C:Enterprise 8.3 Server Agent %CtrlPort%»
set BinPath=»\»C:\Program Files\1cv8\%1\bin\ragent.exe\» /srvc /agent /regport %BasePort% /port %CtrlPort% /range %RangePort% /d \»%

Читайте также:  Установка планшета в рендж ровер спорт

4\» /debug»
set Desctiption=»Агент сервера 1С:Предприятия 8.3. Параметры: %1, %CtrlPort%»
if not exist «%

4″
sc stop %SrvcName%
sc delete %SrvcName%
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption% depend= Dnscache/Tcpip/Tcpip6/lanmanworkstation/lanmanserver

Процесс Порты
ragent 1540
rmngr 1541
rphost 1560:1591

К сожалению, такая структура портов не всегда является удобной. Например, если мы захотим использовать несколько кластеров в рамках одной службы 1С, а служб мы при этом используем несколько на одной машине. В этом случае может возникнуть путаница с диапазоном используемых процессами rphost портов. Если, например, процесс ragent одной службы 1С занимает порт 1540, а другой — 1640, для первой создан кластер 1С диапазон портов которого 1560:1591 и мы хотим создать еще один кластер, то диапазон портов для него, по логике, должен быть 1660:1691, но этот диапазон может быть занят (и, скорее всего так и будет) рабочими процессами кластера ragent’а занимающего порт 1640.

ragent *000 (вместо * — любое число больше 2) rmngr **00 (вместо * — любая цифра) rphost **01: **99

Итак, приведенный выше скрипт следует сохранить в командный файл, который назовем register-service.bat. Перед его применением необходимо указать в нем данные реального пользователя (имя и пароль) от имени которого будет работать служба кластера серверов (строки set SrvUserName= и set SrvUserPwd=). Примечание: если в скрипте используются символы кириллицы, командный файл следует сохранять в кодировке OEM 866.

Для регистрации службы выполните из командной строки следующую команду:

register-service [номер версии платформы] [первые цифры номеров портов] [цифра сотого разряда номеров портов] [каталог службы 1С]

Например, если нам необходимо зарегистрировать две службы для двух серверов 1С одинаковой версии 8.3.6.2332, то в командной строке напишем следующее:

register-service 8.3.6.2332 2 1 «C:\Program Files\1cv8\srvinfo_2000
register-service 8.3.6.2332 3 1 «C:\Program Files\1cv8\srvinfo_3000

Типичные ошибки и возможные проблемы

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

Это значит, что после установки новой версии платформы при запуске службы по умолчанию всегда будет создан новый кластер и запущен процесс rmngr.exe, даже если он в принципе на сервере нам не нужен, и мы не хотим использовать этот рабочий сервер, как центральный. Также в строке запуска указан диапазон портов rphost для нового кластера:

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

Первый и, пожалуй, самый простой — это удалить созданный локальный кластер из консоли кластера 1С:

Второй вариант: для того, чтобы при первоначальном запуске службы 1С новый кластер не создавался, перед её запуском в каталоге служебных файлов данной службы, который указан в строке её запуска после ключа –d, необходимо создать файл с именем 1cv8wsrv.lst следующего содержания:

Мы получим такой же файл при удалении локального кластера, как это описано в первом варианте.

После этого можем запускать данную службу 1С. При старте службы, происходит проверка наличия файла 1cv8wsrv.lst в каталоге служебных файлов новой службы 1С. Из этого файла читаются данные о зарегистрированных кластерах. Если файла нет – создается кластер по умолчанию с параметрами, заданными в строке запуска службы, если файл есть, данные читаются из него и автоматического создания не происходит. Соответственно, в этом случае наличие данного файла подтверждается и новый кластер не создается.

Если новый кластер создать все-таки нужно, то необходимо проверить, что порт в параметре /regport (или порт по умолчанию — 1541, если параметр /regport не указан), при регистрации новой службы не занят. Если этого не сделать, то возможно проявление ситуации, когда две службы будут работать с одним менеджером кластера, если, например, для порта, указанного в строке запуска новой службы (или для порта по умолчанию — 1541, если ключ –regport не указан в строке запуска) уже зарегистрирован менеджер кластера. Причиной этого является то, что при первоначальном старте службы и регистрации порта для менеджера кластера не происходит проверки занят этот порт или нет. Задача по реализации данной проверки известна и будет реализована в следующих версиях платформы.

Читайте также:  Установка разъема флешки на автомагнитолу

Еще один параметр строки запуска службы 1С, который стоит рассмотреть, это:

Он отвечает за каталог, в котором будут расположены (или располагаются) служебные файлы службы сервера 1С (в том числе список кластеров). По умолчанию каталог устанавливается следующий:

Также многие забывают указывать ключ в строке запуска, отвечающий за возможность использования приложения в режиме отладки, если он необходим:

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

Каталог реестра кластера выглядит следующим образом:

«C:\Program Files\1cv8\srvinfo\reg_[номер порта менеджера кластера]»

Каталог служебных файлов информационной базы:

«…\srvinfo\reg_****\[UUID информационной базы]»

Например, если номер порта менеджера кластера 1541, то каталог служебных файлов некоторой информационной базы с уникальным идентификатором «0c1bd57c-4a1b-47df-a229-ade9833de359» будет:

Список неиспользуемых баз можно получить, сравнив по уникальному идентификатору список баз в файле «1CV8Clst.lst» (располагается в каталоге реестра кластера) и список баз, для которых существуют каталоги со служебными файлами. Для быстрого получения идентификаторов баз и их имен из файла реестра кластера можно воспользоваться следующим регулярным выражением: «\<(\w<8>\-.*\w<12>)\,\»(.*?)\»\,.*[\\r]*\n+.*\»\,\d+\>».

Заключение

Мы постарались скомпоновать в статье достаточно полную и подробную информацию о том, как правильно и быстро обновить версию платформы 1С. Такая информация может быть полезна на предприятиях, где длительное прерывание работы пользователей может быть достаточно критичным.

Также достаточно важным было для нас описать, как настроить одновременную работу нескольких служб кластера 1С на одной машине. Эта информация может быть полезна тем, кто хочет изолировать несколько кластеров 1С, например, для целей разработки или тестирования или вы используете в работе информационные базы, управляемые разными версиями 1С:Предприятия.

Надеемся, вы сможете с легкостью выполнить нужную вам задачу и продолжите с удовольствием пользоваться продуктами 1С. Ну а если у вас что-то не получится, или вы столкнетесь с какими-то трудностями, обращайтесь к нам, мы обязательно поможем!

источник

Записки IT специалиста

Технический блог специалистов ООО»Интерфейс»

1С: Предприятие 8.2 и 8.3. Совместный запуск на одном Linux-сервере.

В наших материалах мы уже рассказывали, как запустить две версии платформы 1С:Предприятие на одном Windows-сервере. Сегодня мы поговорим о том, как установить две различных платформы на сервер под управлением Ubuntu. Сам процесс довольно несложен, но имеет свои подводные камни, некоторые из которых выявляются только эмпирическим путем.

Будем считать, что у вас уже есть сервер с установленной платформой 8.2, подробно на этом вопросе мы останавливаться не будем, так как разбирали его здесь. В этом случае у вас уже имеются все зависимости и для установки платформы 8.3 вам понадобятся только пакеты сервера.

По умолчанию сервер 1С:Предприятия использует следующие порты:

  • 1540 — агент сервера
  • 1541 — менеджер кластера
  • 1560:1691 — динамический диапазон портов для рабочих процессов.

Для успешной работы двух платформ 1С:Предприятие на одном сервере необходимо изменить рабочие порты для одной из них. В среде Linux это делается через скрипты запуска в /etc/init.d, необходимые файлы называются srv1cv82 и srv1cv83 соответственно. В нашем случае оставим платформу 8.2 работать со стандартными настройками, а для платформы 8.3 внесем изменения.

Откроем /etc/init.d/srv1cv83 в котором раскомментируем и укажем необходимые значения для следующих параметров:

Сохраним изменения. Теперь проверим состояние и остановим работающие службы 1С:Предприятие, в нашем случае это платформа 8.2:

Читайте также:  Установка кп 120 на дереве

Платформа 8.3 запущена не будет, но на всякий случай также можем в этом убедиться.

Теперь удалим список кластеров в файле srvribrg.lst, который расположен в домашней директории пользователя usr1cv82:

После чего можно производить первый запуск сервисов.

ВАЖНО! Первой необходимо запускать платформу с нестандартными номерами портов, в противном случае ее запуск будет невозможным.

Данная особенность недокументирована и была установлена нами опытным путем.

Если же вы столкнулись с подобной ошибкой, то остановите службы, удалите srvribrg.lst и 1cv8wsrv.lst, затем выполните запуск в правильной последовательности.

После этих нехитрых действий мы получим две работающие платформы 1С:Предприятие на Linux-сервере. Для пользователей платформы 8.2 никаких изменений не произойдет, а для платформы 8.3 потребуется дополнительно указывать порт (1741), через двоеточие после имени сервера:

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

источник

Как установить Сервер 1С на Windows Server 2012 R2

Установка Сервера 1С на Windows Server 2012 R2

В этой статье мы подробно разберем установку сервера 1С 8.3 на Windows Server 2012.

Конечно, данная тема также подымается и на курсе: Администратор 1С!

Сперва установим Сервер 1С (он же кластер серверов) х32, тридцати двух разрядный, а затем установим и х64 (Шестидесяти четырех разрядный) Cервер 1С.

И так первый вопрос, это где взять новую версию Cервера 1С?

Его рекомендую скачать на сайте поддержки пользователей 1С. (Если у Вас есть подписка на ИТС). https://users.v8.1c.ru.

Клик по ссылке «скачать обновления».

На сайте нам нужно найти «Технологическую платформу». Потому что Сервер 1С х32 устанавливается как компонент при установке платформы 1С.

И так полагаю, что Сервер 1С у Вас уже есть.

Установка Сервера 1С (Кластера серверов) Х32.

Установка довольно проста!

Как и при установке платформы 1С, клик по Setup.exe.

Установка Сервера 1С (Кластера серверов)

Затем клик по кнопке «Далее».

И на следующей вкладке нам нужно выбрать необходимые компоненты.

Установка компонентов для Сервера 1С

Нам нужны лишь: «Сервер 1С Предприятия» и компонента: «Администрирование сервера 1С: Предприятия». Все остальные можно отключить.

Папку, в которую мы установим сервер 1С, рекомендую не менять, лучше оставить путь который предложила 1С по умолчанию.

Кликаем по кнопке «Далее» и еще раз «Далее».

Выбор учетной записи для Сервера 1С

Теперь на этой вкладке нам нужно указать или создать учетную запись, от имени которой и будет стартовать Сервер 1С, а точнее служба «Агент сервера 1С». Также мы не убираем птичку возле «Установить сервер 1С: Предприятия как сервис Windows».

Не рекомендую в целях безопасности выбирать в списке учетную запись администратора или создавать (пользователя) USR1CV8. Лучше предварительно создать учетную запись чей «Логин» и «Пароль» знаете только вы! И уже от имени этой учетки запускать службу «Агент сервера 1С».

Укажем пароль для этого пользователя и введем пароль еще раз в поле ниже.

Затем кликаем «Далее» и «Установить».

Финальная часть по установке Сервера 1С

После нужно лишь установить аппаратную или программную лицензию.

Установка Сервера 1С (Кластера серверов) Х64.

Здесь нам нужно скачать отдельно Сервер 1С.

Собственно также идем на сайт поддержки пользователей https://users.v8.1c.ru — «скачать обновления»

Технологическая платформа 1С 8.3

Там ищем технологическую платформу 1С 8.3, выбираем версию которая нас интересует, а уже провалившись по ссылке, вы найдете то, что нужно, — «Cервер 1С:Предприятия (64-bit) для Windows».

Cервер 1С:Предприятия (64-bit) для Windows

Скачиваем архив, распаковываем, находим ярлык Setup.exe.

И далее все аналогично как в описании выше. Единственное что мы в отличие от установки х32 должны сделать, так это выбрать два компонента:

Компоненты Сервера 1С х64

«Компоненты доступа к серверам 1С Предприятия» и «Сервер 1С Предприятия 8».

Остальные компоненты можно не устанавливать Сервер 1С Предприятия будет работать.

Если Вы хотите больше узнать о технической стороне 1С, тогда регистрируйтесь на первый бесплатный модуль курса: Администратор 1С >>>

источник

Добавить комментарий

Adblock
detector