Routing

 View Only
last person joined: 2 days ago 

Ask questions and share experiences about ACX Series, CTP Series, MX Series, PTX Series, SSR Series, JRR Series, and all things routing, including portfolios and protocols.
  • 1.  GNMI support on JUNOS

    Posted 14 days ago

    Did anyone have any luck getting GNMI running on JUNOS?

    I'm trying with vRouter, version 25.2R1.9, with the following config:

    set system services http servers server GNMI port 57400
    
    set system services http servers server GNMI grpc gnmi
    
    set system services http servers server GNMI grpc all-grpc

    The only openconfig path I can query is "/juniper" and that returns the running config, but there is no telemetry data. I tried enabling analytics sensors but it doesn't change anything.

    Cisco and Arista expose a lot of data in GNMI by default so I wonder if there is some special command on Juniper to fully enable GNMI.



    ------------------------------
    DMYTRO SHYPOVALOV
    ------------------------------


  • 2.  RE: GNMI support on JUNOS

    Posted 11 days ago

    An update on this:  JUNOS returns telemetry via GNMI but only if via .subscribe(); via .get() you can get only running config. I was trying only .get(); because other vendors (Cisco, Arista) return identical data via .get() and .subscribe() so I assumed Juniper would do as well.



    ------------------------------
    DMYTRO SHYPOVALOV
    ------------------------------



  • 3.  RE: GNMI support on JUNOS

    Posted 9 days ago

    Greetings.

    Yes, gRPC based telemetry has been around our network for some time. Your configuration below needs to be adjusted, though.

    Security wise, these settings are not worse than SNMPv2. TLS encryption and authentication are also possible to be deployed. Adjust VRF (or use GRT) and listening address, as needed. clear-text has been hidden since 21.1 or something.

    HTH

     

    # show system services extension-service

    request-response {

        grpc {

            clear-text {

                address 0.0.0.0;

                port 57400;

            }

            max-connections 30;

            routing-instance mgmt_junos;

            skip-authentication;

        }

    }

     

    Best e-gards, 

    Georgi Sinapov 

    Core Network Architect

     






  • 4.  RE: GNMI support on JUNOS

    Posted 9 days ago

    The config I posted is fine, it's just that JUNOS is not fully compatible with GNMI specification so it returns the telemetry only to a subscribe() request but not to get() request. JUNOS also throws errors if the QoS field is present so I had to patch the pygnmi client to make it work.



    ------------------------------
    DMYTRO SHYPOVALOV
    ------------------------------



  • 5.  RE: GNMI support on JUNOS

    Posted 9 days ago

    I'm not sure what happened here. I replied to your post on Monday and then it appeared shortly after. But then it was gone and here it is again. Anyway.

    There are two YANG models, any vendor, ever – operational and config. With GET you referrer to the second one and request type MUST be clearly identified. As well as XPath, as it happens often, they MIGHT be different between YANG models.

    Here it is, how it works.

     

    $ gnmic --address ra11.oob --port 57400 --insecure get --encoding json_ietf --type CONFIG --path "juniper:/interfaces" | head -10

    [

      {

        "source": "ra11.oob",

        "timestamp": 1767974477775759192,

        "time": "2026-01-09T17:01:17.775759192+01:00",

        "updates": [

          {

            "Path": "juniper:interfaces",

            "values": {

              "interfaces": {

     

    Best e-gards, 

    Georgi Sinapov 

    Core Network Architect