Skip to main content

NetBox plugin for application landscape mapping, KPIs, facility comparison, cascade impact simulation, and sector setup bundles

Project description

netbox-it-landscape

🇫🇷 Version française

NetBox plugin for application landscape cartography, a native integration of the it-landscape project features: business, application and flow views — plus KPI dashboards, facility comparison and a setup wizard.

Why a plugin?

The original it-landscape project runs next to NetBox (API reads + app:XXX tags). This plugin moves the cartography inside NetBox:

it-landscape concept In the plugin
Facility NetBox Site (native)
Business domain BusinessDomain model (attached to the site)
Process BusinessProcess model
Application (criticality, interfaces…) Application model — unique in the referential, attached to N processes
multiEtablissement flag Derived: an application linked to processes of several sites is multi-site
Trigram (JSON join key) Removed — replaced by real relations (FK / M2M)
Application flow (protocol, message, EAI…) ApplicationFlow model (with facility FK)
Servers linked by app:XXX tag Direct M2M relations to VM / Device

Native integration benefits: NetBox changelog and journal on every object, per-object permissions, global search, REST API + filters, custom fields, tags, and contextual panels injected on Site / VM / Device pages.

Features

  • Business view (/plugins/it-landscape/metier/): facilities → colored domains → processes → application cards with criticality and active interfaces. Detailed mode and condensed, print-friendly landscape mode.
  • Application view (/plugins/it-landscape/applicatif/): referential applications with their servers (VMs/devices), IPs and roles.
  • Flow view (/plugins/it-landscape/cartographie-flux/): filterable table (facility, interface, protocol, EAI) + source → target SVG diagram colored by interface type.
  • KPI summary (/plugins/it-landscape/synthese/): key counters, attention points (critical apps without server/monitoring…), EAI dependency, most connected applications, top vendors.
  • Facility comparison (/plugins/it-landscape/comparaison/): similarity matrix (Jaccard), already-mutualized applications, convergence opportunities (same process, different applications), facility-specific applications.
  • Cascade impact simulator (/plugins/it-landscape/cascade/simulateur/): build an incident scenario from one or more failed components (application, flow, VM, device, hosting provider) with a severity each; the impact is propagated through application flows and reported as impacted applications and processes grouped by site, blocked flows, causes and recommended actions.
  • Authentication mapping (indicator PROC-09A): each application records the authentication modes it exposes (local, local IdP delegation, Pro Santé Connect, HospiConnect banner, none), an optional primary mode, a "mapping maintained" flag and a maintenance/IdP note — the cartography required by the digital health security indicator PROC-09A (HospiConnect / HOP'EN 2). Editable in the UI and the REST API, filterable and CSV-exportable. The KPI summary derives a 0→4 maturity level per facility (maturity.proc09a_level) with an attention point on undocumented applications.
  • Setup wizard (/plugins/it-landscape/initialisation/): ready-to-use modeling bundles — Hospital IS (SIH) (admissions, EHR, pharmacy, imaging… with HL7/DICOM flows through an EAI) and Manufacturing (ERP, MES, SCADA, WMS… with OPC-UA/EDI flows through an ESB) — domain/process structure + sample applications, VLANs, VMs and flows, in one click.
  • Multilingual: English interface with a full French translation (follows the NetBox user language preference).
  • Full CRUD: domains, processes, applications, flows (forms, filters, bulk delete, changelog, journal).
  • REST API: /api/plugins/it-landscape/… (4 endpoints, filters included).
  • NetBox global search: applications, flows, domains, processes indexed.
  • Contextual panels: applications shown on VM / Device pages, cartography summary on the Site page.
  • it-landscape data import: import_it_landscape management command.

Screenshots

KPI summary

KPI summary

Condensed business landscape

Business landscape

Application view

Application view

Flow view

Flow view

Facility comparison

Facility comparison

Installation

pip install netbox-it-landscape   # or pip install -e /path/to/the/repo

In configuration.py (or /etc/netbox/config/plugins.py with netbox-docker):

PLUGINS = ["netbox_it_landscape"]

Then:

python manage.py migrate

Development with the it-landscape Docker stack

The docker-compose.override.yml file provided in the it-landscape repository mounts this plugin into the NetBox container, installs it in editable mode and enables it. From the it-landscape repository:

docker compose --profile netbox up -d --force-recreate netbox

Importing existing data

The it-landscape project JSON files (<facility>.json, <facility>.flux.json, <facility>.infra.json, trigrammes.json) can be imported in one command:

python manage.py import_it_landscape /opt/it-landscape-data --create-sites --with-infra
  • Sites are resolved by name (--create-sites creates missing ones).
  • Applications are unified by name: an application present in several facilities becomes a single multi-site record. Trigrams from the JSON files are only used as a resolution key during import.
  • --with-infra also creates the test infrastructure: VMs (vCPU, RAM, disk, eth0 interface, primary IP, app:XXX tag) from *.infra.json, VLANs, prefixes and gateways from *.network.json.
  • NetBox VMs are attached to applications via the *.infra.json files.
  • Applications referenced only by flows (EAI, monitoring…) are created in an "Out of business referential" domain.
  • The command is idempotent (safe to re-run, no duplicates).

Compatibility

  • NetBox ≥ 4.0 (tested on 4.3)
  • Python ≥ 3.10

License

MIT

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

netbox_it_landscape-0.4.0.tar.gz (76.7 kB view details)

Uploaded Source

Built Distribution

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

netbox_it_landscape-0.4.0-py3-none-any.whl (99.3 kB view details)

Uploaded Python 3

File details

Details for the file netbox_it_landscape-0.4.0.tar.gz.

File metadata

  • Download URL: netbox_it_landscape-0.4.0.tar.gz
  • Upload date:
  • Size: 76.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for netbox_it_landscape-0.4.0.tar.gz
Algorithm Hash digest
SHA256 01932ef1a47aebc6da8105af96bf3f16c85668e7bda67b8d0da3512b39d87945
MD5 99638ed7fa4879875c0deb960fedfbfd
BLAKE2b-256 aca6f50945d298dc879897f88763fb7924d99d97e6377bddbaf5f1214c012aa2

See more details on using hashes here.

Provenance

The following attestation bundles were made for netbox_it_landscape-0.4.0.tar.gz:

Publisher: publish.yml on lquastana/netbox-it-landscape

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

File details

Details for the file netbox_it_landscape-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for netbox_it_landscape-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 db1ac045ae4076da8ae1e8835f2c7e8cf5a1dbd22a462e997eb5527e3cea6eb5
MD5 9302f2c6621c18d2a0e7af4d3dc52014
BLAKE2b-256 1654bcbb7e1f0f1642d82df08a4c713b687abc21a553819deefdedbd8b6739f9

See more details on using hashes here.

Provenance

The following attestation bundles were made for netbox_it_landscape-0.4.0-py3-none-any.whl:

Publisher: publish.yml on lquastana/netbox-it-landscape

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

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