Автоматическое развертывание 1С:Предприятие в небольших сетях

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


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

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

Еще одна поговорка гласит, что дурная голова ногам покоя не дает. Если администратор не хочет думать головой, то ему придется бегать ногами, но это совершенно не наш метод, поэтому будем экономить собственное время и время пользователей, настроив автоматическое развертывание. Тем более что делается это очень быстро и просто.

Вам потребуется только общая папка на файловом сервере, которая будет иметь следующую структуру:



Вам потребуется расположить в ней файл запуска 1С 1cestart.exe, желательно от последней версии платформы, его можно взять в C:\Program Files (x86)\1cv8\common. Конфигурационный файл 1cescmn.cfg со следующим содержимым:


 CommonInfoBases=ibcommon.v8i
 DistributiveLocation=\\debian-smb\distr-1c
 InstallComponents=DESIGNERALLCLIENTS=1 THINCLIENT=0 WEBSERVEREXT=0 SERVER=0 CONFREPOSSERVER=0 CONVERTER77=0 SERVERCLIENT=0 LANGUAGES=RU


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


DESIGNERALLCLIENTS - все клиенты и конфигуратор.


THINCLIENT - тонкий клиент для клиент-серверного варианта работы.


THINCLIENTFILE - тонкий клиент с возможностью работы с файловыми информационными базами.


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


WEBSERVEREXT - компоненты расширения для веб-сервера.


CONFREPOSSERVER - сервер хранилища конфигураций.


SERVERCLIENT - компоненты для администрирования кластера серверов.


CONVERTER77 - конвертер информационных баз из версии 1С:Предприятия 7.7.


LANGUAGES - список языков интерфейса для установки. Если указано несколько языков, они перечисляются через запятую.


Список общих баз, в нашем случае ibcommon.v8i, определяет перечень баз, которые будут подключены всем пользователям, это могут быть сетевые или клиент-серверный базы, обязательное условие - их доступность с любого ПК на которые будет устанавливаться платформа. Для его формирования можно воспользоваться файлом ibases.v8i, который расположен в %USERPROFILE%\AppData\Roaming\1C\1CEStart. Просто скопируйте оттуда необходимые секции.


Примерное содержимое файла:


[Информационная база]
Connect=File="\\debian-smb\1c_bases\base1";
ID=fdca4a8a-2875-4800-8200-6244f7e0bb93
OrderInList=551.492455418379
Folder=/
OrderInTree=1425664
External=0
ClientConnectionSpeed=Normal
App=Auto
WA=1
Version=8.3
[Информационная база #1]
Connect=Srvr="server1c";
Ref="acc30";
ID=c3c7f1f3-eb72-4874-9fcc-8ca78ee052e5
OrderInList=16640
Folder=/
OrderInTree=16640
External=0
ClientConnectionSpeed=Normal
App=Auto
WA=1
Version=8.3

В нашем случае указаны две базы: файловая по сети и серверная. Если вы использовали файл-источник с ПК где базы расположены локально, то просто замените их пути на сетевые, остальные настройки трогать не надо. Кроме параметра Version=8.3, с его помощью можно указать требуемую платформу для запуска, например, Version=8.3.11 означает, что база должна использовать последнюю доступную версию платформы 8.3.11, а Version=8.3.10.2252 - работать только с платформой 8.3.10.2252.

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

Общий ресурс готов, посмотрим, как это работает. Для первоначальной установки запустим файл 1cestart.exe с общего ресурса, это может сделать как администратор, так и сам пользователь. Это единственный раз, когда пользователю потребуется самостоятельно заходить на наш общий ресурс. Сразу после запуска начнется процесс установки платформы, который не задает вопросов и проходит полностью в автоматическом режиме.

При этом всегда устанавливается самая последняя доступная в общем каталоге версия платформы. Хорошо, но, если нам вдруг потребуется другая? Не проблема. Давайте укажем для одной из баз использовать только выпуск 8.3.11 и запустим ее.

Как видим, установка нужной платформы началась автоматически (при условии ее наличия на общем ресурсе).

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

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

 

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

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