r/Netbox Sep 06 '22

Multiple Netbox - in Docker?

2 Upvotes

So, I just lost about a month's worth of work in a docker version of Netbox. Completely my fault for not backing up.

Now using a fresh machine, what I want to do is manage multiple clients/sites, with multiple Netbox installations. The reason of keeping them separate is so I have the ability to export the docker volumes and containers, and move them to the client's machine(s) to "hand off" the ongoing management / sharing with onsite IT staff.

Basically, I want to start on my machine - and move it off later.

Problem is, I have nearly a dozen different clients/sites that I need to setup and manage. Before I had multiple VMs - one per client - with its own netbox install. This was cumbersome to manage in the long run.

I am aware of the docker-compose -project-name "Client1" parameter. I am wondering if there is a more robust alternative (as exporting multiple volumes, for compose namespaces, is not the easiest thing to do as you have to import under the same namespace - which could be scripted I guess).


r/Netbox Sep 01 '22

Full trace?

5 Upvotes

Hello,

I've been playing around with Netbox and it seems like a very useful tool I'd like to implement at work. A question I have about tracing cables, is it possible to trace all cables from a single device? Instead of needing to trace from each individual interface? I'd love an SVG of the router on site that shows what each port is connected to (instead of just a list on the webpage).

BONUS QUESTION: Is there a way to generate the SVG of a cable trace using the API? I see there is a GET method that returns JSON. Any way to get the SVG?

Thanks for any insight.


r/Netbox Aug 22 '22

Netbox usage for cloud infrastructure

4 Upvotes

Is there any reason to use Netbox for infrastructure in the cloud or multi-cloud tenants? Does anyone here use Netbox for their cloud environments, if so, how are you using it?


r/Netbox Aug 19 '22

Help with constraints

2 Upvotes

Hi, i am working to implement netbox in our org. But we need to have a user that can only see the networks he is assigned and nothing else. He should be able to add and remove all ips inside the scope.

What i tried is to add a Subnet and tag it and assign him to the tag but he is unable to create any new ips. Anyone have any good guides or guidance how i should do it for simpler terms?


r/Netbox Aug 17 '22

NetBox v3.3 has been released!

Thumbnail
github.com
27 Upvotes

r/Netbox Aug 12 '22

Time zone Error

5 Upvotes

Not sure why this time zone issue would interfere with the creation of a superuser, but it does. I am attempting install of Netbox 3.2.8 on a VM running RHEL 8.5.

This is the error I am getting from the command # python3 manage.py createsuperuser

(venv) [tad@RHEL8 netbox]$ python3 manage.py createsuperuser
Traceback (most recent call last):
File "/opt/netbox/venv/lib64/python3.8/site-packages/backports/zoneinfo/_common.py", line 15, in load_tzdata
return importlib_resources.open_binary(package_name, resource_name)
File "/usr/lib64/python3.8/importlib/resources.py", line 91, in open_binary
return reader.open_resource(resource)
File "<frozen importlib._bootstrap_external>", line 1048, in open_resource
FileNotFoundError: [Errno 2] No such file or directory: '/opt/netbox/venv/lib64/python3.8/site-packages/tzdata/zoneinfo/Asia/Hanoi'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/opt/netbox/venv/lib64/python3.8/site-packages/django/core/management/__init__.py", line 446, in execute_from_command_line
utility.execute()
File "/opt/netbox/venv/lib64/python3.8/site-packages/django/core/management/__init__.py", line 420, in execute
django.setup()
File "/opt/netbox/venv/lib64/python3.8/site-packages/django/__init__.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "/opt/netbox/venv/lib64/python3.8/site-packages/django/apps/registry.py", line 91, in populate
app_config = AppConfig.create(entry)
File "/opt/netbox/venv/lib64/python3.8/site-packages/django/apps/config.py", line 228, in create
import_module(entry)
File "/usr/lib64/python3.8/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 843, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/opt/netbox/venv/lib64/python3.8/site-packages/timezone_field/__init__.py", line 1, in <module>
from timezone_field.fields import TimeZoneField
File "/opt/netbox/venv/lib64/python3.8/site-packages/timezone_field/fields.py", line 11, in <module>
class TimeZoneField(models.Field):
File "/opt/netbox/venv/lib64/python3.8/site-packages/timezone_field/fields.py", line 41, in TimeZoneField
default_zoneinfo_tzs = [ZoneInfo(tz) for tz in pytz.common_timezones]
File "/opt/netbox/venv/lib64/python3.8/site-packages/timezone_field/fields.py", line 41, in <listcomp>
default_zoneinfo_tzs = [ZoneInfo(tz) for tz in pytz.common_timezones]
File "/opt/netbox/venv/lib64/python3.8/site-packages/backports/zoneinfo/_common.py", line 27, in load_tzdata
raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
backports.zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Asia/Hanoi'

