Open Source Tool Automates IT Inventory

Two IT experts explain the benefits of NetBox, a rising open source data center infrastructure management and internet protocol address management tool that creates a central, searchable inventory of network devices and infrastructure into a single source of truth.

By Tom Mangan

By Tom Mangan July 8, 2022

Today’s elaborate IT ecosystems make it tough to answer the most basic question: What’s on the company network?

It’s so much more than racks, servers and switches. From virtual machines to sensors to API orchestration. The growing complexity can become mind-bending.

An open-source inventory app called NetBox is allowing more IT people, especially network admins, to bring order to this chaos. The Wikimedia Foundation, which runs Wikipedia — the free online encyclopedia, created, edited and verified by volunteers around the world — uses NetBox as the data center infrastructure management (DCIM) and internet protocol address management (IPAM) tool. The Wikimedia IT team also uses the tool as an integration point for switch and port management, DNS management and similar operations.

NetBox enables a way to create a single point of truth that breaks down data silos, according to Danko Trajkovic, Nutanix’s manager of network operations. It lays the groundwork for advanced automation by making system infrastructure data easy to find and verify. IT decision makers will be dealing with these issues day in and day out in the 2020s.

The Forecast interviewed Trajkoviic and Eric Pearce, an IT systems architect at Nutanix, to understand the appeal of NetBox and how it’s helping their IT team.

A Truthful Solution to an Everyday IT Problem

IT professionals turn to a variety of tools to inventory their IT environments.

“Traditionally, they used tools like Excel, Confluence or Racktables,” Trajkovic said. 

A spreadsheet could inventory everything in an IT environment — racks, wireless devices, IP addresses, virtual machines and everything else. But IT people also need to process inventory data and share it with users around the globe.

That requires better technology: a database that makes inventory data searchable, reliable and available to anybody who needs it. NetBox is that kind of tool, according to Trajkovic. It reflects the efforts of an open-source community that sprang up to develop an easy-to-use inventory database.

NetBox’s documentation states precisely what it does — and, more importantly, what it doesn’t do. The app’s database takes inventory of all IT assets, breaking them out by categories. It does not provide DNS or RADIUS servers, network monitoring, or configuration/facilities management.

However, “NetBox can be used to great effect in populating external tools with the data they need to perform these functions,” the documentation states. As Trajkovic puts it: “It doesn't automate — it enables automation.”

Related

The Race to Hybrid Multicloud Interoperability

NetBox also creates a standard framework for inventory data, streamlining the process of automating network operations. It also establishes a source of truth for all assets in an IT environment. That helps break down silos built up over years because different IT groups had the equivalent of small databases in those spreadsheets and text documents.

“The central database allows anybody to make a query of any other group’s data,” Pearce said. “Finally, we have a single place to put everything, where every group can pull data or add data. That's a game-changer for me.”

Proving the Value of Open Source

Trajkovic and Pearce agree that the NetBox represents the key advantages of open-source software.

“There’s always a concern with open source about support and the health of the ecosystem,” Pearce said. That’s not an issue with NetBox: “Participation is growing. You can just tell there's a real hive of activity around it,” he added.

New features get added regularly, Trajkovic said, because there’s a global community of developers trying to solve similar problems. It’s not unusual to request new features and have them show up within a few months — which could take years with commercial enterprise software.

“It's great to have a community this big that's doing the same thing you're trying to do,” Trajkovic said.

Examples of NetBox in Action

Trajkovic praised NetBox’s reporting tools.

“In minutes, we can create a report to tell us which devices or circuits are expiring in this quarter and that we need to renew them,” he said.

The software can show the devices that require upgrades and then update the database automatically.

“And now the inventory is aware of the new version you're running,” Trajkovic said.

Related

4 Database Automation Innovations to Turbocharge DevOps

Pearce cites the use case of running SmartNet service agreements for Cisco devices at enterprise scale.

“Imagine you had thousands of those scattered all over the world,” he said.

When it’s time to renew those agreements, IT people need to know the status of every device — the serial numbers, production status, rack locations and so on. A centralized database makes it easy to gather that data, verify it and apply automation where it makes the most sense.

It’s also good for tracking down security vulnerabilities. Reporting can reveal the affected devices and their IP addresses. When zero-day alerts come in, NetBox can answer the central question: Where are the susceptible assets?

“We need to fix that immediately,” Pearce added.  “Without an accurate, up-to-the-minute inventory, it’s almost impossible to answer that question quickly without a lot of manual digging.”

Getting Started With NetBox

Trajkovic said that NetBox is not particularly difficult to implement for people with IT training.

“Out of the box, you’ll get about 90 percent-plus of the capabilities to document a modern IT infrastructure,” Trajkovic said. “And what's not in there, you can make on your own.” 

The NetBox community also has developed an extensive plugin framework that expands functionality.

Related

Putting the Agile Manifesto into DevOps Action

Python scripting knowledge and DevOps methodologies are essential to generating reports based on automated database queries. Experience with APIs like REST will also make it easier to connect the app to other technologies.

In the first phase of the Netbox implementation, the Nutanix IT Networking team coded multiple "crawlers" that remove the need to input the data manually into Netbox. Crawlers poll assets such as Nutanix nodes, virtual machines (VMs), network devices and physical connections then sync this data into NetBox. Once in NetBox, the data can then be queried by other automation to do software version reporting, capacity management, contract renewals and other functions. These crawler scripts keep NetBox data up to date and accurate.

In the second phase, the IT team looks at "infrastructure as code" in that NetBox contains the "desired state." External automation queries NetBox and makes whatever changes are needed to the infrastructure in order to have it match this desired state.

Simple NetBox instances can be set in a few minutes, but IT people would be much better off starting out at the app’s demo page, which includes sample configurations for devices, virtual machines, circuits and much more.

“While checking out the demos, think where you keep your current inventory, how it stacks against the available models in Netbox, and what would be the best way for you to transition it into Netbox, as this will not be a trivial task,” Trajkovic said.

Related

Putting the Agile Manifesto into DevOps Action

Indeed, there is a substantial volume of up-front work in developing effective NetBox models and inputting the data from everything on the network. But this effort pays off in the long run with the ability to sort, categorize and query the database. 

It’s important to remember that software updates could break scripts automating the import of network device data. The NetBox team gives plenty of notice about upgrades that might cause problems. Even so, people writing Python scripts, for instance, need to anticipate the need to tweak their code.

“Create test cases for the code you're writing,” Trajkovic said. “When there is an upgrade to perform, you can run your tests against the new version and have an easy way to determine if your code still works or, if not, which portions need to be adjusted.”

A Better Way to Share Network Data

Pearce said it feels like a major breakthrough to have a centralized, searchable inventory database. After all, the people responsible for data often have an instinctive reluctance to share it.

“I've worked in a lot of different companies where it was very hard to find this kind of information,” he said. There’s nothing like being able to discover where every device is, how it’s configured and whether it’s running — and feeling certain the information is reliable. “That's huge for me because I’ve spent so much of my career fighting for access to data.”

For Trajkovic, it comes down to having the optimum tool for the job: “Netbox is not the first open-source product to attempt to create and maintain a digital inventory of IT assets — but in my opinion, it is currently the best one.”

Tom Mangan is a contributing writer. He is a veteran B2B technology writer and editor, specializing in cloud computing and digital transformation. Contact him on his website or LinkedIn.

© 2022 Nutanix, Inc. All rights reserved. For additional legal information, please go here.