TJ CSL
  • TJ CSL
  • Services
    • Ion
      • Development
        • Overview
        • Setup
          • Docker Setup
          • Vagrant Setup
        • Environment
        • Fixtures
        • PR Workflow
        • Style Guide
        • Maintainer Workflow
        • Repository Maintenance
        • Data Generation
      • Production
      • User Experience
        • User Interface
    • Director
      • Development
        • Vagrant Setup
        • PR Workflow
        • Style Guide
        • Maintainer Workflow
      • Production
    • Workstations
    • Signage
      • Setup
      • Administration
      • Monitoring
      • Troubleshooting
      • Experimental
        • IonTap
        • SignageAdmin
    • Remote Access
      • Setup
      • Administration
    • Cluster
      • FAQ
      • Setup
        • SSH Setup
      • Administration
      • Slurm
      • Slurm Administration
      • Borg
    • Printing
      • Setup
      • Troubleshooting
    • WWW
      • Administration
      • Sites
        • Web Proxy
      • Setup
      • Troubleshooting
    • Academic Services
      • Tin
      • Othello
        • Administration
        • Setup
  • Technologies
    • Web
      • Nginx
      • Django
      • PHP-FPM
      • Node.js
      • Supervisord
    • DBs
      • PostgreSQL
      • MySQL
    • Authentication
      • Passcard
        • GPG Usage
      • SSHD
        • SSH Passwordless Login
      • FreeIPA
    • Storage
      • NFS
      • Ceph
        • Setup
        • Backups
        • CephFS
    • Operating Systems
      • Ubuntu Server
      • AlmaLinux
      • Debian
    • Tools
      • Ansible
      • Slack
      • GitBook
      • GitLab
        • Setup
        • Updating
    • Virtualization
      • QEMU/KVM
      • Libvirt
    • Advanced Computing
      • MPI
      • Tensorflow
    • Networking
      • Netbox
      • Cisco
      • Netboot
      • DNS
      • DHCP
      • NTP
      • BGP
    • Mail
      • Postfix
      • Dovecot
    • Monitoring
      • Prometheus
      • Grafana
      • Sentry
      • Uptime Robot
  • Machines
    • VM Servers
      • Utonium
      • Blossom
      • Bubbles
      • Buttercup
      • Antipodes
      • Chatham
      • Cocos
      • Galapagos
      • Gandalf
      • Gorgona
      • Overlord
      • Waverider
      • Torch
    • Ceph
      • Karel
      • Stobar
      • Wumpus
      • Waitaha
      • Barrel
      • Valdes
    • HPC Cluster
      • Zoidberg
    • Borg Cluster
    • Compute Sticks
    • Other
      • ASM
      • Duke
      • Snowy
      • Sauron
      • Sun Servers
        • Altair
        • Centauri
        • Deneb
        • Sirius
        • Vega
        • Betelgeuse
        • Ohare
    • Switches
      • Core0
      • Xnor
      • Xor
      • Imply
    • UPS
    • History
      • 2008 Sun AEG
      • 2011 Sun Upgrades
      • 2017 VM Disaster
      • 2018 Purchases
      • 2018 Cephpocalypse
    • VLANs
    • Remote Management
      • iLO
      • LOMs
    • Understudy
      • Switch Configuration
      • Server Configuration
        • Setting Up the Operating System
        • Network Configuration
        • Saruman
        • Fiordland
  • General
    • Sysadmins List
    • Organization
    • Documentation
      • Security
      • Runbooks
    • Communication
      • Terminology
    • Understudies
    • Account Structure
    • Machine Room
    • Branding
    • History
      • Fridge
      • The Brick
  • Procedures
    • Data Recovery
    • Account Provisioning
    • tjSTAR
      • Tech Support
    • Onboarding
      • New Sysadmin Onboarding
  • Guides
    • VM Creation
    • sshuttle Usage
    • Linux Wifi Setup
    • VNC Usage
    • Password Changes
    • Sun Server RAID Configuration
  • Policies
    • Data Release Policy
    • Upgrade Policy
    • Account Policy
    • Election Policy
  • Obsolete
    • Arcturus
    • Chuku
    • Cray SV1 Supercomputer
    • Ekhi
    • Mihr
    • Moloch
    • Sol
    • Rockhopper
    • Kerberos
    • LDAP
    • Agni
    • Moon
    • Apocalypse
    • AFS
      • OpenAFS
      • Setup
      • Client Setup
      • Administration
      • Troubleshooting
      • Directory Structure
      • Backups
      • Cross-Cell Authentication
    • Observium
    • OpenVPN
Powered by GitBook
On this page
  • Installation
  • Upgrading Netbox
  • Using Netbox
  • Creating User Accounts
  • Interacting with Netbox
  1. Technologies
  2. Networking

Netbox

PreviousNetworkingNextCisco

Last updated 1 year ago

Netbox is an Django application that is designed to help manage and document networks and the devices on those networks. In the CSL we use it to document each machine and VM along with their network configurations.

Installation

Netbox consists of 4 parts:

  1. PostgreSQL database

  2. Redis

  3. Netbox Django Application

  4. HTTP Proxy and Daemon

Basic installation instructions are . The netbox Ansible playbook properly installs and configures everything as well.

Upgrading Netbox

Netbox graciously created an upgrade script that automatically upgrades the current installation. Just ssh into netbox and run the following:

/opt/netbox/upgrade.sh

Once the script finishes, make sure to restart the supervisordaemons:

supervisorctl restart netbox
supervisorctl restart netbox-rqworker

Using Netbox

Creating User Accounts

Netbox has SSO support. Use that to log in.

Interacting with Netbox

  • The highest order of organization is a region, it represents the physical area where the network is (TJHSST , CSL).

  • Next there are sites, they represent the specific area in the region that divides the network (Machine Room, Room 200, Room 200C, etc.).

  • Each site can have racks, which represent a physical server rack (only used in the Machine Room site)

  • devices are the next organizational unit. devices are NOT VMs. devices can belong to a rack(in the case of servers), or they can be independent (in the case of workstations).

  • devices have interfaces which can be assigned an ip.

    • Creating interfaces and ips is not obvious, though.

      1. First you have to create a device

      2. then on that device's overview page, click the "Add Components" dropdown and select "Interfaces".

      3. Then fill out the information for that interface.

      4. Finally, when the interface is created, scroll to the bottom of the device's overview page and click the green "+" box and add an ip there.

You can access the netbox web page at , but you MUST be VPN'ed into the CSL in order to access the website.

Using netbox is pretty straightforward; navigating through the web page is pretty intuitive. More specific documentation on netbox is available , but here are a few basics:

It is much easier to mass create devices through netbox's API, available at . In order to use the API, however, you must first create an API token .

Some (messy) scripts that were used to bulk create the borg devices and workstations are available at

open-source
here
https://netbox.tjhsst.edu
here
https://netbox.tjhsst.edu/api
here
https://gitlab.tjhsst.edu/sysadmins/docs/netbox-scripts.git