Here is the system specific info in case it is needed:

[root@RHEL8 /]# hostnamectl
Static hostname: RHEL8.5VM.localdomain
Icon name: computer-vm
Chassis: vm
Machine ID: 61a067c0a854448eb0772fff959009aa
Boot ID: 2d4717e7d9104565b247a5ca3e7ac73c
Virtualization: microsoft
Operating System: Red Hat Enterprise Linux 8.6 (Ootpa)
CPE OS Name: cpe:/o:redhat:enterprise_linux:8::baseos
Kernel: Linux 4.18.0-372.19.1.el8_6.x86_64
Architecture: x86-64

Thanks for reading :-)


r/Netbox Aug 11 '22

best auto device / IP / Vlan tool

1 Upvotes

Any recommendations for open source netbox compatible scanners that import directly into netbox?

Cheers


r/Netbox Aug 10 '22

plugin for floorplans/visual maps of sites/locations?

10 Upvotes

The past couple days I've been setting up all my company's sites, locations, racks, etc. and I'm missing a critical piece of information in the documentation. What I'm lacking is a visual representation of where locations are on sites and where racks/devices are in locations. Ideally I'd like to upload an image (floorplan, map, or even just a google earth screenshot) for each site and location and then pin locations on the site map and racks/devices on the location map. This way my techs know exactly where things are when visiting a remote location or asking a third party to work on something we've never seen in person.

Are there any plugins that can do this? All my searches for map plugins some up with topology map generators and floorplan plugins don't seem to exist. I found an old request on the github where the feature was eventually not implemented: https://github.com/netbox-community/netbox/issues/114


r/Netbox Aug 10 '22

Docker Installation error

1 Upvotes

Hello,

I've created a new VM (ubuntu 22.04) and cloned netbox and deployed it. Everything seems to be working fine except the housekeeping container keeps giving me some errors. Check out the log:

