Coder Social home page Coder Social logo

nitzan-tz / py-metric-collector Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dgarros/py-metric-collector

0.0 1.0 0.0 183 KB

Python Collector for Metrics data from Network devices (Juniper/F5)

Dockerfile 0.25% Makefile 0.17% Python 99.58%

py-metric-collector's Introduction

status stable

Stable Release : v0.1.3

The Netconf Collector is a tool to collect information in Junos devices over Netconf.
This tool was initially part of OpenNTI, the goal of this project is to create a standalone version.

Features:

  • Supports Junos via Netconf and F5 Devices via iControl REST API
  • Scheduler support: Periodic data collection and dumping to influxdb via telegraf

How to give it a try

You will need a running docker host and docker-compose to launch the test stack.

1- Define your devices parameters

Initialize lab-xxx-hosts.yaml & lab-xxx-credentials.yaml with the information corresponding to your device Credentials and hosts file must be in "quickstart" folder. File starting with "lab" are .gitignored to prevent you from leaking sensible topology or security informations.

Hosts files

File format will be :

device1:
  tags: [ junos, router ]
  address: 192.168.0.1
  context:
    - site: sitea
    - role: router

device2:
  tags: [ junos, switch ]
  address: 192.168.0.2
  context:
    - site: siteb
    - role: switch

device3:
  tags: [ junos ]
  address: 192.168.0.3

Keep in mind that tags are going to make the glue between hosts files, credentials and commands files.

Credentials files

If you use ssh key based authentication, use this format :

lab_credentials:
    username: root
    method: key
    key_file: keys/private-key
    tags: juniper

If you use user and password, use this format :

lab_credentials:
    username: root
    password: <password>
    method: password
    key_file:
    tags: juniper

2- Launch the docker-compose stack

Pass the hosts, and credentials through ENV variables at the runtime so they keep safe

% CREDENTIALS=lab0-credentials.yaml HOSTS=lab0-hosts.yaml docker-compose up

3- Open Grafana

Open a browser and go to http://0.0.0.0:3000, use "admin / admin " as login / password and you can start building nice dashboards.

py-metric-collector's People

Contributors

dgarros avatar fdebonneval avatar mayuresh82 avatar nitzan-tz avatar psagrera avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.