Вы можете импортировать оборудование в платформу с помощью скрипта миграции. Подробнее о миграции см. в статье Миграция с DCImanager 5 в DCImanager 6.
Импорт состоит из следующих этапов:
- Подготовка файла в формате JSON с описанием оборудования.
- Подготовка конфигурационного файла для скрипта миграции.
- Запуск скрипта в режиме импорта.
Порядок импорта
- Подключитесь к серверу с DCImanager 6 по SSH с правами суперпользователя.
-
Зайдите в контейнер migrator:
docker exec -it migrator bash
-
Перейдите в директорию сервиса миграции:
cd /opt/ispsystem/migrate
-
Чтобы импортировать серверы, создайте файл /opt/ispsystem/migrate/server.json следующего формата:
Пример файла[ { "name":"Server 1", "platform":"Platform 1", "configuration":"i9-9900K-64Gb-1024NVMe-2048NVMe", "mac":"AA:BB:CC:DD:EE:FF", "owner":"admin@example.com", "blocked":false, "installed_os":"", "note":"Some comment", "rack": "Rack 1", "unit":1, "chassis": null, "slot": null }, { "name:"Server 2", ... ]
Пояснения -
Чтобы импортировать коммутаторы, создайте файл /opt/ispsystem/migrate/switch.json следующего формата:
Пример файла[ { "name": "Switch 1", "device": "arista_eapi", "ip": "192.0.2.100", "rack": "Rack 1", "unit": 1, "size": 1, "note": "Some comment", "couple_switch": null, "snmp_params": null, "netconf_params": null, "telnet_params": null, "nxapi_params": null, "eapi_params": {"password": "secret", "username": "admin"} }, { "name:"Switch 2", ... ]
ПоясненияЧтобы получить внутреннее имя обработчика, откройте интерфейс Swagger → раздел Equipment service → выполните GET-запрос supported_switch. Ответ на запрос будет содержать имена обработчиков в параметре handler. Подробнее об обработчиках коммутаторов см. в статье Поддерживаемые устройства.
Чтобы получить параметры подключения коммутатора, откройте интерфейс Swagger → раздел DCI Back → скопируйте нужные данные из параметра POST-запроса switch. Например, для eapi_params нужно указать:
"eapi_params": { "password": "<пароль>", "username": "<имя пользователя>" }
Для telnet_params используйте данные из ssh_params:
"ssh_params": { "password": "<пароль>", "port": <порт>, "user": "<имя пользователя>" }
-
Создайте конфигурационный файл для миграции import_settings.yaml:
action: import platform: dci6 data: - server - switch transport: - type: dci6_http - type: dci6_auth_http location: 1 format: json debug: false log_file: /var/log/migrate.log report_file: import_report_{datetime}.txt report_view: plain
- Укажите id локации в параметре location.
- Если вы не планируете импортировать серверы, удалите из файла строку "- server".
- Если вы не планируете импортировать коммутаторы, удалите из файла строку "- switch".
-
Запустите скрипт для импорта данных:
python3 migrator.py -p import_settings.yaml
Диагностика
Логи миграции записываются в файл /var/log/migrate.log в контейнере migrator на сервере с DCImanager 6. Отчёт по миграции сохраняется в файл, указанный в параметре report_file конфигурационного файла миграции.