Skip to main content

IP Fabric Offical Plugin for nornir

Project description

ipfabric_nornir

About

Founded in 2015, IP Fabric develops network infrastructure visibility and analytics solution to help enterprise network and security teams with network assurance and automation across multi-domain heterogeneous environments. From in-depth discovery, through graph visualization, to packet walks and complete network history, IP Fabric enables to confidently replace manual tasks necessary to handle growing network complexity driven by relentless digital transformation.

Special Thanks

This project is an IP Fabric officially supported fork of nornir_ipfabric by routetonull. Thank you for your work!

Install

The recommended way to install ipfabric_nornir is via pip

pip install ipfabric_nornir

Requirements

An instance of IP Fabric is required to collect information.

Example usage

Setup

Using environment variables

Set environment vars to provide url and credentials to connect to the IP Fabric server

export IPF_URL=https://ipfabric.local
export IPF_TOKEN=myToken

# Or Username and Password
export IPF_USER=admin
export IPF_PASSWORD=mySecretPassword

Using .env file

The easiest way to use this package is with a .env file. You can copy the sample and edit it with your environment variables.

cp sample.env .env

This contains the following variables which can also be set as environment variables instead of a .env file.

IPF_URL="https://demo3.ipfabric.io"
IPF_TOKEN=TOKEN
IPF_VERIFY=true

Or if using Username/Password:

IPF_URL="https://demo3.ipfabric.io"
IPF_USERNAME=USER
IPF_PASSWORD=PASS

Running

from nornir import InitNornir
nr = InitNornir(inventory={"plugin": "IPFabricInventory"})

Using the InitNornir function

Init

from nornir import InitNornir
nr = InitNornir(
    inventory={
        "plugin": "IPFabricInventory",
        "options": {
            "base_url": "https://ipfabric.local",
            "token": "Token",  # or "username":"admin", "password":"mySecretPassword",
            "verify": True,
            "platform_map": "netmiko",  # "netmiko" (Default), "napalm", or "genie",
            "default": {"username": "device_username", "password": "device_password"},
        },
    },
)

Using the Nornir configuration file

File config.yaml

---
inventory:
  plugin: IPFInventory
  options:
    base_url: "https://ipfabric.local"
    token: "TOKEN"
    # username: "admin"
    # password: "mySecretPassword"
    verify: true
    platform_map: netmiko  # "netmiko", "napalm", or "genie"
    default:
      username: 'device_username'
      password: 'device_password'

Usage:

from nornir import InitNornir
nr = InitNornir(config_file="config.yaml", inventory={"plugin": "IPFabricInventory"})

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ipfabric_nornir-1.0.1.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ipfabric_nornir-1.0.1-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file ipfabric_nornir-1.0.1.tar.gz.

File metadata

  • Download URL: ipfabric_nornir-1.0.1.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.0 CPython/3.9.9 Windows/10

File hashes

Hashes for ipfabric_nornir-1.0.1.tar.gz
Algorithm Hash digest
SHA256 1faf29fb0dd3c7825491a9bda0b4275b29a12f319f2ffec620ef855a7da56e58
MD5 4779eeef99f8009238dd97291b3c489a
BLAKE2b-256 60e3b62d557e4e38bf42cd6b2b628297f524b44ed4755418146cf0a9ebcb94b9

See more details on using hashes here.

File details

Details for the file ipfabric_nornir-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: ipfabric_nornir-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.0 CPython/3.9.9 Windows/10

File hashes

Hashes for ipfabric_nornir-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c7a4b18f21ebc23b285f7004346191d7ee8e9aa201b021998d59f4f83053162d
MD5 3d10b770e7df09d86f05892aa52180da
BLAKE2b-256 2ce597678c56f467e202293334167f5f958d86947783c6851f0ca981d165824a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page