Почему слетает программная лицензия 1С на виртуальной машине VMware и как это исправить?

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

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

Анализ причин изменения идентификаторов оборудования

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

  1. Изменение UUID и MAC-адреса: Это самые критичные параметры. Даже если вы просто ответили «I copied it» при запуске перемещенной машины, VMware генерирует новый UUID, что мгновенно «убивает» лицензию.
  2. Динамическое распределение ресурсов: Функции vMotion или DRS могут перемещать машину между узлами кластера с разными поколениями процессоров.
  3. Представление дисковой подсистемы: Использование «тонких» дисков или изменение очередности инициализации SCSI-контроллеров воспринимается системой защиты как замена диска.
  4. Hot-Add функции: Включенная возможность «горячего» добавления памяти или ядер процессора меняет структуру виртуальной материнской платы.

Рассмотрим пошагово методы фиксации этих параметров.

Шаг 1. Фиксация UUID и параметров конфигурации VMX

Для начала нам необходимо гарантировать, что внутренние идентификаторы виртуальной машины останутся неизменными при любых манипуляциях в консоли vSphere. Рассмотрим настройку файла конфигурации .vmx. Выясним причину, по которой VMware может сбросить идентификаторы: по умолчанию система настроена на гибкость, а нам нужна жесткая стабильность.

Откроем настройки виртуальной машины (Edit Settings) и перейдем в раздел VM Options -> Advanced -> Edit Configuration. Нам необходимо убедиться в наличии и правильности следующих параметров:


uuid.action = "keep"
uuid.bios = "56 4d 22 be 34 3f 00 00-00 00 00 00 00 00 00 00"

Параметр uuid.action = "keep" принудительно заставляет гипервизор сохранять текущий UUID BIOS при перемещении или копировании папки с машиной, не задавая лишних вопросов пользователю. Это первый и важнейший рубеж защиты нашей лицензии.

Шаг 2. Настройка статического MAC-адреса

Сетевой интерфейс является для 1С одним из «якорных» устройств. По умолчанию VMware часто назначает MAC-адрес в режиме Automatic. Проанализируем ситуацию: при пересоздании адаптера или изменении настроек сети адрес может измениться, что приведет к слету лицензии. Рассмотрим, как это исправить:

  1. Зайдем в настройки сетевого адаптера виртуальной машины.
  2. Переведем режим назначения MAC-адреса из Automatic в Manual.
  3. Зафиксируем текущий адрес. Рекомендуется использовать диапазон адресов, зарезервированный за VMware (00:50:56:XX:XX:XX), чтобы избежать конфликтов в сети.

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

Шаг 3. Стабилизация дисковой подсистемы

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

Во-первых, рекомендуется использовать диски типа Thick Provision Eager Zeroed (толстые диски с немедленным обнулением) для системного раздела. «Тонкие» диски (Thin Provision) могут изменять свои метаданные при расширении на физическом хранилище, что иногда некорректно интерпретируется драйверами ОС как изменение геометрии диска.

Во-вторых, обратим внимание на виртуальные контроллеры. Если у вас несколько дисков, распределите их по портам строго последовательно (0:0, 0:1, 0:2) на одном контроллере. Посмотрим на пример: если системный диск находится на SCSI 0:0, а диск с данными на SCSI 0:3, при определенных обновлениях VMware Tools порядок инициализации может измениться. Старайтесь держать их «плотно» друг к другу.

Шаг 4. Отключение функций Hot-Add

Функции CPU Hot Add и Memory Hot Plug позволяют добавлять ресурсы без выключения сервера. Однако само наличие этой возможности модифицирует ACPI-таблицы виртуального BIOS. Проанализируем ситуацию: 1С воспринимает это как изменение характеристик материнской платы. Выясним решение:

Зайдем в Edit Settings -> VM Options -> RAM/CPU Hot Plug и убедимся, что галочки Enable сняты. Если вам действительно нужно добавить память, лучше выключить сервер, изменить параметры и заново активировать лицензию один раз, чем рисковать внезапным слетом в рабочее время.

Шаг 5. Работа с VMware Tools и версией оборудования

Обновление VMware Tools обновляет драйверы виртуальных устройств (например, pvscsi или vmxnet3). Система защиты 1С фиксирует версию драйвера. Если вы обновили «Тулзы», будьте готовы к тому, что лицензию придется активировать повторно.

Также не рекомендуется обновлять Hardware Compatibility (версию оборудования ВМ) без веской причины. Прыжок с версии 11 на 15 меняет чипсет виртуальной машины, что гарантированно приведет к недействительности лицензии.

Шаг 6. Использование сервера лицензирования 1С

Если ваша инфраструктура подразумевает частые миграции (vMotion), использование кластеров и динамическое управление ресурсами, классическая привязка к параметрам ВМ становится «бомбой замедленного действия». В платформе 1С:Предприятие (начиная с 8.3.5) предусмотрено штатное решение — Сервер лицензирования.

Разберем этот механизм подробнее:

  1. Создается небольшая, максимально стабильная виртуальная машина (или используется выделенный физический ПК).
  2. На этой машине активируются все программные лицензии.
  3. В настройках основной рабочей базы (в консоли администрирования серверов 1С) указываются параметры этого сервера лицензирования.

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

Шаг 7. Аппаратный ключ как альтернатива

Рассмотрим еще один радикальный, но эффективный способ. Если программные лицензии доставляют слишком много хлопот в вашей виртуальной среде, рассмотрите переход на USB-ключи (HASP).

Для работы с ними в VMware существует механизм USB Passthrough. Вы вставляете ключ в физический хост и «пробрасываете» его в конкретную виртуальную машину. Однако более надежным методом является использование сетевых USB-концентраторов (например, AnywhereUSB). Это позволяет не привязывать ключ к конкретному физическому серверу и сохраняет возможность vMotion для виртуальной машины с 1С.

Резюме: для стабильной работы программной лицензии 1С на VMware необходимо в первую очередь зафиксировать uuid.bios, установить статический MAC-адрес и отключить функции Hot-Add. Если же инфраструктура слишком динамична, единственным надежным выходом будет вынос лицензий на отдельный сервер лицензирования или использование аппаратных ключей защиты.

← На главную