All Projects → karimra → Gnmic

karimra / Gnmic

Licence: apache-2.0
gnmic a gnmi CLI client and collector

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Gnmic

Panoptes
A Global Scale Network Telemetry Ecosystem
Stars: ✭ 80 (-23.81%)
Mutual labels:  networking, telemetry
Unifi exporter
Multiarch images for scraping Prometheus metrics from a Unifi Controller. Kubernetes / prometheus-operator compatible.
Stars: ✭ 54 (-48.57%)
Mutual labels:  networking, telemetry
Forgenetworkingremastered
In short, Forge Networking is a free and open source multiplayer game (multi-user) networking system that has a very good integration with the Unity game engine. You wanna make a multiplayer game or real time multi-user application? This is the library for you.
Stars: ✭ 1,338 (+1174.29%)
Mutual labels:  networking
Autowire
Automatically configure Wireguard interfaces in distributed system. It supports Consul as backend.
Stars: ✭ 101 (-3.81%)
Mutual labels:  networking
Gossip Python
Implementation of the gossip protocol
Stars: ✭ 100 (-4.76%)
Mutual labels:  networking
Netfil
A kernel network manager with monitoring and limiting capabilities for macOS. #nsacyber
Stars: ✭ 97 (-7.62%)
Mutual labels:  networking
Fastclick
FastClick - A faster version the Click Modular Router featuring batching, advanced multi-processing and improved Netmap and DPDK support (ANCS'15). Check the metron branch for Metron specificities (NSDI'18).
Stars: ✭ 100 (-4.76%)
Mutual labels:  networking
Libpnet
Cross-platform, low level networking using the Rust programming language.
Stars: ✭ 1,322 (+1159.05%)
Mutual labels:  networking
Gke Networking Demos
This project presents a number of best practices for establishing network links between Kubernetes Engine clusters, and exposing cluster services across Google Cloud projects. You will use a set of Deployment Manager templates to create networks, subnets, vpn connections, and Kubernetes Engine clusters.
Stars: ✭ 104 (-0.95%)
Mutual labels:  networking
Solarnetwork
Elegant network abstraction layer in Swift.
Stars: ✭ 99 (-5.71%)
Mutual labels:  networking
Windows 10 Hardening
Windows 10 hardening guide without gimmicks
Stars: ✭ 102 (-2.86%)
Mutual labels:  networking
Proxy
C++ TCP Proxy Server
Stars: ✭ 98 (-6.67%)
Mutual labels:  networking
Entitas Sync Framework
Networking framework for Entitas ECS. Targeted at turnbased games or other slow-paced genres.
Stars: ✭ 98 (-6.67%)
Mutual labels:  networking
Hover
Async network layer with Combine
Stars: ✭ 101 (-3.81%)
Mutual labels:  networking
Fast Path Lede Openwrt
PLEASE GO TO NEW OPENWRT TRUNK BASED SFE FIRMWARE ->
Stars: ✭ 96 (-8.57%)
Mutual labels:  networking
Facil.io
Your high performance web application C framework
Stars: ✭ 1,393 (+1226.67%)
Mutual labels:  networking
Udp Ue4
Convenience UDP wrapper for Unreal Engine 4
Stars: ✭ 94 (-10.48%)
Mutual labels:  networking
Applicationinsights Php
Azure Application Insights SDK for PHP
Stars: ✭ 98 (-6.67%)
Mutual labels:  telemetry
Applicationinsights Dotnet Logging
.NET Logging adaptors
Stars: ✭ 100 (-4.76%)
Mutual labels:  telemetry
Opc Ua Ooi
Object Oriented Internet - C# deliverables supporting a new Machine To Machine (M2M) communication architecture
Stars: ✭ 104 (-0.95%)
Mutual labels:  networking

github release Github all releases Go Report Doc build


gnmic (pronoun.: gee·en·em·eye·see) is a gNMI CLI client that provides full support for Capabilities, Get, Set and Subscribe RPCs with collector capabilities.

Documentation available at https://gnmic.kmrd.dev

Features

  • Full support for gNMI RPCs
    Every gNMI RPC has a corresponding command with all of the RPC options configurable by means of the local and global flags.
  • Flexible collector deployment
    gnmic can be deployed as a gNMI collector that supports multiple output types (NATS, Kafka, Prometheus, InfluxDB,...).
    The collector can be deployed either as a single instance, as part of a cluster, or used to form data pipelines.
  • gNMI data manipulation
    gnmic collector has data transformation capabilities that can be used to adapt the collected data to your specific use case.
  • Dynamic targets loading
    gnmic support target loading at runtime based on input from external systems.
  • YANG-based path suggestions
    Your CLI magically becomes a YANG browser when gnmic is executed in prompt mode. In this mode the flags that take XPATH values will get auto-suggestions based on the provided YANG modules. In other words - voodoo magic :exploding_head:
  • Multi-target operations
    Commands can operate on multiple gNMI targets for bulk configuration/retrieval/subscription.
  • Multiple configuration sources
    gnmic supports flags, environment variables as well as file based configurations.
  • Inspect raw gNMI messages
    With the prototext output format you can see the actual gNMI messages being sent/received. Its like having a gNMI looking glass!
  • (In)secure gRPC connection
    gNMI client supports both TLS and non-TLS transports so you can start using it in a lab environment without having to care about the PKI.
  • Dial-out telemetry
    The dial-out telemetry server is provided for Nokia SR OS.
  • Pre-built multi-platform binaries
    Statically linked binaries made in our release pipeline are available for major operating systems and architectures. Making installation a breeze!
  • Extensive and friendly documentation
    You won't be in need to dive into the source code to understand how gnimc works, our documentation site has you covered.

Quick start guide

Installation

sudo curl -sL https://github.com/karimra/gnmic/raw/master/install.sh | sudo bash

Capabilities request

gnmic -a 10.1.0.11:57400 -u admin -p admin --insecure capabilities

Get request

gnmic -a 10.1.0.11:57400 -u admin -p admin --insecure \
      get --path /state/system/platform

Set request

gnmic -a 10.1.0.11:57400 -u admin -p admin --insecure \
      set --update-path /configure/system/name \
          --update-value gnmic_demo

Subscribe request

gnmic -a 10.1.0.11:57400 -u admin -p admin --insecure \
      sub --path "/state/port[port-id=1/1/c1/1]/statistics/in-packets"

Prompt mode

The prompt mode is an interactive mode of the gnmic CLI client for user convenience.

# clone repository with YANG models (Openconfig example)
git clone https://github.com/openconfig/public
cd public

# Start gnmic in prompt mode and read in all the modules:

gnmic --file release/models \
      --dir third_party \
      --exclude ietf-interfaces \
      prompt
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].