Миграция с DCImanager 5 в DCImanager 6
Миграция позволяет перенести настройки и оборудование из панели управления DCImanager 5 в платформу DCImanager 6. Миграция выполняется в полуавтоматическом режиме из консоли сервера с DCImanager 6. Возможна миграция из одной или нескольких панелей управления DCImanager 5.
Если у DCImanager 5 настроена интеграция с BILLmanager, тарифы и услуги выделенных серверов будут автоматически переведены на обработчик DCImanager 6.
Этапы миграции:
- Подготовка ПО — DCImanager 5, DCImanager 6, IPmanager 5, BILLmanager.
- Перенос адресного пространства — используемых IP-адресов, пулов и сетей.
- Перенос объектов DCImanager 5 — пользователей, оборудования, настроек подключения, VLAN, складов.
- Изменение настроек BILLmanager.
Обратите внимание!
При миграции не будут перенесены:
- тестовые коммутаторы и PDU с типом Dummy;
- коммутаторы и PDU с пользовательскими обработчиками;
- пользователи с ролью "Оператор".
Подготовка ПО

DCImanager 5
- В настройках всех серверов, коммутаторов и PDU укажите стойки и юниты, в которых эти устройства расположены.
- В настройках всех блейд-серверов укажите юниты шасси, в которых эти серверы расположены.
- Создайте временного пользователя для интеграции. При создании укажите:
- Уровень доступа — Администратор.
- Количество записей — не меньше, чем количество оборудования на складе каждого типа. Например, если на складе 5600 дисков, то значение должно быть не менее 5600.
- Сформируйте одноразовый ключ для авторизации:
- Подключитесь к серверу с DCImanager 5 по SSH с правами суперпользователя.
Выполните команду:
CODEСохраните значение ключа.
Обратите внимание!
По этому ключу можно авторизоваться только один раз. Для повторной миграции ключ нужно сформировать заново.
Создайте временного пользователя БД и разрешите ему доступ к таблице пользователей:
Откройте доступ к MySQL.
Команды для ОС CentOS 7:CODECODECODECODECODEСоздайте временного пользователя с доступом только для чтения:
Зайдите в консоль базы данных:
CODEВыполните команды:
CODECODECODECODECODE
DCImanager 6
Создайте резервную копию платформы.
- Создайте и настройте локацию.
- Загрузите необходимые шаблоны ОС.
- Установите и настройте необходимые модули.
- Если в платформе установлен, но не настроен модуль "Интеграция с IPmanager 6", удалите его.
IPmanager 5
Убедитесь, что IPmanager 5 использует СУБД MySQL или MariaDB. Если IPmanager 5 использует СУБД SQLite, перейдите на использование СУБД MySQL. Подробнее см. в статье Использование MySQL в качестве СУБД документации IPmanager.
Обратите внимание!
Рекомендуемая версия MySQL/MariaDB – не ниже 5.5.x. Для более ранних версий успешный импорт ВМ не гарантируется.
- Откройте доступ к серверу MySQL со стороны DCImanager 6. Для этого разрешите подключения на порты 3306/TCP, 3306/UDP и удалённое подключение к БД:
- Подключитесь к серверу IPmanager 5 по SSH с правами суперпользователя.
Проверьте текущие настройки файрвола:
CODEОткройте порты 3306/TCP, 3306/UDP:
CODECODEПерезапустите сервис файрвола:
CODEОткройте конфигурационный файл MySQL /etc/my.cnf. В раздел [mysqld] добавьте параметр bind-address=<IP-адрес сервера с IPmanager 5> и закомментируйте строку с параметром skip-networking.
Подключитесь к сервису mysql:
CODECODEРазрешите пользователю удалённое подключение к MySQL:
CODECODE
BILLmanager

