Новая версия платформы 1С для облачной базы: кто ставит, как не уронить работу и как вернуться назад
Содержание
Обновить платформу 1С в облаке сами вы можете только в одном случае: облачный сервер ваш (арендованная виртуальная машина, IaaS), и вы на нём администратор. Тогда порядок такой: копия базы → новая версия на сервер 1С → клиенты на терминальном сервере → модуль веб-сервера → проверка. Если же база в аренде по модели SaaS (1С:Фреш или облако партнёра), платформу ставит провайдер, а от вас нужна только проверка после его регламентных работ.
Отличие от локальной установки — в масштабе последствий. В облаке одна машина обслуживает десятки пользователей сразу, а часто и несколько организаций. Ошибка в версии клиента или пути к модулю веб-сервера выбивает всех разом, поэтому подготовка и путь отката здесь важнее самой установки.
Чем облако отличается от локальной установки и кто отвечает за версию
Первым делом определите модель аренды. От неё зависит, есть ли у вас вообще доступ к установщику.
| Модель | Кто обновляет платформу | Что делаете вы |
|---|---|---|
| SaaS (1С:Фреш, сервисы партнёров) | Провайдер, по своему графику | Проверяете работу после регламента, сообщаете об ошибках |
| Терминальный доступ к базе провайдера | Провайдер | То же, плюс проверка своих внешних обработок |
| Свой облачный сервер (IaaS, VPS) | Вы или ваш администратор | Всё: от копии до отката |
На SaaS вы не выбираете версию платформы. Провайдер переводит базы на новую версию массово, обычно с объявлением технических работ. Ускорить или отложить переход можно только по договорённости с ним.
Текущую версию видно в любой модели: главное меню (значок с тремя полосками в заголовке окна) → Справка → О программе. Там указаны и номер платформы, и релиз конфигурации.
🔹 Что отличает облачный сервер от офисного:
- 🖥️ клиент 1С часто стоит не у пользователей, а на терминальном сервере (RDP, RemoteApp) — обновлять его надо там;
- 🌐 доступ через браузер идёт через веб-сервер, а он ссылается на файлы конкретной версии платформы;
- 🔑 программные лицензии привязаны к параметрам виртуальной машины, и смена «железа» у провайдера сказывается на них;
- 👥 на одном сервере могут работать базы разных организаций с разными требованиями к версии.
Что проверить до обновления платформы 1С в облаке
Здесь решается, пройдёт обновление за полчаса или растянется на день.
Совместимость с релизом конфигурации
У каждого релиза типовой конфигурации есть минимальная версия платформы. Она указана в описании релиза («требуется платформа версии не ниже…»). Смотрите в обе стороны:
- ✅ новая платформа должна быть не ниже требуемой для вашего текущего и следующего релиза;
- ⚠️ слишком свежая платформа на старом релизе конфигурации иногда даёт предупреждения и ошибки в отдельных формах — если релиз конфигурации давно не обновлялся, сначала обновите его.
Если на сервере несколько баз, пройдитесь по каждой. Одна база на старом релизе может держать весь сервер на старой платформе.
Копии и запасной путь
Делайте копию той базы, где данные. Для клиент-серверной базы — резервную копию на стороне СУБД (PostgreSQL или MS SQL). Выгрузка .dt из Конфигуратора — дополнительная страховка, но на большой базе она занимает часы.
Отдельно скопируйте каталог служебных данных кластера (srvinfo). В нём хранится список зарегистрированных баз, настройки кластера и рабочих серверов. Если новая версия службы стартует с ошибкой, этот каталог вернёт всё как было.
Если сервер — виртуальная машина у провайдера, сделайте снимок (snapshot) диска. Это самый быстрый способ отката целиком.
Лицензии
Само обновление платформы лицензию не снимает: файлы программных лицензий лежат вне каталога версии. Но если провайдер в те же дни меняет тариф машины (число ядер, объём памяти, переносит на другой хост), программная лицензия может перестать совпадать с оборудованием. Не совмещайте обновление платформы со сменой конфигурации виртуальной машины. Иначе не поймёте, что именно сломало запуск.
Как обновить платформу на своём облачном сервере пошагово
Платформа 8.3 ставится «рядом»: каждая версия ложится в свой каталог вида C:\Program Files\1cv8\8.3.xx.xxxx. Старая версия остаётся на диске, пока вы её не удалите. Это и делает откат простым.
Шаг 1. Сервер 1С:Предприятия
- Заблокируйте начало сеансов и дождитесь, пока пользователи выйдут (подробнее — в разделе про простой ниже).
- Остановите службу агента сервера 1С в
services.msc. ⚠️ Все сеансы в базах этого сервера оборвутся, несохранённые документы пропадут. - Запустите установщик новой версии и отметьте компонент сервера с регистрацией как службы Windows.
- Откройте свойства службы в
services.mscи проверьте поле «Исполняемый файл»: путь кragent.exeдолжен вести в каталог новой версии. - Запустите службу и откройте консоль кластера. Базы должны быть на месте.
Если служба старой версии осталась зарегистрированной, две службы будут спорить за порты 1540 и 1541. Оставьте запущенной только новую.
На Linux порядок тот же: остановить службу сервера, установить пакеты новой версии, проверить, что служба указывает на новую версию, запустить. Имя службы зависит от версии и способа установки, поэтому смотрите его в списке служб systemctl list-units | grep 1c.
Шаг 2. Клиенты на терминальном сервере
В клиент-серверном режиме версия клиента должна совпадать с версией сервера до последней цифры. Иначе пользователь получит сообщение о несоответствии версий клиента и сервера.
- Установите клиентские компоненты той же версии на каждый терминальный сервер .
- Проверьте список баз: если в свойствах базы явно указана версия платформы (строка
Version=в файлеibases.v8i), поправьте её или оставьте только8.3, чтобы запускалась последняя установленная. - Если опубликован RemoteApp, проверьте, что он запускает
1cestart.exe, а не1cv8.exeконкретной версии. Стартер сам выберет нужную версию; жёсткий путь к старому1cv8.exeпосле удаления старой платформы перестанет работать.
💡 Для рабочих мест вне терминального сервера удобно положить дистрибутив в общую папку и указать её в 1cestart.cfg параметром DistributiveLocation. Тогда стартер при подключении к серверу сам поставит недостающую версию клиента.
Шаг 3. Веб-сервер и тонкий клиент через интернет
Это шаг, который забывают чаще всего. В конфигурации Apache публикация 1С подключается строкой с путём к модулю конкретной версии:
LoadModule _1cws_module "C:/Program Files/1cv8/8.3.xx.xxxx/bin/wsap24.dll"
После обновления сервера путь продолжает указывать на старую версию. Пока старая версия стоит на диске, веб-клиент открывается, но может ругаться на несоответствие версий. Удалите старую — публикация перестанет работать совсем.
Что сделать:
- Переопубликуйте базу утилитой
webinstили из Конфигуратора новой версии, либо исправьте путь вhttpd.confвручную. - Перезапустите Apache или IIS. ⚠️ Все сеансы веб-клиента при этом оборвутся.
- Откройте базу в браузере и через тонкий клиент по веб-адресу.
Шаг 4. Проверка
Зайдите в каждую базу под администратором и откройте Справка → О программе. Проведите тестовый документ, сформируйте пару отчётов, запустите внешние обработки, если ими пользуются. Регламентные задания проверьте на следующее утро: обмены и загрузка курсов покажут, работает ли фоновая часть.
Как обновить платформу в многопользовательской среде без долгого простоя
Сама установка сервера занимает 5–15 минут. Простой растягивают ожидание выхода пользователей и проверка.
🔹 Что помогает:
- 🕗 окно работ вне рабочего дня: для организаций в разных часовых поясах выбирайте время, когда офлайн все;
- 🔒 блокировка начала сеансов: в консоли кластера в свойствах информационной базы включите флажок блокировки начала сеансов, задайте сообщение пользователям и код разрешения — с этим кодом сможете войти только вы;
- 📢 предупреждение заранее: в типовых конфигурациях на БСП есть блокировка работы пользователей в разделе
Администрирование → Обслуживание, она показывает сообщение и завершает сеансы в заданное время; - 🧪 тестовая база: загрузите копию в отдельную базу на том же кластере и проверьте её на новой версии за день до работ.
Если серверов два, обновляйте по очереди. Пока на одном ставится новая версия, пользователи работают через другой. Но учтите: в одном кластере все рабочие серверы должны быть одной версии, так что этот приём годится для отдельных серверов с разными базами, а не для одного кластера.
Как вернуть предыдущую версию платформы
Пока старая версия стоит на диске, откат занимает минуты. Поэтому не удаляйте предыдущую версию платформы минимум неделю после обновления.
Порядок отката:
- Заблокируйте сеансы и остановите службу новой версии. ⚠️ Сеансы пользователей оборвутся.
- Зарегистрируйте службу старой версии. Это делается из каталога старой версии командой
ragent.exeс ключом-instsrvcи теми же портами и каталогомsrvinfo, что были раньше. Пример ниже — подставьте свои значения:
cd "C:\Program Files\1cv8\8.3.xx.xxxx\bin"
ragent.exe -instsrvc -usr .\USR1CV8 -pwd ПарольСлужбы -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"
ragent.exe -start
- Новую службу перед этим удалите командой
ragent.exe -rmsrvcиз каталога новой версии. - Верните путь к модулю в
httpd.confи перезапустите веб-сервер. - Если на терминальном сервере в
ibases.v8iзакрепляли версию — верните прежнюю.
Когда откат версии уже не спасёт:
- ❌ после обновления платформы вы обновили конфигурацию до релиза, который требует новую платформу. Старая платформа такую базу не откроет — возвращать придётся и базу из резервной копии;
- ❌ старая версия удалена, а дистрибутива нет. Скачивать её заново придётся в спешке.
Самый надёжный откат на виртуальной машине — снимок, сделанный до работ. Но он вернёт и данные на момент снимка, так что после рабочего дня на новой версии этот путь означает потерю введённых документов.
Когда автоматизация обновлений оправдана
Ручное обновление разумно для одного-двух серверов и обновлений раз в квартал. Скрипт окупается, когда терминальных серверов несколько или вы обслуживаете серверы клиентов.
Платформа ставится из пакета MSI в тихом режиме. Пример для клиентских компонентов на терминальном сервере:
msiexec /i "1CEnterprise 8 (x86-64).msi" /qn TRANSFORMS=adminstallrelogon.mst;1049.mst DESIGNERALLCLIENTS=1 THICKCLIENT=1 THINCLIENT=1 THINCLIENTFILE=1 SERVER=0 WEBSERVEREXT=0 CONFREPOSSERVER=0 CONVERTER77=0 SERVERCLIENT=1 LANGUAGES=RU
Флаги со значением 1 включают компонент, 0 — пропускают. Для сервера включите SERVER=1, для машины с веб-сервером — WEBSERVEREXT=1.
🔹 Что разумно автоматизировать:
- ⚙️ установку клиента одной версии на все терминальные серверы;
- ⚙️ проверку, что версии клиента и сервера совпадают;
- ⚙️ правку пути к модулю в
httpd.conf.
Что лучше оставить ручным: остановку службы и решение о старте работ. Скрипт не знает, что бухгалтер в 23:00 доводит квартальный отчёт, и оборвёт ему сеанс. Автоматическое обновление «по расписанию сразу после выхода версии» на рабочем сервере не нужно: новые версии платформы стоит ставить после того, как их опробовали на тестовой базе.