Skip to content

google/gnxi

License GoDoc Go Report Card Build Status Code coverage master

gNxI Tools

  • gNMI - gRPC Network Management Interface
  • gNOI - gRPC Network Operations Interface

A collection of tools for Network Management that use the gNMI and gNOI protocols.

Summary

Notes about these tools:

  • They are intended for testing and as reference implementation of the protocol.
  • They log to stderr by default, disable with -logtostderr=false.
  • They use glog's log levels, use -v 1 to log proto message exchanges.

gNMI Clients:

gNMI Targets:

gNOI Clients

gNOI Targets

Helpers

Documentation

Getting Started

These instructions will get you a copy of the project up and running on your local machine.

Prerequisites

Install go in your system https://golang.org/doc/install. Requires golang1.14+.

Download sources

go get github.com/google/gnxi ls $GOPATH/src/github.com/google/gnxi 

Building and installing binaries

cd $GOPATH mkdir bin # This reads the go modules dependencies for installation cd src/github.com/google/gnxi go install ./... ls -la $GOPATH/bin 

Generating certificates

cd $GOPATH/bin ./../src/github.com/google/gnxi/certs/generate.sh 

Running a client

cd $GOPATH/bin ./gnoi_reset \ -target_addr localhost:9339 \ -target_name target.com \ -rollback_os \ -zero_fill \ -key client.key \ -cert client.crt \ -ca ca.crt 

Optionally define $GOBIN as $GOPATH/bin and add it to your path to run the binaries from any folder.

export GOBIN=$GOPATH/bin export PATH=$PATH:$GOBIN 

Disclaimer