Commit 8eb83045 authored by Lluis Gifre Renom's avatar Lluis Gifre Renom
Browse files

Merge branch 'develop' of https://labs.etsi.org/rep/tfs/controller into feat/device-perf-eval

parents a6e99e6c c4e95de0
Loading
Loading
Loading
Loading
+38 −0
Original line number Diff line number Diff line
@@ -262,5 +262,43 @@ Service b8c99e2c-39d8-424d-9833-554634269555 deleted
(mock-osm) exit
Bye!

############
# gNMI
############

## Download and install the latest release
$ sudo bash -c "$(curl -sL https://get.containerlab.dev)“

## Deploy proposed two SR node scenario
$ cd tfs-ctrl/hackfest/gnmi
$ sudo containerlab deploy -t srlinux.clab.yml

## Access SR Bash
$ docker exec -it clab-srlinux-srl1 bash

## Acess SR CLI
$ docker exec -it clab-srlinux-srl1 sr_cli

## Destroy scenario
$ sudo containerlab destroy --topo srlinux.clab.yml

## Install gNMIc
$ sudo bash -c "$(curl -sL https://get-gnmic.kmrd.dev)"

## gNMI Capabilities request
$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify capabilities

## gNMI Get request
$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path /system/name/host-name
$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path /interface[name=mgmt0]

## gNMI Set request
$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --update-path /system/name/host-name --update-value slr11

(we check the changed value) 
$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path /system/name/host-name 

## Subscribe request
$ gnmic -a clab-srlinux-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf subscribe --path /interface[name=mgmt0]/statistics
(In another terminal, you can generate traffic) 
$ssh admin@clab-srlinux-srl1

hackfest/gnmi/.gitkeep

0 → 100644
+0 −0

Empty file added.

hackfest/gnmi/commands.txt

deleted100644 → 0
+0 −17
Original line number Diff line number Diff line
== GNMI
$ cd /usr/share/gocode/src/ 
$ export GOPATH=/usr/share/gocode/
$ go run github.com/openconfig/ygot/generator/generator.go -generate_fakeroot -output_file github.com/google/gnxi/gnmi/modeldata/gostruct/generated.go -package_name gostruct github.com/rvilalta/OFC_SC472/yang/topology.yang 
$ cd /usr/share/gocode/src/github.com/google/gnxi/gnmi_target
$ go run gnmi_target.go -bind_address :10161 -config ~/tfs-ctrl/hackfest/gnmi/topology.json --notls -alsologtostderr

RUN CLIENT (in another window)
$ export GOPATH=/usr/share/gocode/
$ cd /usr/share/gocode/src/github.com/google/gnxi/gnmi_get
$ go run gnmi_get.go -notls -xpath "/topology/" -target_addr localhost:10161 -alsologtostderr 
$ go run gnmi_get.go -notls -xpath "/topology/node[node-id=A]" -target_addr localhost:10161 -alsologtostderr

USE PYTHON CLIENT
$ cd /usr/share/gocode/src/github.com/google/gnxi/gnmi_cli_py
$ python py_gnmicli.py -n -m get -t localhost -p 10161 -x /topology -u foo -pass bar
+15 −0
Original line number Diff line number Diff line
# file: sonic.clab.yml
name: sonic-vs

topology:
  nodes:
    srl1:
      kind: sonic-vs
      image: docker-sonic-vs
    srl2:
      kind: sonic-vs
      image: docker-sonic-vs

  links:
    - endpoints: ["srl1:e1-1", "srl2:e1-1"]

hackfest/gnmi/topology.json

deleted100644 → 0
+0 −8
Original line number Diff line number Diff line
{
  "topology" : {
     "node" : [
       { "node-id" : "A" , "port" : [ { "port-id" : "portA1" } ] },
       { "node-id" : "B" , "port" : [ { "port-id" : "portB1" } ] }
     ]
  }
}
Loading