스트리밍 텔레메트리: gNMI, OpenConfig, gRPC

60초 간격의 SNMP 폴링은 마이크로버스트를 놓치고 컨트롤 플레인에 부하를 줍니다. OcNOS는 대신 모델 기반 텔레메트리를 gRPC로 스트리밍합니다. OpenConfig로 모델링된 경로를 변경 시 또는 샘플링 방식으로, 다이얼인하는 컬렉터나 라우터가 다이얼아웃하는 컬렉터로 보내며, 변환 계층 없이 Prometheus, InfluxDB, Grafana에 전달합니다.

텔레메트리 파이프라인

OcNOS 라우터는 gNMI Subscribe 페이로드(gRPC dial-out)를 중앙 collector로 스트리밍합니다. collector는 이를 시계열 및 검색 백엔드로 분배하고, 그 위에서 Grafana가 대시보드를 렌더링합니다.

스트리밍 텔레메트리 토폴로지: OcNOS 라우터가 gNMI dial-out으로 컬렉터에 스트리밍하고 컬렉터가 Prometheus, InfluxDB, Grafana로 분산
스트리밍 텔레메트리: OcNOS에서 컬렉터로의 gNMI dial-out, Prometheus, InfluxDB, Grafana로 분산.

스트리밍 텔레메트리가 SNMP를 대체한 이유

SNMP 폴 주기는 마이크로버스트를 놓치고, 컨트롤 플레인에 부하를 주며, 구조화된 모델 기반 페이로드를 제공하지 못합니다. gNMI Subscribe 는 gRPC를 통해 이 모델을 뒤집습니다: 디바이스가 변경 시점이나 샘플 간격에 따라 타입이 지정된 업데이트를 푸시하고, 컬렉터는 protobuf를 파싱하기만 하면 됩니다. OcNOS는 OpenConfig 및 IP Infusion 네이티브 모델을 제공하며, dial-in(컬렉터가 장비에 접속) 및 dial-out(NAT 뒤의 장비가 컬렉터에 접속) 방식의 배포를 모두 지원합니다.

OcNOS 스트리밍 텔레메트리 구현

stream, once, poll

stream, once, poll 모드의 Subscribe RPC. 샘플링 스트리밍은 OcNOS 6.5.1부터, 변경 시 스트리밍은 7.0.0부터 지원하므로 컬렉터는 주기적인 피드나 변경분만 받을 수 있습니다.

NAT 뒤의 라우터

gRPC dial-out을 사용하면 NAT 뒤의 cell-site 및 edge 라우터가 인바운드 포트 개방 없이 중앙 collector로 telemetry를 push할 수 있습니다.

경로로 지정하는 상태

인터페이스 카운터, 라우팅 상태, 플랫폼 상태는 YANG 경로로 지정합니다. 센서 경로의 와일드카드 키(6.6.0부터)로 하나의 구독에서 모든 인터페이스나 네이버를 선택할 수 있습니다.

Telegraf + gNMIc

gNMI는 개방형 사양이므로 Telegraf gNMI 입력, gNMIc 같은 표준 컬렉터가 OcNOS 스트림을 받아 Prometheus, InfluxDB, Grafana로 전달합니다.

OcNOS의 gNMI RPC

gNMI는 Capabilities, Get, Set, Subscribe의 네 가지 RPC로 구성된 작은 gRPC 서비스입니다. 텔레메트리는 Subscribe RPC입니다. 표에는 기능 매트릭스에 기록된 대로 OcNOS가 구현한 내용과 도입 릴리스가 나와 있습니다.

Subscribe, 다이얼인

컬렉터가 IPv4 또는 IPv6로 라우터에 gRPC 세션을 열고 경로를 구독합니다. gNMI 사양 0.10.0.

OcNOS 6.4.1부터

Subscribe, 다이얼아웃

라우터가 gRPC 터널을 통해 컬렉터로 세션을 열므로, NAT나 방화벽 뒤의 라우터도 인바운드 포트가 필요하지 않습니다.

OcNOS 6.5.1부터

once 및 poll 모드

지속적인 스트리밍과 함께, 구독한 경로의 일회성 스냅샷 또는 컬렉터가 자체 일정에 따라 폴링하는 구독을 제공합니다.