- Создайте обработчик услуг DCImanager 6.
Создайте временного пользователя для настройки интеграции. При создании включите опцию Полный доступ.
Обратите внимание!
Не используйте для настройки интеграции учётную запись root.
- Сформируйте одноразовый ключ для авторизации:
- Подключитесь к серверу с BILLmanager по SSH с правами суперпользователя.
Выполните команду:
CODEСохраните значение ключа.
Обратите внимание!
По этому ключу можно авторизоваться только один раз. Для повторной миграции ключ нужно сформировать заново.
- Создайте резервную копию BILLmanager.
- Если в BILLmanager есть услуги с опцией По типу сервера, их нужно отключить. Для этого:
- Подключитесь к серверу с BILLmanager по SSH с правами суперпользователя.
Зайдите в консоль базы данных:
CODEВыберите базу данных billmgr:
CODEОпределите id обработчика DCImanager 5:
CODEОпределите, есть ли у модуля обработки услуги с опцией По типу сервера:
CODEЕсли ответ на предыдущую команду содержит id услуг, отключите опцию:
CODE
Перенос адресного пространства
Для управления адресным пространством DCImanager 5 и DCImanager 6 используют разное ПО:
- DCImanager 5 — панель управления IPmanager 5;
- DCImanager 6 — встроенный модуль IPmanager 6.
Для проведения миграции нужно импортировать адресное пространство из IPmanager 5 в IPmanager 6.
IPmanager 6 поддерживает режим эмуляции API IPmanager 5. Если вы используете другие программные продукты, которым требуется интеграция с IPmanager 5 (например, BILLmanager, VMmanager 5, ISPmanager), вы сможете перенастроить их на работу с IPmanager 6.

