mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
Move data model definitions to separate hierarchy
This commit is contained in:
@ -1,10 +0,0 @@
|
||||
# Circuits
|
||||
|
||||
{!models/circuits/provider.md!}
|
||||
{!models/circuits/providernetwork.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/circuits/circuit.md!}
|
||||
{!models/circuits/circuittype.md!}
|
||||
{!models/circuits/circuittermination.md!}
|
@ -1,5 +0,0 @@
|
||||
# Contacts
|
||||
|
||||
{!models/tenancy/contact.md!}
|
||||
{!models/tenancy/contactgroup.md!}
|
||||
{!models/tenancy/contactrole.md!}
|
@ -1,41 +0,0 @@
|
||||
# Device Types
|
||||
|
||||
{!models/dcim/devicetype.md!}
|
||||
{!models/dcim/manufacturer.md!}
|
||||
|
||||
---
|
||||
|
||||
## Device Component Templates
|
||||
|
||||
Each device type is assigned a number of component templates which define the physical components within a device. These are:
|
||||
|
||||
* Console ports
|
||||
* Console server ports
|
||||
* Power ports
|
||||
* Power outlets
|
||||
* Network interfaces
|
||||
* Front ports
|
||||
* Rear ports
|
||||
* Device bays (which house child devices)
|
||||
|
||||
Whenever a new device is created, its components are automatically created per the templates assigned to its device type. For example, a Juniper EX4300-48T device type might have the following component templates defined:
|
||||
|
||||
* One template for a console port ("Console")
|
||||
* Two templates for power ports ("PSU0" and "PSU1")
|
||||
* 48 templates for 1GE interfaces ("ge-0/0/0" through "ge-0/0/47")
|
||||
* Four templates for 10GE interfaces ("xe-0/2/0" through "xe-0/2/3")
|
||||
|
||||
Once component templates have been created, every new device that you create as an instance of this type will automatically be assigned each of the components listed above.
|
||||
|
||||
!!! note
|
||||
Assignment of components from templates occurs only at the time of device creation. If you modify the templates of a device type, it will not affect devices which have already been created. However, you always have the option of adding, modifying, or deleting components on existing devices.
|
||||
|
||||
{!models/dcim/consoleporttemplate.md!}
|
||||
{!models/dcim/consoleserverporttemplate.md!}
|
||||
{!models/dcim/powerporttemplate.md!}
|
||||
{!models/dcim/poweroutlettemplate.md!}
|
||||
{!models/dcim/interfacetemplate.md!}
|
||||
{!models/dcim/frontporttemplate.md!}
|
||||
{!models/dcim/rearporttemplate.md!}
|
||||
{!models/dcim/modulebaytemplate.md!}
|
||||
{!models/dcim/devicebaytemplate.md!}
|
@ -1,40 +0,0 @@
|
||||
# Devices and Cabling
|
||||
|
||||
{!models/dcim/device.md!}
|
||||
{!models/dcim/devicerole.md!}
|
||||
{!models/dcim/platform.md!}
|
||||
|
||||
---
|
||||
|
||||
## Device Components
|
||||
|
||||
Device components represent discrete objects within a device which are used to terminate cables, house child devices, or track resources.
|
||||
|
||||
{!models/dcim/consoleport.md!}
|
||||
{!models/dcim/consoleserverport.md!}
|
||||
{!models/dcim/powerport.md!}
|
||||
{!models/dcim/poweroutlet.md!}
|
||||
{!models/dcim/interface.md!}
|
||||
{!models/dcim/frontport.md!}
|
||||
{!models/dcim/rearport.md!}
|
||||
{!models/dcim/modulebay.md!}
|
||||
{!models/dcim/devicebay.md!}
|
||||
{!models/dcim/inventoryitem.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/dcim/virtualchassis.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/dcim/cable.md!}
|
||||
|
||||
In the example below, three individual cables comprise a path between devices A and D:
|
||||
|
||||

|
||||
|
||||
Traced from Interface 1 on Device A, NetBox will show the following path:
|
||||
|
||||
* Cable 1: Interface 1 to Front Port 1
|
||||
* Cable 2: Rear Port 1 to Rear Port 2
|
||||
* Cable 3: Front Port 2 to Interface 2
|
@ -1,33 +0,0 @@
|
||||
# IP Address Management
|
||||
|
||||
{!models/ipam/aggregate.md!}
|
||||
{!models/ipam/rir.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/ipam/prefix.md!}
|
||||
{!models/ipam/role.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/ipam/iprange.md!}
|
||||
{!models/ipam/ipaddress.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/ipam/vrf.md!}
|
||||
{!models/ipam/routetarget.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/ipam/fhrpgroup.md!}
|
||||
{!models/ipam/fhrpgroupassignment.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/ipam/asn.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/ipam/l2vpn.md!}
|
||||
{!models/ipam/l2vpntermination.md!}
|
@ -1,4 +0,0 @@
|
||||
# Modules
|
||||
|
||||
{!models/dcim/moduletype.md!}
|
||||
{!models/dcim/module.md!}
|
@ -1,8 +0,0 @@
|
||||
# Power Tracking
|
||||
|
||||
{!models/dcim/powerpanel.md!}
|
||||
{!models/dcim/powerfeed.md!}
|
||||
|
||||
# Example Power Topology
|
||||
|
||||