OcNOS 6.5.1부터

변경 시 스트리밍

인터페이스 운영 상태, BGP 세션 상태, 라우트 수 같은 상태에 대해 값이 바뀔 때만 업데이트합니다.

OcNOS 7.0.0부터

Get RPC 및 와일드카드 경로

gNMI Get을 통한 단건 읽기와 센서 경로의 와일드카드 키로, 하나의 구독이 모든 인터페이스나 모든 네이버를 포괄합니다.

OcNOS 6.6.0부터

TLS, 인증, 인밴드

gRPC 세션의 TLS, gNMI 서버의 사용자 인증(7.0.0부터), 하나 또는 여러 VRF에서의 인밴드 운영.

OcNOS 6.6.0부터

OpenConfig 모델

gNMI 위의 OpenConfig 데이터 모델. NETCONF 경로에서도 6.0.0부터 OpenConfig를 지원하므로 같은 모델 트리를 구성과 텔레메트리에 모두 사용합니다.

OcNOS 6.5.1부터

OcNOS 텔레메트리로 얻을 수 있는 것

  • 표준에 부합하는 경로. OpenConfig leaf 경로는 기존 컬렉터가 이미 기대하는 형식과 일치하므로, 독점 YANG 변환 계층이 필요 없습니다.
  • 변경 중심의 가시성. 변경 시 구독은 다음 폴링을 기다리지 않고 상태 전환이 일어나는 즉시 보고하며, 샘플링 구독은 컬렉터가 요청한 간격으로 실행됩니다.
  • 개방형 컬렉터 스택. 표준 gNMI 컬렉터, Prometheus, InfluxDB, Grafana는 다른 gNMI 소스와 똑같이 동작합니다.

옵저버빌리티 스택을 현대화하고 계십니까?

기술 데모 요청하기 →

자주 묻는 질문

streaming telemetry와 SNMP의 차이는 무엇입니까?
SNMP는 고정 주기로 장치를 폴링하므로 컨트롤 플레인에 부하를 주면서도 마이크로버스트를 놓칠 수 있습니다. gNMI 스트리밍 텔레메트리에서는 장치가 변경 시 또는 샘플 간격마다 구조화된 모델 기반 업데이트를 푸시하므로, 수집기는 페이로드를 파싱하기만 하면 됩니다.
OcNOS는 어떤 gNMI 구독 모드를 지원합니까?
OcNOS는 stream, once, poll 모드의 gNMI Subscribe RPC를 지원하며, 샘플 간격 스트리밍은 OcNOS 6.5.1부터, 변경 시 스트리밍은 7.0.0부터 지원합니다. 다이얼인(컬렉터가 라우터에 연결, 6.4.1부터)과 다이얼아웃(라우터가 컬렉터에 연결, 6.5.1부터) 모두에서 동작합니다.
OcNOS는 NAT 뒤에 있는 라우터로부터 텔레메트리를 스트리밍할 수 있습니까?
예. gRPC dial-out를 통해 NAT 뒤에 있는 셀 사이트 및 edge 라우터가 인바운드 포트를 전혀 열지 않고도 중앙 컬렉터로 텔레메트리를 푸시할 수 있습니다. OcNOS는 컬렉터가 장비에 접속하는 dial-in 방식도 지원합니다.
gNMI로 OcNOS에서 어떤 데이터를 스트리밍할 수 있습니까?
OpenConfig 및 네이티브 YANG 모델이 노출하는 모든 상태를 경로로 지정해 스트리밍할 수 있습니다. 센서 경로의 와일드카드 키로 모든 인터페이스나 모든 BGP 네이버처럼 테이블 전체를 한 번에 선택할 수 있으며, 샘플 간격은 구독별로 설정합니다.
OcNOS 텔레메트리와 호환되는 컬렉터는 무엇입니까?
gNMI는 개방형 사양이므로 모든 표준 gNMI 컬렉터가 OcNOS 스트림을 받을 수 있습니다. Telegraf gNMI 입력, gNMIc, 관측성 플랫폼에 내장된 컬렉터 등입니다. 이후 데이터는 다른 시계열 데이터와 마찬가지로 Prometheus, InfluxDB 또는 Grafana에 저장됩니다.