Пример управления адресным пространством
Если у DCImanager 6 настроена интеграция с внешним IPmanager 6, то данные нужно импортировать в платформу, выполняющую роль мастера. Подробнее см. в статье Модуль "Интеграция с IPmanager 6".
Если роль мастера выполняет VMmanager 6, импортируйте данные по инструкции из документации VMmanager 6. Если в VMmanager 6 используется модуль "Интеграция с DNSmanager 6", устанавливать аналогичный модуль в DCImanager 6 не требуется.
Импорт данных
Чтобы импортировать данные об адресном пространстве:
- Создайте на сервере с IPmanager 5 пользователя для интеграции. Пользователю должны быть доступны все типы адресов, которые нужно перенести. Подробнее о типах адресов см. в статье Управление группами IP-адресов.
Подключитесь к серверу с DCImanager 6 по SSH с правами суперпользователя.
Выполните команду:
CODEПример вывода команды
Имена контейнеров могут отличаться в зависимости от используемой версии Docker Compose. Вместо символа подчёркивания в именах контейнеров может использоваться дефис.
Логи команды записываются в файл /var/log/ipmgr5_import.log в контейнере dci_ipmgr_1 на сервере с DCImanager 6.
Интеграция панелей управления с IPmanager 6
Чтобы панели управления, которые были интегрированы с IPmanager 5, переключились на работу с IPmanager 6:
Создайте в DCImanager 6 учётную запись администратора с именем ipmgr5@example.com.
Обратите внимание!
ipmgr5@example.com — не пример, а точное имя, которое нужно указать при создании учётной записи.
- Если подключаемая панель управления должна иметь доступ только к определённому пулу IP-адресов, создайте в DCImanager 6 пул с суффиксом public. Например, DCI5_public.
- В подключаемой панели управления:
- Перейдите в Интеграция → IPmanager.
- Укажите настройки для интеграции:
URL — https://domain.com/api/ipmgr5/v3/ipmgr.
Имя пользователя:
чтобы панель управления имела доступ только к определённому пулу IP-адресов, укажите pool_XXX;
- чтобы панель управления имела доступ ко всему адресному пространству, укажите произвольное имя пользователя.
- Пароль — пароль пользователя ipmgr5@example.com.
- Нажмите Ok.
Синхронизация PTR-записей
Если у DCImanager 6 настроена интеграция с DNSmanager 6, то после создания адресного пространства необходимо синхронизировать PTR-записи с DNS-сервером. Для этого:
- Удалите модуль "Интеграция с DNSmanager 6": Настройки → Модули → Интеграция с DNSmanager 6 → Удалить модуль → Удалить модуль.
- Повторно установите и настройте модуль интеграции. Подробнее см. в статье Модуль "Интеграция с DNSmanager 6".
Логи синхронизации записываются в файл /var/log/dns_proxy_integration.log в контейнере dci_dns_proxy_1 на сервере с DCImanager 6.
Имена контейнеров могут отличаться в зависимости от используемой версии Docker Compose. Вместо символа подчёркивания в именах контейнеров может использоваться дефис.
Перенос объектов DCImanager 5
Логика работы
Перенос состоит из двух этапов:
- Экспорт данных из DCImanager 5 в файл формата json.
- Импорт данных из файла в платформу DCImanager 6.
Вы можете перенести все объекты DCImanager 5 вместе или каждый тип по отдельности. Для каждого типа объектов при миграции создаётся отдельный файл. Например, для серверов создаётся файл server.json. Это позволяет в случае каких-либо проблем исправить данные в файле вручную и повторить миграцию.
Обратите внимание!
Перед каждым запуском скрипта миграции нужно заново создавать ключ для авторизации в DCImanager 5.
Если вы переносите каждый тип объектов по отдельности, выполняйте миграцию в следующем порядке:
- Пользователи.
- Оборудование:
- Стойки и платформы.
- Коммутаторы, PDU, UPS.
- Шасси.
- Серверы.
- Пользовательские VLAN.
- Склады:
- Поставщики и поставки.
- Коммутаторы, PDU, UPS, типы оборудования, серверы.
- Комплектующие.
Имена пользователей
Имена пользователей при миграции будут изменены:
- если у DCImanager 5 настроена интеграция с BILLmanager, имя пользователя будет заменено на email владельца сервера;
- если интеграция с BILLmanager не настроена, к имени пользователя будет добавлено @dci5.imported. Это изменение связано с ограничениями платформы DCImanager 6. В качестве ID пользователя обязателен формат адреса электронной почты.
Модели жёстких дисков
На основе модели жёсткого диска из DCImanager 5 будет создана модель накопителей с аналогичным названием в справочнике DCImanager 6. На основе поля "Тип" будут сформированы поля "Псевдоним для конфигурации" и "Объём, GB". Если название модели в DCImanager 5 не указано, то в качестве названия будет использоваться значение из поля "Тип".
Модели RAM
На основе модели RAM из DCImanager 5 будет создана модель оперативной памяти с аналогичным названием в справочнике DCImanager 6. На основе поля "Тип" будут сформированы поля "Объём памяти" и "Частота". Единица измерения объёма памяти будет изменена из мебибайта в гигабайт. Если название модели в DCImanager 5 не указано, то в качестве названия будет использоваться значение из поля "Тип".
id оборудования
Чтобы перенести id оборудования из DCImanager 5, добавьте к нужным типам оборудования в DCImanager 6 собственный параметр с именем old_id. При миграции id оборудования будут записаны в созданный параметр. Подробнее о создании параметра см. в статье Собственные параметры оборудования.
Запуск миграции
Перед запуском миграции убедитесь, что у временного пользователя DCImanager 5 в интерфейсе платформы не выставлены фильтры оборудования. В противном случае миграция выполнится только для оборудования, которое удовлетворяет условиям фильтрации.
Чтобы запустить миграцию:
- Подключитесь к серверу с DCImanager 6 по SSH с правами суперпользователя.
Зайдите в контейнер migrator:
CODEПерейдите в директорию сервиса:
CODEСоздайте конфигурационные файлы для миграции на основе шаблонов export_settings.example.yaml и import_settings.example.yaml.
Пример файла для экспорта
YMLПример файла для импорта
YMLЗапустите скрипт для экспорта данных:
BASHЕсли данные были экспортированы успешно, запустите скрипт для импорта данных:
BASH
Логи миграции записываются в файл /var/log/migrate.log в контейнере migrator на сервере с DCImanager 6. Отчёт по миграции сохраняется в файл, указанный в параметре report_file конфигурационного файла миграции.
Повторная миграция
Если миграция завершилась с ошибкой или за время переноса конфигурация DCImanager 5 изменилась, вы можете выполнить миграцию повторно:
- Восстановите DCImanager 6 из резервной копии.
- Создайте одноразовый ключ для авторизации в DCImanager 5.
- Исправьте конфигурационные файлы экспорта и импорта.
- Запустите скрипт миграции.
Действия после миграции
- Изучите отчёт и убедитесь, что миграция прошла успешно.
- Откройте интерфейс платформы и проверьте корректность:
- Переноса всех объектов платформы.
- Выделения IP-адресов серверам.
- Взаимодействия с коммутаторами и PDU.
- Настроек подключений к коммутаторам и PDU.
Изменение настроек BILLmanager
Если у DCImanager 5 настроена интеграция с BILLmanager, вы можете перенести услуги на обработчик DCImanager 6. Во время миграции:
- Для всех тарифных планов, которые работают на выбранном обработчике DCImanager 5, будет включён обработчик DCImanager 6 и изменена внутренняя конфигурация для заказа.
Для каждого пользователя DCImanager 5 будет создана учётная запись в DCImanager 6:
имя пользователя — email, указанный в BILLmanager;
пароль — пароль, указанный в услуге выделенного сервера.
Обратите внимание!
Если пользователь после заказа сервера изменил пароль в DCImanager 5, то пароль восстановится на исходный. Пользователю останется доступен переход в DCImanager 6 через интерфейс BILLmanager. В дальнейшем пользователь сможет восстановить пароль через электронную почту.
- Во всех открытых и остановленных услугах выделенных серверов будут изменены:
- имя пользователя — на email пользователя из DCImanager 6;
- id сервера — на id из DCImanager 6;
- обработчик услуги — на DCImanager 6.
Если в BILLmanager есть услуги размещения серверов (colocation), то при миграции:
- К тарифным планам размещения серверов будет подключён обработчик DCImanager 6.
- Во всех открытых и остановленных услугах размещения серверов будут изменены:
- имя пользователя — на email пользователя из BILLmanager;
id сервера и стойки — на id из DCImanager 6;
Поиск сервера в DCImanager 6 будет выполняться по его имени из услуги в BILLmanager, а не по id.
- обработчик услуги — на DCImanager 6.
- имя пользователя — на email пользователя из BILLmanager;
- Владельцем сервера в DCImanager 6 станет пользователь, у которого email совпадает с email пользователя из BILLmanager. Если такого пользователя нет, он будет создан автоматически со случайным паролем.
- У тарифных планов размещения серверов будет отключён обработчик DCImanager 5.
Запуск миграции
Чтобы запустить миграцию:
- Подключитесь к серверу с DCImanager 6 по SSH с правами суперпользоваеля.
Зайдите в контейнер migrator:
CODEПерейдите в директорию сервиса:
CODEСоздайте конфигурационный файл для миграции на основе шаблона bill_migrate.example.yaml.
Пример конфигурационного файла
YMLЧтобы проверить возможность миграции, запустите скрипт в режиме "только чтение":
CODEВ этом режиме скрипт не выполняет реальных действий, а только проверяет возможность миграции.
Если отчёт не содержит ошибок, повторно сгенерируйте одноразовый ключ в BILLmanager и запустите реальную миграцию:
CODE
Логи миграции записываются в файл /var/log/bill_migrate.log в контейнере migrator на сервере с DCImanager 6. Отчёт по миграции сохраняется в файл, указанный в параметре report_file конфигурационного файла миграции.
Повторная миграция
Если миграция завершилась с ошибкой или за время переноса конфигурация BILLmanager изменилась, вы можете выполнить миграцию повторно:
- Создайте одноразовый ключ для авторизации в BILLmanager.
- Исправьте конфигурационный файл.
- Запустите скрипт миграции.
Действия после миграции
- Изучите отчёт и убедитесь, что миграция прошла успешно.
- Проверьте корректность конфигурации тарифов. Например, выполните тестовый заказ сервера.
- Проверьте, есть ли в DCImanager 6 шаблоны ОС, используемые в тарифах.
- Удалите из DCImanager 6 всех временных пользователей с суффиксом @dci5.imported. Перед удалением убедитесь, что эти пользователи не являются владельцами серверов.
- Удалите обработчик DCImanager 5:
- Подключитесь к серверу с BILLmanager по SSH с правами суперпользоваеля.
Зайдите в консоль базы данных:
CODEВыберите базу данных billmgr:
CODEОпределите id обработчика DCImanager 5:
CODEУдалите привязку IP-адресов к IPmanager и обработчику DCImanager 5:
CODE- Удалите обработчик в интерфейсе BILLmanager.