Привет, сетевой друг!
Сегодня разберём, в чём разница между gRPC и RESTCONF.
🟣gNMI - протокол от OpenConfig, который работает поверх gRPC и Protobuf. Он позволяет устройствам «толкать» телеметрию в реальном времени или «тянуть» конфигурацию через подписки. Гибко, быстро и масштабируемо: нет постоянного опроса, трафик минимальный, данные структурированные и сразу готовы для аналитики.
Пример получения данных о интерфейсах:
gnmi_get -a 10.0.0.1:57400 -u admin -p pass -t "interfaces/interface[name=Ethernet1]"
Или подписка на изменения статистики трафика:
gnmi_subscribe -a 10.0.0.1:57400 -u admin -p pass -t "interfaces/interface/state/counters" -s
🟣RESTCONF - это веб-ориентированная альтернатива NETCONF, тоже с поддержкой YANG. Работает по HTTPS, использует JSON/XML и идеально подходит для интеграции с современными DevOps-инструментами. Пример:
curl -k -u admin:pass -X GET https://10.0.0.1/restconf/data/interfaces/interface=Ethernet1
Для изменения конфига:
curl -k -u admin:pass -X PATCH -H "Content-Type: application/yang-data+json" \
-d '{"interface": {"name": "Ethernet1","enabled": true}}' \
https://10.0.0.1/restconf/data/interfaces/interface=Ethernet1
RESTCONF удобен для скриптов и CI/CD: JSON, HTTPS, а значит, легко вставить в Ansible, Python или Postman.
🟣И в итоге: gNMI крутой для реального времени и больших потоков телеметрии, RESTCONF - для безопасного и современного API-управления. SNMP тут уже кажется прошлым веком, а NETCONF и RESTCONF/ gNMI дают полный контроль и автоматизацию.
Серверная Админа | #grpc #RESTCONF