|
@ -1,4 +0,0 @@
|
||||
# Service Mapping
|
||||
|
||||
{!models/ipam/servicetemplate.md!}
|
||||
{!models/ipam/service.md!}
|
@ -1,12 +0,0 @@
|
||||
# Sites and Racks
|
||||
|
||||
{!models/dcim/region.md!}
|
||||
{!models/dcim/sitegroup.md!}
|
||||
{!models/dcim/site.md!}
|
||||
{!models/dcim/location.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/dcim/rack.md!}
|
||||
{!models/dcim/rackrole.md!}
|
||||
{!models/dcim/rackreservation.md!}
|
@ -1,4 +0,0 @@
|
||||
# Tenancy Assignment
|
||||
|
||||
{!models/tenancy/tenant.md!}
|
||||
{!models/tenancy/tenantgroup.md!}
|
@ -1,10 +0,0 @@
|
||||
# Virtualization
|
||||
|
||||
{!models/virtualization/cluster.md!}
|
||||
{!models/virtualization/clustertype.md!}
|
||||
{!models/virtualization/clustergroup.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/virtualization/virtualmachine.md!}
|
||||
{!models/virtualization/vminterface.md!}
|
@ -1,4 +0,0 @@
|
||||
# VLAN Management
|
||||
|
||||
{!models/ipam/vlan.md!}
|
||||
{!models/ipam/vlangroup.md!}
|
@ -1,8 +0,0 @@
|
||||
# Wireless Networks
|
||||
|
||||
{!models/wireless/wirelesslan.md!}
|
||||
{!models/wireless/wirelesslangroup.md!}
|
||||
|
||||
---
|
||||
|
||||
{!models/wireless/wirelesslink.md!}
|
@ -1,55 +0,0 @@
|
||||
# Migrating to systemd
|
||||
|
||||
This document contains instructions for migrating from a legacy NetBox deployment using [supervisor](http://supervisord.org/) to a systemd-based approach.
|
||||
|
||||
## Ubuntu
|
||||
|
||||
### Uninstall supervisord
|
||||
|
||||
```no-highlight
|
||||
# apt-get remove -y supervisor
|
||||
```
|
||||
|
||||
### Configure systemd
|
||||
|
||||
!!! note
|
||||
These instructions assume the presence of a Python virtual environment at `/opt/netbox/venv`. If you have not created this environment, please refer to the [installation instructions](3-netbox.md#set-up-python-environment) for direction.
|
||||
|
||||
We'll use systemd to control the daemonization of NetBox services. First, copy `contrib/netbox.service` and `contrib/netbox-rq.service` to the `/etc/systemd/system/` directory:
|
||||
|
||||
```no-highlight
|
||||
# cp contrib/*.service /etc/systemd/system/
|
||||
```
|
||||
|
||||
!!! note
|
||||
You may need to modify the user that the systemd service runs as. Please verify the user for httpd on your specific release and edit both files to match your httpd service under user and group. The username could be "nobody", "nginx", "apache", "www-data", or something else.
|
||||
|
||||
Then, start the `netbox` and `netbox-rq` services and enable them to initiate at boot time:
|
||||
|
||||
```no-highlight
|
||||
# systemctl daemon-reload
|
||||
# systemctl start netbox netbox-rq
|
||||
# systemctl enable netbox netbox-rq
|
||||
```
|
||||
|
||||
You can use the command `systemctl status netbox` to verify that the WSGI service is running:
|
||||
|
||||
```
|
||||
# systemctl status netbox.service
|
||||
● netbox.service - NetBox WSGI Service
|
||||
Loaded: loaded (/etc/systemd/system/netbox.service; enabled; vendor preset: enabled)
|
||||
Active: active (running) since Sat 2020-10-24 19:23:40 UTC; 25s ago
|
||||
Docs: https://docs.netbox.dev/
|
||||
Main PID: 11993 (gunicorn)
|
||||
Tasks: 6 (limit: 2362)
|
||||
CGroup: /system.slice/netbox.service
|
||||
├─11993 /opt/netbox/venv/bin/python3 /opt/netbox/venv/bin/gunicorn --pid /var/tmp/netbox.pid --pythonpath /opt/netbox/...
|
||||
├─12015 /opt/netbox/venv/bin/python3 /opt/netbox/venv/bin/gunicorn --pid /var/tmp/netbox.pid --pythonpath /opt/netbox/...
|
||||
├─12016 /opt/netbox/venv/bin/python3 /opt/netbox/venv/bin/gunicorn --pid /var/tmp/netbox.pid --pythonpath /opt/netbox/...
|
||||
...
|
||||
```
|
||||
|
||||
At this point, you should be able to connect to the HTTP service at the server name or IP address you provided. If you are unable to connect, check that the nginx service is running and properly configured. If you receive a 502 (bad gateway) error, this indicates that gunicorn is misconfigured or not running. Issue the command `journalctl -xe` to see why the services were unable to start.
|
||||
|
||||
!!! info
|
||||
Please keep in mind that the configurations provided here are bare minimums required to get NetBox up and running. You may want to make adjustments to better suit your production environment.
|
101
mkdocs.yml
101
mkdocs.yml
@ -58,7 +58,7 @@ markdown_extensions:
|
||||
alternate_style: true
|
||||
nav:
|
||||
- Introduction: 'introduction.md'
|
||||
- Installation:
|
||||
- Installation & Upgrade:
|
||||
- Installing NetBox: 'installation/index.md'
|
||||
- 1. PostgreSQL: 'installation/1-postgresql.md'
|
||||
- 2. Redis: 'installation/2-redis.md'
|
||||
@ -67,7 +67,6 @@ nav:
|
||||
- 5. HTTP Server: 'installation/5-http-server.md'
|
||||
- 6. LDAP (Optional): 'installation/6-ldap.md'
|
||||
- Upgrading NetBox: 'installation/upgrading.md'
|
||||
- Migrating to systemd: 'installation/migrating-to-systemd.md'
|
||||
- Configuration:
|
||||
- Configuring NetBox: 'configuration/index.md'
|
||||
- Required Settings: 'configuration/required-settings.md'
|
||||
@ -75,20 +74,6 @@ nav:
|
||||
- Dynamic Settings: 'configuration/dynamic-settings.md'
|
||||
- Error Reporting: 'configuration/error-reporting.md'
|
||||
- Remote Authentication: 'configuration/remote-authentication.md'
|
||||
- Core Functionality:
|
||||
- IP Address Management: 'core-functionality/ipam.md'
|
||||
- VLAN Management: 'core-functionality/vlans.md'
|
||||
- Sites and Racks: 'core-functionality/sites-and-racks.md'
|
||||
- Devices and Cabling: 'core-functionality/devices.md'
|
||||
- Device Types: 'core-functionality/device-types.md'
|
||||
- Modules: 'core-functionality/modules.md'
|
||||
- Virtualization: 'core-functionality/virtualization.md'
|
||||
- Service Mapping: 'core-functionality/services.md'
|
||||
- Circuits: 'core-functionality/circuits.md'
|
||||
- Wireless: 'core-functionality/wireless.md'
|
||||
- Power Tracking: 'core-functionality/power.md'
|
||||
- Tenancy: 'core-functionality/tenancy.md'
|
||||
- Contacts: 'core-functionality/contacts.md'
|
||||
- Customization:
|
||||
- Custom Fields: 'customization/custom-fields.md'
|
||||
- Custom Validation: 'customization/custom-validation.md'
|
||||
@ -135,6 +120,90 @@ nav:
|
||||
- Authentication: 'rest-api/authentication.md'
|
||||
- GraphQL API:
|
||||
- Overview: 'graphql-api/overview.md'
|
||||
- Data Model:
|
||||
- Circuits:
|
||||
- Circuit: 'models/circuits/circuit.md'
|
||||
- Circuit Termination: 'models/circuits/circuittermination.md'
|
||||
- Circuit Type: 'models/circuits/circuittype.md'
|
||||
- Provider: 'models/circuits/provider.md'
|
||||
- Provider Network: 'models/circuits/providernetwork.md'
|
||||
- DCIM:
|
||||
- Cable: 'models/dcim/cable.md'
|
||||
- CablePath: 'models/dcim/cablepath.md'
|
||||
- CableTermination: 'models/dcim/cabletermination.md'
|
||||
- ConsolePort: 'models/dcim/consoleport.md'
|
||||
- ConsolePortTemplate: 'models/dcim/consoleporttemplate.md'
|
||||
- ConsoleServerPort: 'models/dcim/consoleserverport.md'
|
||||
- ConsoleServerPortTemplate: 'models/dcim/consoleserverporttemplate.md'
|
||||
- Device: 'models/dcim/device.md'
|
||||
- DeviceBay: 'models/dcim/devicebay.md'
|
||||
- DeviceBayTemplate: 'models/dcim/devicebaytemplate.md'
|
||||
- DeviceRole: 'models/dcim/devicerole.md'
|
||||
- DeviceType: 'models/dcim/devicetype.md'
|
||||
- FrontPort: 'models/dcim/frontport.md'
|
||||
- FrontPortTemplate: 'models/dcim/frontporttemplate.md'
|
||||
- Interface: 'models/dcim/interface.md'
|
||||
- InterfaceTemplate: 'models/dcim/interfacetemplate.md'
|
||||
- InventoryItem: 'models/dcim/inventoryitem.md'
|
||||
- InventoryItemRole: 'models/dcim/inventoryitemrole.md'
|
||||
- InventoryItemTemplate: 'models/dcim/inventoryitemtemplate.md'
|
||||
- Location: 'models/dcim/location.md'
|
||||
- Manufacturer: 'models/dcim/manufacturer.md'
|
||||
- Module: 'models/dcim/module.md'
|
||||
- ModuleBay: 'models/dcim/modulebay.md'
|
||||
- ModuleBayTemplate: 'models/dcim/modulebaytemplate.md'
|
||||
- ModuleType: 'models/dcim/moduletype.md'
|
||||
- Platform: 'models/dcim/platform.md'
|
||||
- PowerFeed: 'models/dcim/powerfeed.md'
|
||||
- PowerOutlet: 'models/dcim/poweroutlet.md'
|
||||
- PowerOutletTemplate: 'models/dcim/poweroutlettemplate.md'
|
||||
- PowerPanel: 'models/dcim/powerpanel.md'
|
||||
- PowerPort: 'models/dcim/powerport.md'
|
||||
- PowerPortTemplate: 'models/dcim/powerporttemplate.md'
|
||||
- Rack: 'models/dcim/rack.md'
|
||||
- RackReservation: 'models/dcim/rackreservation.md'
|
||||
- RackRole: 'models/dcim/rackrole.md'
|
||||
- RearPort: 'models/dcim/rearport.md'
|
||||
- RearPortTemplate: 'models/dcim/rearporttemplate.md'
|
||||
- Region: 'models/dcim/region.md'
|
||||
- Site: 'models/dcim/site.md'
|
||||
- SiteGroup: 'models/dcim/sitegroup.md'
|
||||
- VirtualChassis: 'models/dcim/virtualchassis.md'
|
||||
- IPAM:
|
||||
- ASN: 'models/ipam/asn.md'
|
||||
- Aggregate: 'models/ipam/aggregate.md'
|
||||
- FHRPGroup: 'models/ipam/fhrpgroup.md'
|
||||
- FHRPGroupAssignment: 'models/ipam/fhrpgroupassignment.md'
|
||||
- IPAddress: 'models/ipam/ipaddress.md'
|
||||
- IPRange: 'models/ipam/iprange.md'
|
||||
- L2VPN: 'models/ipam/l2vpn.md'
|
||||
- L2VPNTermination: 'models/ipam/l2vpntermination.md'
|
||||
- Prefix: 'models/ipam/prefix.md'
|
||||
- RIR: 'models/ipam/rir.md'
|
||||
- Role: 'models/ipam/role.md'
|
||||
- RouteTarget: 'models/ipam/routetarget.md'
|
||||
- Service: 'models/ipam/service.md'
|
||||
- ServiceTemplate: 'models/ipam/servicetemplate.md'
|
||||
- VLAN: 'models/ipam/vlan.md'
|
||||
- VLANGroup: 'models/ipam/vlangroup.md'
|
||||
- VRF: 'models/ipam/vrf.md'
|
||||
- Tenancy:
|
||||
- Contact: 'models/tenancy/contact.md'
|
||||
- ContactAssignment: 'models/tenancy/contactassignment.md'
|
||||
- ContactGroup: 'models/tenancy/contactgroup.md'
|
||||
- ContactRole: 'models/tenancy/contactrole.md'
|
||||
- Tenant: 'models/tenancy/tenant.md'
|
||||
- TenantGroup: 'models/tenancy/tenantgroup.md'
|
||||
- Virtualization:
|
||||
- Cluster: 'models/virtualization/cluster.md'
|
||||
- ClusterGroup: 'models/virtualization/clustergroup.md'
|
||||
- ClusterType: 'models/virtualization/clustertype.md'
|
||||
- VMInterface: 'models/virtualization/vminterface.md'
|
||||
- VirtualMachine: 'models/virtualization/virtualmachine.md'
|
||||
- Wireless:
|
||||
- WirelessLAN: 'models/wireless/wirelesslan.md'
|
||||
- WirelessLANGroup: 'models/wireless/wirelesslangroup.md'
|
||||
- WirelessLink: 'models/wireless/wirelesslink.md'
|
||||
- Reference:
|
||||
- Conditions: 'reference/conditions.md'
|
||||
- Markdown: 'reference/markdown.md'
|
||||
|
Reference in New Issue
Block a user