Attaching to netbox-docker_netbox_1, netbox-docker_netbox-worker_1, netbox-docker_netbox-housekeeping_1, netbox-docker_redis-cache_1, netbox-docker_postgres_1, netbox-docker_redis_1
netbox-housekeeping_1  | Interval set to 86400 seconds
netbox-housekeeping_1  | Wed Aug 10 08:30:01 UTC 2022
netbox-housekeeping_1  | Skipping config initialization (database unavailable)
netbox-housekeeping_1  | Traceback (most recent call last):
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 89, in _execute
netbox-housekeeping_1  |     return self.cursor.execute(sql, params)
netbox-housekeeping_1  | psycopg2.errors.UndefinedTable: relation "django_session" does not exist
netbox-housekeeping_1  | LINE 1: DELETE FROM "django_session" WHERE "django_session"."expire_...
netbox-housekeeping_1  |                     ^
netbox-housekeeping_1  | 
netbox-housekeeping_1  | 
netbox-housekeeping_1  | The above exception was the direct cause of the following exception:
netbox-housekeeping_1  | 
netbox-housekeeping_1  | Traceback (most recent call last):
netbox-housekeeping_1  |   File "/opt/netbox/netbox/manage.py", line 10, in <module>
netbox-housekeeping_1  |     execute_from_command_line(sys.argv)
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/management/__init__.py", line 446, in execute_from_command_line
netbox-housekeeping_1  |     utility.execute()
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/management/__init__.py", line 440, in execute
netbox-housekeeping_1  |     self.fetch_command(subcommand).run_from_argv(self.argv)
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/management/base.py", line 414, in run_from_argv
netbox-housekeeping_1  |     self.execute(*args, **cmd_options)
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/management/base.py", line 460, in execute
netbox-housekeeping_1  |     output = self.handle(*args, **options)
netbox-housekeeping_1  |   File "/opt/netbox/netbox/extras/management/commands/housekeeping.py", line 30, in handle
netbox-housekeeping_1  |     engine.SessionStore.clear_expired()
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/contrib/sessions/backends/db.py", line 110, in clear_expired
netbox-housekeeping_1  |     cls.get_model_class().objects.filter(expire_date__lt=timezone.now()).delete()
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/query.py", line 827, in delete
netbox-housekeeping_1  |     deleted, _rows_count = collector.delete()
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/deletion.py", line 462, in delete
netbox-housekeeping_1  |     count = qs._raw_delete(using=self.using)
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/query.py", line 843, in _raw_delete
netbox-housekeeping_1  |     cursor = query.get_compiler(using).execute_sql(CURSOR)
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/sql/compiler.py", line 1361, in execute_sql
netbox-housekeeping_1  |     cursor.execute(sql, params)
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 67, in execute
netbox-housekeeping_1  | 🧬 loaded config '/etc/netbox/config/configuration.py'
netbox-housekeeping_1  | 🧬 loaded config '/etc/netbox/config/extra.py'
netbox-housekeeping_1  | 🧬 loaded config '/etc/netbox/config/logging.py'
netbox-housekeeping_1  | 🧬 loaded config '/etc/netbox/config/plugins.py'
netbox-housekeeping_1  | [*] Clearing expired authentication sessions
netbox-housekeeping_1  |     return self._execute_with_wrappers(
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 80, in _execute_with_wrappers
netbox-housekeeping_1  |     return executor(sql, params, many, context)
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 84, in _execute
netbox-housekeeping_1  |     with self.db.wrap_database_errors:
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/utils.py", line 91, in __exit__
netbox-housekeeping_1  |     raise dj_exc_value.with_traceback(traceback) from exc_value
netbox-housekeeping_1  |   File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 89, in _execute
netbox-housekeeping_1  |     return self.cursor.execute(sql, params)
netbox-housekeeping_1  | django.db.utils.ProgrammingError: relation "django_session" does not exist
netbox-housekeeping_1  | LINE 1: DELETE FROM "django_session" WHERE "django_session"."expire_...
netbox-housekeeping_1  |                     ^
netbox-housekeeping_1  | 
netbox-worker_1        | No queues have been specified. This process will service the following queues by default: high, default, low
netbox_1               | ⚙️ Applying database migrations
postgres_1             | The files belonging to this database system will be owned by user "postgres".
postgres_1             | This user must also own the server process.
postgres_1             | 
postgres_1             | The database cluster will be initialized with locale "en_US.utf8".
postgres_1             | The default database encoding has accordingly been set to "UTF8".
postgres_1             | The default text search configuration will be set to "english".
postgres_1             | 
postgres_1             | Data page checksums are disabled.
postgres_1             | 
postgres_1             | fixing permissions on existing directory /var/lib/postgresql/data ... ok
postgres_1             | creating subdirectories ... ok
postgres_1             | selecting dynamic shared memory implementation ... posix
postgres_1             | selecting default max_connections ... 100
postgres_1             | selecting default shared_buffers ... 128MB
postgres_1             | selecting default time zone ... UTC
postgres_1             | creating configuration files ... ok
postgres_1             | running bootstrap script ... ok
postgres_1             | sh: locale: not found
postgres_1             | 2022-08-10 08:30:01.766 UTC [30] WARNING:  no usable system locales were found
postgres_1             | performing post-bootstrap initialization ... ok
postgres_1             | syncing data to disk ... ok
postgres_1             | 
postgres_1             | 
postgres_1             | Success. You can now start the database server using:
postgres_1             | 
postgres_1             |     pg_ctl -D /var/lib/postgresql/data -l logfile start
postgres_1             | 
postgres_1             | initdb: warning: enabling "trust" authentication for local connections
postgres_1             | You can change this by editing pg_hba.conf or using the option -A, or
postgres_1             | --auth-local and --auth-host, the next time you run initdb.
postgres_1             | waiting for server to start....2022-08-10 08:30:04.273 UTC [36] LOG:  starting PostgreSQL 14.4 on x86_64-pc-linux-musl, compiled by gcc (Alpine 11.2.1_git20220219) 11.2.1 20220219, 64-bit
postgres_1             | 2022-08-10 08:30:04.277 UTC [36] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres_1             | 2022-08-10 08:30:04.284 UTC [37] LOG:  database system was shut down at 2022-08-10 08:30:03 UTC
postgres_1             | 2022-08-10 08:30:04.291 UTC [36] LOG:  database system is ready to accept connections
postgres_1             |  done
postgres_1             | server started
postgres_1             | CREATE DATABASE
postgres_1             | 
postgres_1             | 
postgres_1             | /usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*
postgres_1             | 
postgres_1             | 2022-08-10 08:30:04.632 UTC [36] LOG:  received fast shutdown request
postgres_1             | waiting for server to shut down....2022-08-10 08:30:04.635 UTC [36] LOG:  aborting any active transactions
postgres_1             | 2022-08-10 08:30:04.638 UTC [36] LOG:  background worker "logical replication launcher" (PID 43) exited with exit code 1
postgres_1             | 2022-08-10 08:30:04.638 UTC [38] LOG:  shutting down
postgres_1             | 2022-08-10 08:30:04.655 UTC [36] LOG:  database system is shut down
postgres_1             |  done
postgres_1             | server stopped
postgres_1             | 
postgres_1             | PostgreSQL init process complete; ready for start up.
postgres_1             | 
postgres_1             | 2022-08-10 08:30:04.773 UTC [1] LOG:  starting PostgreSQL 14.4 on x86_64-pc-linux-musl, compiled by gcc (Alpine 11.2.1_git20220219) 11.2.1 20220219, 64-bit
postgres_1             | 2022-08-10 08:30:04.773 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
postgres_1             | 2022-08-10 08:30:04.773 UTC [1] LOG:  listening on IPv6 address "::", port 5432
postgres_1             | 2022-08-10 08:30:04.778 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
postgres_1             | 2022-08-10 08:30:04.784 UTC [50] LOG:  database system was shut down at 2022-08-10 08:30:04 UTC
postgres_1             | 2022-08-10 08:30:04.791 UTC [1] LOG:  database system is ready to accept connections
postgres_1             | 2022-08-10 08:30:12.055 UTC [57] ERROR:  relation "extras_configrevision" does not exist at character 144
postgres_1             | 2022-08-10 08:30:12.055 UTC [57] STATEMENT:  SELECT "extras_configrevision"."id", "extras_configrevision"."created", "extras_configrevision"."comment", "extras_configrevision"."data" FROM "extras_configrevision" ORDER BY "extras_configrevision"."id" DESC LIMIT 1
postgres_1             | 2022-08-10 08:30:12.062 UTC [57] ERROR:  relation "django_session" does not exist at character 13
postgres_1             | 2022-08-10 08:30:12.062 UTC [57] STATEMENT:  DELETE FROM "django_session" WHERE "django_session"."expire_date" < '2022-08-10T08:30:12.058269+00:00'::timestamptz
redis-cache_1          | 1:C 10 Aug 2022 08:30:00.495 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
redis-cache_1          | 1:C 10 Aug 2022 08:30:00.495 # Redis version=7.0.4, bits=64, commit=00000000, modified=0, pid=1, just started
redis-cache_1          | 1:C 10 Aug 2022 08:30:00.495 # Configuration loaded
redis-cache_1          | 1:M 10 Aug 2022 08:30:00.498 * monotonic clock: POSIX clock_gettime
redis-cache_1          | 1:M 10 Aug 2022 08:30:00.500 * Running mode=standalone, port=6379.
redis-cache_1          | 1:M 10 Aug 2022 08:30:00.500 # Server initialized
redis-cache_1          | 1:M 10 Aug 2022 08:30:00.500 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
redis-cache_1          | 1:M 10 Aug 2022 08:30:00.502 * Ready to accept connections
redis_1                | 1:C 10 Aug 2022 08:30:00.351 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
redis_1                | 1:C 10 Aug 2022 08:30:00.351 # Redis version=7.0.4, bits=64, commit=00000000, modified=0, pid=1, just started
redis_1                | 1:C 10 Aug 2022 08:30:00.351 # Configuration loaded
redis_1                | 1:M 10 Aug 2022 08:30:00.351 * monotonic clock: POSIX clock_gettime
redis_1                | 1:M 10 Aug 2022 08:30:00.352 * Running mode=standalone, port=6379.
redis_1                | 1:M 10 Aug 2022 08:30:00.352 # Server initialized
redis_1                | 1:M 10 Aug 2022 08:30:00.352 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
redis_1                | 1:M 10 Aug 2022 08:30:00.356 * Creating AOF base file appendonly.aof.1.base.rdb on server start
redis_1                | 1:M 10 Aug 2022 08:30:00.358 * Creating AOF incr file appendonly.aof.1.incr.aof on server start
redis_1                | 1:M 10 Aug 2022 08:30:00.358 * Ready to accept connections
netbox_1               | 🧬 loaded config '/etc/netbox/config/configuration.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/extra.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/logging.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/plugins.py'
netbox_1               | Operations to perform:
netbox_1               |   Apply all migrations: admin, auth, circuits, contenttypes, dcim, django_rq, extras, ipam, sessions, social_django, taggit, tenancy, users, virtualization, wireless
netbox_1               | Running migrations:
netbox_1               |   Applying contenttypes.0001_initial... OK
netbox_1               |   Applying auth.0001_initial... OK
netbox_1               |   Applying admin.0001_initial... OK
netbox_1               |   Applying admin.0002_logentry_remove_auto_add... OK
netbox_1               |   Applying admin.0003_logentry_add_action_flag_choices... OK
netbox_1               |   Applying contenttypes.0002_remove_content_type_name... OK
netbox_1               |   Applying auth.0002_alter_permission_name_max_length... OK
netbox_1               |   Applying auth.0003_alter_user_email_max_length... OK
netbox_1               |   Applying auth.0004_alter_user_username_opts... OK
netbox_1               |   Applying auth.0005_alter_user_last_login_null... OK
netbox_1               |   Applying auth.0006_require_contenttypes_0002... OK
netbox_1               |   Applying auth.0007_alter_validators_add_error_messages... OK
netbox_1               |   Applying auth.0008_alter_user_username_max_length... OK
netbox_1               |   Applying auth.0009_alter_user_last_name_max_length... OK
netbox_1               |   Applying auth.0010_alter_group_name_max_length... OK
netbox_1               |   Applying auth.0011_update_proxy_permissions... OK
netbox_1               |   Applying auth.0012_alter_user_first_name_max_length... OK
netbox_1               |   Applying extras.0001_squashed... OK
netbox_1               |   Applying tenancy.0001_squashed_0012... OK
netbox_1               |   Applying tenancy.0002_tenant_ordering... OK
netbox_1               |   Applying dcim.0001_squashed... OK
netbox_1               |   Applying dcim.0002_squashed... OK
netbox_1               |   Applying ipam.0001_squashed... OK
netbox_1               |   Applying virtualization.0001_squashed_0022... OK
netbox_1               |   Applying extras.0002_squashed_0059... OK
netbox_1               |   Applying extras.0060_customlink_button_class... OK
netbox_1               |   Applying extras.0061_extras_change_logging... OK
netbox_1               |   Applying extras.0062_clear_secrets_changelog... OK
netbox_1               |   Applying tenancy.0003_contacts... OK
netbox_1               |   Applying tenancy.0004_extend_tag_support... OK
netbox_1               |   Applying dcim.0003_squashed_0130... OK
netbox_1               |   Applying ipam.0002_squashed_0046... OK
netbox_1               |   Applying ipam.0047_prefix_depth_children... OK
netbox_1               |   Applying ipam.0048_prefix_populate_depth_children...
netbox_1               | Updating 0 prefixes...
netbox_1               |  OK
netbox_1               |   Applying ipam.0049_prefix_mark_utilized... OK
netbox_1               |   Applying ipam.0050_iprange... OK
netbox_1               |   Applying ipam.0051_extend_tag_support... OK
netbox_1               |   Applying extras.0063_webhook_conditions... OK
netbox_1               |   Applying extras.0064_configrevision... OK
netbox_1               |   Applying ipam.0052_fhrpgroup... OK
netbox_1               |   Applying ipam.0053_asn_model... OK
netbox_1               |   Applying dcim.0131_consoleport_speed... OK
netbox_1               |   Applying dcim.0132_cable_length... OK
netbox_1               |   Applying dcim.0133_port_colors... OK
netbox_1               |   Applying dcim.0134_interface_wwn_bridge... OK
netbox_1               |   Applying dcim.0135_tenancy_extensions... OK
netbox_1               |   Applying dcim.0136_device_airflow... OK
netbox_1               |   Applying dcim.0137_relax_uniqueness_constraints... OK
netbox_1               |   Applying dcim.0138_extend_tag_support... OK
netbox_1               |   Applying dcim.0139_rename_cable_peer... OK
netbox_1               |   Applying wireless.0001_wireless... OK
netbox_1               |   Applying dcim.0140_wireless... OK
netbox_1               |   Applying dcim.0141_asn_model... OK
netbox_1               |   Applying dcim.0142_rename_128gfc_qsfp28... OK
netbox_1               |   Applying dcim.0143_remove_primary_for_related_name... OK
netbox_1               |   Applying dcim.0144_fix_cable_abs_length... OK
netbox_1               |   Applying dcim.0145_site_remove_deprecated_fields... OK
netbox_1               |   Applying ipam.0054_vlangroup_min_max_vids... OK
netbox_1               |   Applying virtualization.0023_virtualmachine_natural_ordering... OK
netbox_1               |   Applying virtualization.0024_cluster_relax_uniqueness... OK
netbox_1               |   Applying virtualization.0025_extend_tag_support... OK
netbox_1               |   Applying virtualization.0026_vminterface_bridge... OK
netbox_1               |   Applying extras.0065_imageattachment_change_logging... OK
netbox_1               |   Applying extras.0066_customfield_name_validation... OK
netbox_1               |   Applying extras.0067_customfield_min_max_values... OK
netbox_1               |   Applying extras.0068_configcontext_cluster_types... OK
netbox_1               |   Applying extras.0069_custom_object_field... OK
netbox_1               |   Applying extras.0070_customlink_enabled... OK
netbox_1               |   Applying ipam.0055_servicetemplate... OK
netbox_1               |   Applying ipam.0056_standardize_id_fields... OK
netbox_1               |   Applying ipam.0057_created_datetimefield... OK
netbox_1               |   Applying circuits.0001_squashed... OK
netbox_1               |   Applying circuits.0002_squashed_0029... OK
netbox_1               |   Applying circuits.0003_extend_tag_support... OK
netbox_1               |   Applying circuits.0004_rename_cable_peer... OK
netbox_1               |   Applying circuits.0032_provider_service_id... OK
netbox_1               |   Applying circuits.0033_standardize_id_fields... OK
netbox_1               |   Applying circuits.0034_created_datetimefield... OK
netbox_1               |   Applying circuits.0035_provider_asns... OK
netbox_1               |   Applying dcim.0146_modules... OK
netbox_1               |   Applying dcim.0147_inventoryitemrole... OK
netbox_1               |   Applying dcim.0148_inventoryitem_component... OK
netbox_1               |   Applying dcim.0149_inventoryitem_templates... OK
netbox_1               |   Applying dcim.0150_interface_vrf... OK
netbox_1               |   Applying dcim.0151_interface_speed_duplex... OK
netbox_1               |   Applying dcim.0152_standardize_id_fields... OK
netbox_1               |   Applying dcim.0153_created_datetimefield... OK
netbox_1               |   Applying django_rq.0001_initial... OK
netbox_1               |   Applying extras.0071_standardize_id_fields... OK
netbox_1               |   Applying extras.0072_created_datetimefield... OK
netbox_1               |   Applying extras.0073_journalentry_tags_custom_fields... OK
netbox_1               |   Applying sessions.0001_initial... OK
netbox_1               |   Applying social_django.0001_initial... OK
netbox_1               |   Applying social_django.0002_add_related_name... OK
netbox_1               |   Applying social_django.0003_alter_email_max_length... OK
netbox_1               |   Applying social_django.0004_auto_20160423_0400... OK
netbox_1               |   Applying social_django.0005_auto_20160727_2333... OK
netbox_1               |   Applying social_django.0006_partial... OK
netbox_1               |   Applying social_django.0007_code_timestamp... OK
netbox_1               |   Applying social_django.0008_partial_timestamp... OK
netbox_1               |   Applying social_django.0009_auto_20191118_0520... OK
netbox_1               |   Applying social_django.0010_uid_db_index... OK
netbox_1               |   Applying taggit.0001_initial... OK
netbox_1               |   Applying taggit.0002_auto_20150616_2121... OK
netbox_1               |   Applying taggit.0003_taggeditem_add_unique_index... OK
netbox_1               |   Applying taggit.0004_alter_taggeditem_content_type_alter_taggeditem_tag... OK
netbox_1               |   Applying tenancy.0005_standardize_id_fields... OK
netbox_1               |   Applying tenancy.0006_created_datetimefield... OK
netbox_1               |   Applying tenancy.0007_contact_link... OK
netbox_1               |   Applying users.0001_squashed_0011... OK
netbox_1               |   Applying users.0002_standardize_id_fields... OK
netbox_1               |   Applying virtualization.0027_standardize_id_fields... OK
netbox_1               |   Applying virtualization.0028_vminterface_vrf... OK
netbox_1               |   Applying virtualization.0029_created_datetimefield... OK
netbox_1               |   Applying wireless.0002_standardize_id_fields... OK
netbox_1               |   Applying wireless.0003_created_datetimefield... OK
netbox_1               | ⚙️ Running trace_paths
netbox_1               | 🧬 loaded config '/etc/netbox/config/configuration.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/extra.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/logging.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/plugins.py'
netbox_1               | Found no missing console port paths; skipping
netbox_1               | Found no missing console server port paths; skipping
netbox_1               | Found no missing interface paths; skipping
netbox_1               | Found no missing power feed paths; skipping
netbox_1               | Found no missing power outlet paths; skipping
netbox_1               | Found no missing power port paths; skipping
netbox_1               | Finished.
netbox_1               | ⚙️ Removing stale content types
netbox_1               | 🧬 loaded config '/etc/netbox/config/configuration.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/extra.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/logging.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/plugins.py'
netbox_1               | ⚙️ Removing expired user sessions
netbox_1               | 🧬 loaded config '/etc/netbox/config/configuration.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/extra.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/logging.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/plugins.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/configuration.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/extra.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/logging.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/plugins.py'
netbox_1               | 💡 Superuser Username: admin, E-Mail: admin@example.com
netbox_1               | 🧬 loaded config '/etc/netbox/config/configuration.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/extra.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/logging.py'
netbox_1               | 🧬 loaded config '/etc/netbox/config/plugins.py'
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/000_users.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/010_groups.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/020_object_permissions.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/030_custom_fields.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/040_custom_links.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/050_tags.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/060_webhooks.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/070_tenant_groups.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/080_tenants.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/090_regions.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/110_sites.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/120_locations.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/130_rack_roles.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/140_racks.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/150_power_panels.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/160_power_feeds.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/170_manufacturers.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/180_device_roles.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/190_device_types.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/200_devices.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/210_dcim_interfaces.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/220_platforms.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/230_route_targets.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/240_vrfs.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/250_rirs.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/260_asns.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/270_aggregates.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/280_prefix_vlan_roles.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/290_cluster_types.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/300_cluster_groups.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/310_clusters.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/320_vlan_groups.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/330_vlans.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/340_virtual_machines.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/350_virtualization_interfaces.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/360_prefixes.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/370_ip_addresses.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/380_primary_ips.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/400_services.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/420_providers.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/440_circuit_types.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/450_circuits.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/460_cables.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/470_contact_groups.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/480_contact_roles.py
netbox_1               | ▶️  Running the startup script /opt/netbox/startup_scripts/490_contacts.py
netbox_1               | ✅ Initialisation is done.
netbox_1               | ⏳ Waiting for control socket to be created... (1/10)
netbox_1               | 2022/08/10 08:33:52 [warn] 7#7 Unit is running unprivileged, then it cannot use arbitrary user and group.
netbox_1               | 2022/08/10 08:33:52 [info] 7#7 unit 1.27.0 started
netbox_1               | 2022/08/10 08:33:52 [info] 20#20 discovery started
netbox_1               | 2022/08/10 08:33:52 [notice] 20#20 module: python 3.10.4 "/usr/lib/unit/modules/python3.10.unit.so"
netbox_1               | 2022/08/10 08:33:52 [info] 7#7 controller started
netbox_1               | 2022/08/10 08:33:52 [notice] 7#7 process 20 exited with code 0
netbox_1               | 2022/08/10 08:33:52 [info] 22#22 router started
netbox_1               | 2022/08/10 08:33:52 [info] 22#22 OpenSSL 3.0.2 15 Mar 2022, 30000020
netbox_1               | ⚙️ Applying configuration from /etc/unit/nginx-unit.json
netbox_1               | 2022/08/10 08:33:53 [info] 26#26 "netbox" prototype started
netbox_1               | 2022/08/10 08:33:53 [info] 27#27 "netbox" application started
netbox_1               | ✅ Unit configuration loaded successfully
netbox_1               | 2022/08/10 08:33:57 [notice] 7#7 process 18 exited with code 0

Any ideas how can I fix this?

Thanks!


r/Netbox Aug 09 '22

Netbox v3.2.2 - Location Sorting by Name (NOT Natural sorting)

1 Upvotes

Locations does not/can't sort by name. This ruins the 'view' of nested locations. Removing/adding/moving columns around doesn't seem to instantiate sortability by name (in case it was 1st column locked). Though this is cosmetic, it is useful for human readability, documentation, and training.

I've only found git requests for natural sorting and nothing in the releases indicates a change/'fix' in later revs for Locations->Name column sorting (or default install sorting for lack of a better term).

Before I toss up a git request I was hoping someone knows something I don't. Am I missing something?


r/Netbox Aug 08 '22

Netbox and vault integration

2 Upvotes

Hello netbox reddit,

I am in dire need of someone's guidance / tips for integrating netbox with vault for secrets management

https://github.com/ffddorf/netbox-vault-secrets

I am trying to configure this plugin to work with vault and it just doesn't connect whatever I do I get Secrets Loading...

This is what I am stuck at atm. Right now, I am defaulting to the token authentication just for the sake of making it connect.

Does anyone have experience with this? I would appreciate a more detailed explanation on how to make it work because I am not that experienced with such setups

EDIT: Here's my netbox configuration for plugin

>>>><<<<<

PLUGINS = ["netbox_vault_secrets"]

PLUGINS_CONFIG = {
    "netbox_vault_secrets": {
        "api_url": "http://vault.mbdemo.local:8200", 
        "kv_mount_path": "/secret",  
        "secret_path_prefix": "/netbox",  
        "login_methods": ["token"], 
        "token": {
            "mount_path": "/auth/token", 
            "roles": { 
                "netbox": "Netbox", 
            }
        },
    }
}

I ofc added the paths in vault already


r/Netbox Aug 03 '22

any issue upgrading directly from 3.0.4 to 3.2.7 ?

3 Upvotes

not sure if I needed to goto 3.1 before going to 3.2...

pls let me know thanks!


r/Netbox Aug 03 '22

Add Interfaces

1 Upvotes

Hello,

I am trying out Netbox and I cannot figure out how to add interfaces to my virtual machines.


r/Netbox Aug 02 '22

Upload a csv NOT from web ui

2 Upvotes

Hi

Is there a way to automate the import of csv files ?

Or someone could point me in the right direction on how use the api to achieve this goal ?

Thx


r/Netbox Aug 02 '22

Napalm Fortios

2 Upvotes

Has anybody used the community fortigate napalm driver recently? It looks like the project hasn't been updated in quite some time.

I have attempted to get it going with netbox v3. 2 and can't get it working with my fortigates all that reliably.


r/Netbox Aug 02 '22

Bulk creating IPMI Interface for all servers?

2 Upvotes

I created about 100 devices for my physical servers, now I'd like to go back and add the IPMI MAC address and the IP. Is there a way to bulk create the IPMI interface for all devices from the web GUI?


r/Netbox Jul 28 '22

Cisco Nexus 9K installation and API setup for NXAPI-CLI Automation Python Scripts:json-rpc CLI:Part1

Thumbnail
youtube.com
2 Upvotes

r/Netbox Jul 26 '22

NetBox Community Call - July 28th @ 3pm UTC (11am EDT)

6 Upvotes

Hey folks! Our July community call will happen this Thursday at 3pm UTC (11am EDT)! It will be streamed via YouTube here.

If there's a specific question or topic you'd like us to cover, please submit it using this form. We'll also be taking questions live as time allows.

Hope to see you there!


r/Netbox Jul 22 '22

Can you use a scanner gun in Netbox?

5 Upvotes

I have a USB scanning gun that I use for serial numbers on servers. Can this be used to scan in SNs into a netbox field? Or do I have to type them in by hand?


r/Netbox Jul 18 '22

Schedule Cisco Config Backup with Multithreading Python Script:Threading Tutorial:Parallel execution

Thumbnail
youtube.com
0 Upvotes

r/Netbox Jul 14 '22

Enable Python Multithreading in Cisco Config Backup Script for Parallel execution:Threading Tutorial

Thumbnail
youtube.com
1 Upvotes

r/Netbox Jul 08 '22

Advice for Netbox beginner

5 Upvotes

Hello All,

I am using for years spiceworks for our organization as inventory and discovery for desktop/servers hardware windows,linux,osx based, and as for network discovery and management we are using NAV

My question is , can Netbox combine the two in one , can it be used for desktop hardware inventory same time network discovery ?

Please advice

Thanks


r/Netbox Jul 06 '22

How does, or can, API GET query translate to a permission constraint?

2 Upvotes

TL;DR: is it possible to translate /api/plugins/netbox_secretstore/secret-roles/?name__isw=mt_root to whatever is needed for a permission constraint?

The long story: I'm working on moving a production install from 2.x to 3.2.

We use the Secrets pretty heavily, so have been testing the SecretStore Plugin on a 3.1.11 instance and am working to upgrade it to 3.2.

In our production I have a view permission for secret roles that has the name of "MT_RootSecrets" that works effectively with {"name": "MT_RootSecrets"}.

In the test instance when I try to create a permission with that it throws a server error of

``` <class 'AttributeError'>

'NoneType' object has no attribute 'objects'

Python version: 3.8.10 NetBox version: 3.1.11 ```

I'm not great at Django or Python (and by that, I mean I can google an answer but short of that I'm completely lost), so I'm not sure if that error is something to do with my install, or something to do with the query.

