Основная задача Collector – принять и сохранить flow с сетевых устройств.
Для включения обработки необходимо через API Collector передать адрес сетевого устройства, отправляющего flow, а также параметр семплирования и таймауты.
По умолчанию список пар «адрес-семплирование» пуст, вследствие чего Collector не обрабатывает пришедшие flow. Для их обработки необходимо добавить список с помощью RESTful HTTP API, представленного ниже.
В базовом случае запросы следует отправлять на порт 8000 (порт API бекенда
коллектора).
Для получения данных непосредственно у коллектора используется порт 50055.
Значение порта можно изменить через переменную COLLECTOR_API_PORT
.
В качестве параметров запросов выступают:
ip
– адрес сетевого устройства, которое присылает flow.sample
– коэффициент семплирования flow для сетевого устройства.
Показывает, сколько пакетов характеризуется данным пакетом.
По умолчанию 1.active_timeout
– время, через которое сетевое устройство посылает flow при
наличии трафика с источника.inactive_timeout
– время, через которое сетевое устройство посылает flow при
закрытии соединения источником.Путь: /exporters
Метод: GET
Ответ:
[
{
"ip": "192.168.0.1",
"sample": 10,
"active_timeout": 30,
"inactive_timeout": 30
}
]
Путь: /exporters
Метод: POST
Данные:
[
{
"src": "192.168.0.1",
"sample": 10,
"active_timeout": 30,
"inactive_timeout": 30
},
{
"src": "192.168.0.2",
"sample": 1,
"active_timeout": 30,
"inactive_timeout": 30
}
]
/exporters
Путь: /exporters6
Метод: GET
Ответ:
[
{
"ip": "111::0",
"sample": 10,
"active_timeout": 30,
"inactive_timeout": 30
}
]
Путь: /exporters6
Метод: POST
Данные:
[
{
"src": "111::0",
"sample": 10,
"active_timeout": 30,
"inactive_timeout": 30
},
{
"src": "112::0",
"sample": 1,
"active_timeout": 30,
"inactive_timeout": 30
}
]
/exporters6
В качестве параметров запросов выступают:
src_ip
– адрес сетевого устройства, которое присылает flow.dst_ip
– адрес, куда необходимо отправить flow после обработки Collector.Путь: /forwards
Метод: GET
Ответ:
[
{
"src_ip": "192.168.0.1",
"dst_ip": "192.168.0.2"
}
]
Путь: /forwards
Метод: POST
Данные:
[
{
"src_ip": "192.168.0.1",
"dst_ip": "192.168.0.2"
},
{
"src_ip": "192.168.0.3",
"dst_ip": "192.168.0.2"
}
]
/forwards
Путь: /forwards6
Метод: GET
Ответ:
[
{
"src_ip": "111::0",
"dst_ip": "112::0"
}
]
Путь: /forwards6
Метод: POST
Данные:
[
{
"src_ip": "111::0",
"dst_ip": "112::0"
},
{
"src_ip": "113::0",
"dst_ip": "112::0"
}
]
/forwards6