Skip to main content

Diode NetBox Plugin

The Diode NetBox plugin is a NetBox plugin. It is a required component of the Diode ingestion service.

Diode is a NetBox ingestion service that greatly simplifies and enhances the process to add and update network data in NetBox, ensuring your network source of truth is always accurate and can be trusted to power your network automation pipelines.

More information about Diode can be found at https://netboxlabs.com/blog/introducing-diode-streamlining-data-ingestion-in-netbox/.

Compatibility

NetBox Version Plugin Version
>= 3.7.2 0.1.0
>= 4.1.0 0.4.0
>= 4.2.3 1.0.0
>= 4.2.3 1.1.0
>= 4.2.3 1.2.0
>= 4.4.0 1.4.0
>= 4.4.0 1.4.1
>= 4.4.10 1.7.0
>= 4.5.0 1.7.0
>= 4.6.0 1.12.0

Installation

Source the NetBox Python virtual environment:

cd /opt/netbox
source venv/bin/activate

Install the plugin:

pip install netboxlabs-diode-netbox-plugin

In your NetBox configuration.py file, add netbox_diode_plugin to the PLUGINS list.

PLUGINS = [
    "netbox_diode_plugin",
]

Also in your configuration.py file, in order to customise the plugin settings, add netbox_diode_pluginto the PLUGINS_CONFIG dictionary, e.g.:

PLUGINS_CONFIG = {
    "netbox_diode_plugin": {
        # Diode gRPC target for communication with Diode server
        "diode_target_override": "grpc://localhost:8080/diode",

        # Username associated with changes applied via plugin
        "diode_username": "diode",

        # netbox-to-diode client_secret created during diode bootstrap.
        "netbox_to_diode_client_secret": "..."
    },
}

If you are running diode locally via the quickstart, the netbox-to-diode client_secret may be found in /path/to/diode/oauth2/client/client-credentials.json. eg:

echo $(jq -r '.[] | select(.client_id == "netbox-to-diode") | .client_secret' /path/to/diode/oauth2/client/client-credentials.json)

Note: Once you customise usernames with PLUGINS_CONFIG during first installation, you should not change or remove them later on. Doing so will cause the plugin to stop working properly.

Restart NetBox services to load the plugin:

sudo systemctl restart netbox netbox-rq

See NetBox Documentation for details.

Configuration

Source the NetBox Python virtual environment (if not already):

cd /opt/netbox
source venv/bin/activate

Run migrations to create all necessary resources:

cd /opt/netbox/netbox
./manage.py migrate netbox_diode_plugin

Running Tests

make docker-compose-netbox-plugin-test

Generating Documentation

Generates documentation on how diode entities are matched. The generated documentation is output to here.

make docker-compose-generate-matching-docs

License

Distributed under the NetBox Limited Use License 1.0. See LICENSE.md for more information.

Required Notice

Copyright NetBox Labs, Inc.

Download files

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

Source Distribution

netboxlabs_diode_netbox_plugin-1.16.0.tar.gz (159.7 kB view details)

Uploaded Source

File details

Details for the file netboxlabs_diode_netbox_plugin-1.16.0.tar.gz.

File metadata

File hashes

Hashes for netboxlabs_diode_netbox_plugin-1.16.0.tar.gz
Algorithm Hash digest
SHA256 4ade227fede9deadf16042f298c70d2f2d128198c061937f6329e794deae956b
MD5 189aaee59c2d9c96c6d8ffbb66f31c61
BLAKE2b-256 63ac682ebcfde310e3e7f4a46d379c6c0bb7d538227b4ff9054d8f54f1dcce90

See more details on using hashes here.

Provenance

The following attestation bundles were made for netboxlabs_diode_netbox_plugin-1.16.0.tar.gz:

Publisher: release.yaml on netboxlabs/diode-netbox-plugin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.17.0

1 file

This release

1.16.0 This release

1 file

1.15.0

1 file

1.14.1

1 file

1.14.0

1 file

1.13.0

1 file

1.12.0

1 file

1.11.0

1 file

1.10.0

1 file

1.9.0

1 file

1.8.0

1 file

1.7.1

1 file

1.7.0

1 file

1.6.0

1 file

1.5.1

1 file

1.5.0

1 file

1.4.1

1 file

1.4.0

1 file

1.3.1

1 file

1.3.0

1 file

1.2.1

1 file

1.2.0

1 file

1.1.0

1 file

1.0.1

1 file

1.0.0

1 file

0.6.0

1 file

0.5.1

1 file

0.5.0

1 file

0.4.1

1 file

0.4.0

1 file

0.3.0

1 file

0.2.1

1 file

0.2.0

1 file

0.1.0

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page