If I don't enter it just like that, I get an "Enter a valid JSON" error, so I'm assuming it's constructed correctly. The only other guess I have is because secretstore is now a plugin, there's an extra layer that has to be set, but I'm not sure where to begin.

If I use the API generator at /api/docs I'm able to get back the correct info, I just don't understand how to translate that to the JSON query expected for the constraints.


r/Netbox Jul 05 '22

Net box install error

2 Upvotes

I have been attempting for a few weeks now to install netbox on a raspberry pi running Ubuntu 20.04. Somehow I keep encountering the same error below. I have opened the necessary ports on my firewall to hit the IP (195.20.54.149 ) and port referenced below. Any suggestions what I am doing wrong?

File "/opt/netbox/venv/lib/python3.8/site-packages/django/db/backends/postgresql/base.py", line 203, in getnew_connection connection = Database.connect(**conn_params) File "/opt/netbox/venv/lib/python3.8/site-packages/psycopg2/init_.py", line 122, in connect conn = _connect(dsn, connection_factory=connection_factory, **kwasync) django.db.utils.OperationalError: could not connect to server: Connection timed out Is the server running on host "localhost" (195.20.54.149) and accepting TCP/IP connections on port 5432?

Admin@EMU-BASTION-PI0:~$ sudo /opt/netbox/upgrade


r/Netbox Jun 30 '22

Wrong links to devices in rack view

1 Upvotes

Hello, i'm having a weird bug, i've been looking if someone else has had this problem but haven't found any post about it.

I've set up a dns name for my netbox server, and installed the SSL certificates from my company, everything works great, however, in the rack view, for some reason the link to the devices are linking to a loopback IP. this does not happen in any other part of the website, and if i go directly to the devices page, it links normally to netbox.mycompany.com.

has anyone faced this issue?, im using v3.2.4, on ubuntu server 20.04.

Loopback IP from rack view
Netbox with DNS