Конфигурационные файлы сервиса топологии
Назначение файлов#
Для корректного отображения данных о сетях и физическом размещении устройств необходимо заполнить следующие файлы:
networks.json— данные о ролях сетей;virtual_location.json— данные о физическом размещении узлов.
Данные для заполнения необходимо брать из инсталляционной карты ПАК.
Общие требования к заполнению файлов#
- Файл должен иметь кодировку UTF-8.
 - Структура JSON должна полностью соответствовать предоставленному шаблону.
 - Параметры указываются в соответствии с данными, содержащимися в инсталляционной карте.
 
Заполнение файлов#
Файл network.json#
Пример заполнения файла:
{
    "1": {
        "role": "client",
        "subnet": "101.53.19.0/24",
        "vlan_name": "vlan1"
    },
    "100": {
        "role": "mgmt",
        "subnet": "116.43.18.0/24",
        "vlan_name": "vlan100"
    },
    "102": {
        "role": "intrcn",
        "subnet": "10.73.74.0/24",
        "vlan_name": "vlan102"
    }
}
Источники данных в инсталляционной карте (ИК):
| Атрибут | Лист ИК | Поля в ИК | Пример | Комментарий | 
|---|---|---|---|---|
| vlan_id | L3 interfaces | Столбец “H” | 100 | Идентификатор vlan | 
| vlan_id->role | L3 interfaces | Столбец “P” | mgmt | Роль сети | 
| vlan_id->subnet | IP map | Столбец “L”/Столбец “K” | 116.43.18.0/24 | Подсеть с маской | 
| vlan_id->vlan_name* | - | - | vlan100 | Имя vlan | 
* vlan_name заполняется на усмотрение пользователя, например, может быть использована конструкция vlan<vlan_id>.
Файл virtual_location.json#
Пример заполнения файла:
{
    "sites": [
        {
            "name": "B4",
            "rooms": [
                {
                    "name": "30H8"
                },
                {
                    "name": "30H9"
                }
            ]
        },
        {
            "name": "A2",
            "rooms": [
                {
                    "name": "10A1"
                }
            ]
        }
    ],
    "racks": [
        {
            "name": "E010",
            "description": null,
            "height_ru": 48,
            "power_limit": 8000,
            "total_power": 4767,
            "total_max_power": 9590,
            "total_BTU_hr": 32721.08,
            "total_C14_plugs": 24,
            "total_C20_plugs": 0
        },
        {
            "name": "E011",
            "description": null,
            "height_ru": 48,
            "power_limit": 8000,
            "total_power": 4767,
            "total_max_power": 9590,
            "total_BTU_hr": 32721.08,
            "total_C14_plugs": 24,
            "total_C20_plugs": 0
        }
    ],
    "devices": [
        {
            "name": "SWGenom2",
            "description": "PG-1 - BS access switch 2",
            "type": "switch",
            "location": {
                "site": "B4",
                "room": "30H8",
                "row": null,
                "rack": "E010",
                "units": [
                    48
                ]
            }
        },
        {
            "name": "srv1.eu-west-1.domain.name",
            "description": "PG-1 - DB service node 1",
            "type": "server",
            "location": {
                "site": "B4",
                "room": "30H8",
                "row": null,
                "rack": "E010",
                "units": [
                    15,
                    16
                ]
            }
        },
        {
            "name": "mock-disk-shelf-1",
            "description": "PG-1 - BS backup shelf 1",
            "type": "storage",
            "location": {
                "site": "B4",
                "room": "30H8",
                "row": null,
                "rack": "E010",
                "units": [
                    1,
                    4
                ]
            }
        }
    ]
}
Источники данных в инсталляционной карте (ИК):
| Атрибут | Лист ИК | Поля в ИК | Пример | Комментарий | 
|---|---|---|---|---|
| sites->name | Racks | Столбец “A” | ADM2 | Название площадки (venue) | 
| sites->rooms->name | Racks | Столбец “B” | D6.02 | Комната | 
| racks->name | Racks | Столбец “C” | F09 | Название стойки с оборудованием | 
| racks->description | Racks | Столбец “D” | null | Описание стойки с оборудованием, может быть не заполнено (null) | 
| racks->height_ru | Racks | Столбец “E” | 48 | Высота стойки в юнитах | 
| racks->power_limit | Racks | Столбец “F” | 8000 | |
| racks->total_power | Racks | Столбец “G” | 1645 | |
| racks->total_max_power | Racks | Столбец “H” | 4900 | |
| racks->total_BTU_hr | Racks | Столбец “I” | 15319,88 | |
| racks->total_C14_plugs | Racks | Столбец “J” | 10 | |
| racks->total_C20_plugs | Racks | Столбец “K” | 0 | |
| devices->name | Devices | Столбец “A” | p1-m1-node1 | Имя узла | 
| devices->description | Devices | Столбец “E” | null | Описание узла, может быть не заполнено (null) | 
| devices->type | Devices | Столбец “F” | server | Тип узла | 
| devices->location->site | Devices | Столбец “G” | ADM2 | |
| devices->location->room | Devices | Столбец “H” | D6.02 | |
| devices->location->row | - | - | null | пока не используется | 
| devices->location->rack | Devices | Столбец “I” | F09 |