0.7.0
Совместимость с платформой
NetBox module в версии 0.7.0 ориентирован на Solar LightHouse 1.7.5 и собран на ModuleSDK 1.7.5.
Что изменилось и зачем
- конфигурация разбита на логические группы (
netbox-connection,netbox-scope,netbox-filters,netbox-collection) — параметры стало проще читать и заполнять; - режимы
interface_collection_modeиmetadata_modeпереведены со строки на типEnumс фиксированным списком значений; - поля «Ответственный» и «Зона» убраны из конфигурации — назначаются платформой из контекста сканирования;
- MAC интерфейса читается из
primary_mac_address/mac_addresses(NetBox 4.2+ и 4.6) с откатом на устаревшее полеmac_address; - интерфейсы собираются одним проходом (режим
bulk); по IP-адресам создаются сети, а у интерфейса заполняется привязка к сети.
Таблица параметров
| Группа | Имя параметра | Обязательный | Значение по умолчанию | Для чего параметр | Пример заполнения |
|---|---|---|---|---|---|
| Подключение и аутентификация | URL NetBox (netbox-connection.netbox_url) | да | https://netbox.example.local | Базовый адрес NetBox без суффикса /api | http://10.150.0.35:8000 |
| Подключение и аутентификация | Токен API NetBox (netbox-connection.netbox_token) | да | [[NETBOX_API_TOKEN]] | API-токен NetBox с правами только на чтение DCIM, Virtualization и IPAM. Рекомендуется хранить в Секретах | [[NETBOX_API_TOKEN]] |
| Подключение и аутентификация | Проверять TLS-сертификат (netbox-connection.verify_ssl) | нет | true | Проверять доверенность TLS-сертификата NetBox | false |
| Что собираем | Импортировать физические устройства (netbox-scope.include_devices) | нет | true | Создавать хосты на основе dcim/devices | true |
| Что собираем | Импортировать виртуальные машины (netbox-scope.include_virtual_machines) | нет | true | Создавать хосты на основе virtualization/virtual-machines | true |
| Что собираем | Импортировать сетевые интерфейсы (netbox-scope.include_interfaces) | нет | true | Добавлять к хостам сетевые интерфейсы из NetBox | true |
| Что собираем | Привязывать IP-адреса к интерфейсам (netbox-scope.collect_ip_addresses) | нет | true | Загружать ipam/ip-addresses и сопоставлять с интерфейсами | true |
| Что собираем | Импортировать префиксы IPAM (netbox-scope.include_prefixes) | нет | false | Создавать сети на основе ipam/prefixes | false |
| Фильтры NetBox | Статус устройств (netbox-filters.device_status) | нет | active | Фильтр по статусу устройств; пусто — без фильтра | active |
| Фильтры NetBox | Статус виртуальных машин (netbox-filters.vm_status) | нет | active | Фильтр по статусу ВМ; пусто — без фильтра | active |
| Фильтры NetBox | Площадка (netbox-filters.site) | нет | (пусто) | Фильтр по slug площадки NetBox | msk-dc-1 |
| Фильтры NetBox | Tenant (netbox-filters.tenant) | нет | (пусто) | Фильтр по slug tenant в NetBox | dunder-mifflin |
| Фильтры NetBox | Тег (netbox-filters.tag) | нет | (пусто) | Фильтр по slug тега NetBox | monitored |
| Детали сбора | Режим сбора интерфейсов (netbox-collection.interface_collection_mode) | нет | bulk | Допустимые значения: bulk, per_object | bulk |
| Детали сбора | Режим передачи metadata (netbox-collection.metadata_mode) | нет | none | Допустимые значения: none, basic | none |
| Детали сбора | Размер страницы API (netbox-collection.page_size) | нет | 200 | Количество объектов за один запрос к API NetBox | 100 |
| Детали сбора | Таймаут запроса, сек (netbox-collection.timeout) | нет | 30 | Таймаут одного HTTP-запроса к NetBox | 60 |
| Детали сбора | Количество повторов запросов (netbox-collection.max_retries) | нет | 2 | Сколько раз повторять запрос при ошибке или timeout | 2 |
| Детали сбора | Пауза между повторами, сек (netbox-collection.retry_backoff_seconds) | нет | 1.0 | Базовая пауза между повторными запросами | 1.0 |
| Детали сбора | Пропускать endpoint при timeout (netbox-collection.skip_timed_out_endpoints) | нет | true | Пропустить endpoint после повторов и продолжить импорт | true |
| Детали сбора | Пауза между запросами, сек (netbox-collection.request_pause_seconds) | нет | 0.0 | Дополнительная пауза между запросами к NetBox | 0.0 |
| Детали сбора | Останавливать при ошибке объекта (netbox-collection.fail_on_object_error) | нет | false | Останавливать весь запуск при ошибке отдельного объекта | false |