4. 设备与设备类型管理
在 NetBox 的数据模型中,设备(Device)并不是孤立存在的记录,它必须挂接到一个设备类型(Device Type)上,而设备类型又归属于某个制造商(Manufacturer)。设备角色(Device Role)和平台(Platform)则分别描述设备在网络中的功能定位与操作系统/软件环境。序列号(Serial)和资产标签(Asset Tag)是设备实例层面的唯一标识,用于与物理资产、采购系统和运维工单对齐。理解这六个对象之间的依赖关系,是正确录入和批量维护的前提。
一、对象依赖关系与录入顺序
NetBox 的外键约束决定了录入顺序不能随意颠倒。制造商是设备类型的必填外键,设备类型是设备的必填外键,因此必须先有制造商,再有设备类型,最后才能创建设备。设备角色和平台虽然也是设备的外键字段,但它们是独立字典表,可以在任意时间创建,只要在创建设备之前存在即可。序列号和资产标签是设备自身的字段,不涉及外键,但它们的唯一性约束会影响批量导入时的冲突判断。
二、设备类型与制造商的实际录入
制造商字段通常只需填写名称和可选的 Slug。Slug 是 URL 友好的短标识,建议使用小写字母和连字符,例如 cisco、huawei、h3c。设备类型则需要更完整的参数:制造商、型号(Model)、高度(U 数)、接口模板、电源端口模板等。以一台 1U 机架式服务器为例,可以创建如下设备类型:
制造商: Dell
型号: PowerEdge R750
高度: 1U
接口模板: 2×10GE SFP+ + 4×1GE RJ45
电源端口: 2×C13
接口模板和电源端口模板是设备类型层面的“蓝图”,当设备被创建并选择该类型时,NetBox 会自动生成对应的接口和电源端口记录。这意味着设备类型定义得越准确,后续设备录入时手工补录的工作量就越小。如果同一型号存在不同配置(例如 R750 有 8 盘位和 16 盘位版本),建议创建两个设备类型,而不是在设备层面手工调整接口。
三、设备角色与平台的规划
设备角色描述设备在网络中的功能定位,常见角色包括:核心交换机、汇聚交换机、接入交换机、边界路由器、防火墙、负载均衡器、物理服务器、虚拟化宿主机、存储设备、带外管理交换机等。角色名称应保持简洁且互斥,避免出现“核心交换机”和“核心交换”两个含义相同的角色。角色还可以设置颜色,在机架视图和拓扑图中用于快速区分设备类型。
平台字段描述设备运行的操作系统或软件环境,例如 Cisco IOS-XE、Huawei VRP、Linux、VMware ESXi。平台可以与制造商关联,也可以独立存在。平台在 NetBox 中还有一个重要作用:它可以作为配置模板(Config Template)的关联对象,后续实现配置备份和合规检查时,平台决定了使用哪套解析规则。因此平台命名应尽量与实际的 OS 版本族对齐,而不是笼统地写“交换机系统”。
四、序列号与资产标签的录入策略
序列号通常来自设备厂商,具有全局唯一性;资产标签来自企业内部资产管理系统,也具有唯一性。NetBox 允许这两个字段为空,但在工程实践中建议至少保证序列号非空,因为它是设备与厂商保修、RMA 流程对接的关键字段。资产标签则用于与 CMDB、财务固定资产系统对齐。
录入时需要注意两个约束:第一,序列号在 NetBox 中默认不强制全局唯一,但可以通过自定义校验或脚本实现唯一性检查;第二,资产标签如果启用唯一性约束,批量导入时重复值会导致整行失败。建议在批量导入前先用表格工具对序列号和资产标签列做去重检查。
五、批量维护的实操方法
NetBox 提供了 CSV 批量导入功能,入口在设备列表页的“Import”按钮。批量导入设备时,CSV 表头需要包含以下关键列:
name,device_role,device_type,platform,serial,asset_tag,site,rack,position,face,status
sw-core-01,核心交换机,Cisco Catalyst 9500,Cisco IOS-XE,FOC2345X0AB,AST-2024-001,上海数据中心,A01,42,front,active
sw-core-02,核心交换机,Cisco Catalyst 9500,Cisco IOS-XE,FOC2345X0AC,AST-2024-002,上海数据中心,A01,41,front,active
导入时,NetBox 会按名称匹配设备角色、设备类型、平台、站点和机架。如果某个名称不存在,该行会报错并跳过。因此批量导入前必须确保所有外键对象已经存在。对于设备类型,如果 CSV 中写的是“Cisco Catalyst 9500”,则 NetBox 中必须存在同名的设备类型记录,且该记录已关联到 Cisco 制造商。
批量修改已有设备时,可以使用“Bulk Edit”功能选中多台设备后统一修改角色、平台、状态或站点。但序列号和资产标签通常不建议批量修改,因为它们与物理设备一一对应,批量覆盖容易造成资产数据错乱。如果确实需要批量更新序列号,建议先导出当前数据,在表格中核对后再通过 CSV 导入更新,并保留操作前的导出文件作为回滚依据。
最后,设备录入完成后,建议立即检查三个一致性:设备类型与制造商是否匹配、设备角色是否与实际网络功能一致、序列号是否与设备标签一致。这三项检查可以通过 NetBox 的筛选视图快速完成,也可以导出 CSV 后在表格中比对。对于规模较大的网络,建议将设备录入与机架规划、IP 地址分配同步进行,避免设备已上架但 NetBox 中缺少位置或管理 IP 的情况。