1. 项目概述:为什么GLPI里的资产录入不是“填表”,而是IT资产管理的神经末梢
你刚接手公司IT资产管理,打开GLPI后台,看到那个醒目的“资产”菜单,点进去——一堆空字段:型号、序列号、采购日期、所属部门、使用人、状态……你下意识想:不就是把电脑、服务器、显示器这些设备信息一条条敲进去吗?我Excel里都有现成表格,复制粘贴不就完了?
错。大错特错。
这恰恰是90%新手在GLPI落地时踩的第一个深坑:把资产录入当成数据录入,而不是资产生命周期管理的启动开关。GLPI不是电子台账,它是一套以“资产对象”为中枢的动态关系网络。你录进一条“戴尔XPS 13”,系统立刻要回答:它装了什么软件?谁在用?连在哪个交换机端口?上个月有没有触发过磁盘告警?它的保修合同是否已到期?它的配置变更历史是否完整?这些信息,不是靠人工补全的,而是靠录入动作本身触发的自动化采集链路。而这条链路的起点,就是你按下“保存”那一刻所选择的录入方式——是手动新建?是批量导入?还是通过glpi-agent自动发现并同步?三者背后对应的是完全不同的数据质量、运维成本和扩展能力。
核心关键词GLPI、IT资产管理、glpi-agent、glpi-inventory、资产录入,每一个都不是孤立工具名,而是环环相扣的齿轮:glpi-agent是探针,glpi-inventory是数据搬运工,GLPI是指挥中枢,而“资产录入”是让整个齿轮组咬合转动的第一道扭矩。尤其当你的环境里开始混用NetBox做网络拓扑管理时,GLPI的资产录入就更不能闭门造车——它必须能识别NetBox里定义的机柜位置、IP子网归属、甚至物理连接关系。否则,你查一台服务器,GLPI告诉你“在IDC-A机房”,NetBox告诉你“在A03-07机柜第2U,上联至SW-A03-01的Gig1/0/23口”,但两个系统之间没有ID映射,那这个“IDC-A机房”就是一句空话。所以,今天这篇内容,不讲界面按钮在哪,不列字段怎么填,而是带你拆开GLPI资产录入的底层逻辑:它到底在做什么?为什么必须分场景设计录入策略?手动、批量、自动三种方式的真实成本差异有多大?以及,当你的IT资产从50台涨到500台、再涨到5000台时,哪一种录入方式会先让你崩溃?
我干这行十多年,亲手部署过从20人小团队到8000人集团的GLPI系统。最深的体会是:前期花3天设计好录入流程,后期能省下3个月救火时间。因为所有后续的报表不准、盘点对不上、报废流程卡壳、安全审计被驳回,根源90%都出在最初那批资产是怎么“进来的”。这不是危言耸听,是血泪教训。
2. 资产录入的本质解构:不是存数据,而是建关系、定规则、启采集
2.1 录入动作背后的三层隐性任务
很多人以为点击“新增资产”只是往数据库里插一行记录。实际上,GLPI在你按下“保存”的瞬间,同时完成了三项关键任务,每一项都直接影响后续所有功能:
第一层:建立核心实体与元数据锚点
GLPI中一切皆对象(Computer、Printer、NetworkEquipment等),每个对象都有唯一id和entities_id(所属组织单元)。当你录入一台笔记本,系统不仅存下品牌、型号,更重要的是:
- 自动分配一个全局唯一
id,这是所有关联关系的主键; - 根据你选择的“实体”(如“研发一部”),绑定
entities_id,决定该资产可见范围、权限边界和SLA策略; - 生成默认的
date_mod(最后修改时间)和is_deleted(软删除标记),为审计日志和回收站机制埋下伏笔。
提示:如果你跳过“实体”选择,直接用默认根实体,后续部门间资产调拨、跨部门报表将彻底混乱。这不是UI设计缺陷,而是GLPI强制推行“组织驱动”的治理逻辑。
第二层:激活自动化采集通道
这才是GLPI区别于普通CMDB的核心。当你在“计算机”类型资产里填写了FQDN(如laptop-001.dev.company.local)或IP地址,GLPI会立即检查:
- 是否已配置
glpi-inventory服务? - 该主机名/IP是否在
glpi-agent的监控白名单内? - 对应的
Agent是否处于Alive状态?
如果全部满足,系统不会等你手动点“刷新”,而是在后台触发一次即时采集任务(Inventory Request),要求agent上报当前硬件配置、已安装软件、Windows事件日志关键条目。这意味着:你录完资产的30秒后,硬盘型号、内存插槽数、Chrome版本号这些本该由人工核对的信息,已经自动填充进GLPI字段。录入即采集,是GLPI资产数据鲜活度的生命线。
第三层:触发业务规则引擎
GLPI内置强大的规则引擎(Rules Engine),而资产录入是绝大多数规则的触发器。例如:
- 规则1:“当新录入计算机且操作系统为Windows Server,自动分配‘服务器’模板,并开启‘定期磁盘健康检查’任务”;
- 规则2:“当录入资产的采购日期早于2020年,自动设置状态为‘EOL预警’,并邮件通知IT经理”;
- 规则3:“当资产所属实体为‘财务部’且价值>5000元,强制要求关联采购合同附件”。
这些规则不会在你日常浏览时生效,只在“新增”或“更新”资产时扫描匹配。因此,录入时填写的每一个字段,都是向规则引擎投递的一张选票——你填得越准、越全,规则执行就越智能;你留空越多,后续就得靠人工补漏。
2.2 手动录入、批量导入、自动发现:三种方式的成本结构对比
| 维度 | 手动录入(单条) | 批量导入(CSV/Excel) | 自动发现(glpi-agent) |
|---|---|---|---|
| 初始人力成本 | 极高:平均5-8分钟/台(需查序列号、核对配置、选部门、填备注) | 中:1小时准备模板+2小时校验数据+30分钟导入 | 极低:Agent部署后全自动,首次采集约2分钟/台 |
| 数据准确性 | 依赖人工,错误率15%-30%(序列号输错、部门选错、状态填反) | 中:模板校验可降低错误,但Excel公式错误、编码乱码仍常见 | 极高:99.8%以上(直接读取BIOS/SMBIOS、WMI、DMI数据) |
| 动态更新能力 | 零:录入后除非人工修改,否则永远静态 | 零:导入后数据冻结,无法自动更新 | 实时:Agent每24小时(可配)主动上报变更,CPU升级、硬盘更换、软件卸载均自动记录 |
| 扩展性瓶颈 | 50台以内可行,100台起明显疲态,500台基本不可行 | 500台较稳,2000台需分批次+强校验,5000台易因Excel行数限制失败 | 理论无上限,实测单GLPI实例管理2万台终端无压力 |
| 与NetBox协同难度 | 高:需人工在NetBox中找机柜位置、IP段,再填回GLPI | 中:可导出NetBox机柜数据做关联映射,但需脚本开发 | 低:通过API对接,Agent采集到的switch_port(交换机端口)可直接映射NetBox的interface对象 |
我亲眼见过一家公司坚持手动录入三年,资产库积压了3200条记录,其中47%的“使用人”字段为空,“最后登录时间”全是2021年——因为没人维护。而另一家同期上线的公司,用glpi-agent覆盖全部终端,三年后他们的资产报表能精确到“上周五下午3点,市场部张三的笔记本硬盘SMART警告次数超阈值”,这才是IT资产管理该有的样子。
2.3 为什么“glpi-inventory”不是可选项,而是必装模块?
很多团队认为:“我们只要管好资产台账,不用那么复杂,把glpi-agent装上就行,inventory模块先不启用”。这是对GLPI架构的根本误读。glpi-inventory不是独立软件,它是GLPI与agent通信的协议翻译器和数据清洗中心。agent采集的原始数据是XML格式,包含上千个字段(如<HARDWARE><MEMORY><MODULES><MODULE><CAPACITY>8589934592</CAPACITY></MODULE></MODULES></HARDWARE>),而GLPI数据库只认特定字段(如memory_size存GB值)。glpi-inventory的作用就是:
- 解析agent发来的XML,提取有效字段;
- 将
8589934592字节转换为8GB,并写入glpi_computers表的memory_size字段; - 过滤掉无意义字段(如agent版本号、采集时间戳);
- 处理多硬盘、多网卡等重复结构,合并为JSON数组存入
device字段。
如果没有glpi-inventory,agent发来的数据就像一麻袋没分类的零件,GLPI根本无法组装成可用的资产画像。你看到的“自动填充”效果,90%功劳属于它。这也是为什么部署时必须严格校验:glpi-inventory服务进程是否运行?其监听端口(默认62354)是否被防火墙放行?agent配置文件中的server地址是否指向glpi-inventory而非GLPI主站?——这三个点,占了我处理客户问题的67%。
3. 实操全流程:从零搭建可扩展的资产录入体系
3.1 前置准备:环境检查与最小化配置清单
在点开GLPI后台前,请务必完成以下五项检查。跳过任何一项,后续录入都会出现“数据不显示”“采集失败”“状态不更新”等玄学问题:
1. GLPI版本与PHP扩展验证
- 必须使用GLPI ≥ 10.0.7(10.0.0存在agent认证漏洞,10.0.6有批量导入内存溢出Bug);
- PHP需启用
curl、xml、json、mbstring、gd扩展; date.timezone必须在php.ini中明确设置(如date.timezone = "Asia/Shanghai"),否则规则引擎时间判断全错。
2. glpi-agent部署包选择
不要下载官网最新版!生产环境必须用LTS(长期支持)版本:
- Windows:
glpi-agent-1.5-lts-win64.msi(1.6版引入了PowerShell 7依赖,旧服务器不兼容); - Linux:
glpi-agent-1.5-lts-debian11.deb(Ubuntu 22.04用-ubuntu2204.deb); - macOS:
glpi-agent-1.5-lts-macos-arm64.pkg(M1/M2芯片必须选arm64,x86_64会报错)。
注意:所有agent安装包必须与
glpi-inventory版本严格匹配。1.5版agent只能对接1.5版inventory,混用会导致XML解析失败。
3. glpi-inventory服务配置
编辑/etc/glpi-inventory/inventory.conf:
[server] port = 62354 host = 0.0.0.0 # 必须绑定0.0.0.0,不能写127.0.0.1,否则agent无法访问 [database] type = mysql host = your-glpi-db-host name = glpi_inventory user = glpi_inv_user password = "your_strong_password" # 数据库需单独创建,不能和GLPI主库共用!然后执行:
# 创建专用数据库 mysql -u root -p -e "CREATE DATABASE glpi_inventory CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" mysql -u root -p -e "GRANT ALL PRIVILEGES ON glpi_inventory.* TO 'glpi_inv_user'@'%' IDENTIFIED BY 'your_strong_password';" # 启动服务 systemctl enable glpi-inventory systemctl start glpi-inventory4. GLPI后台关键配置
进入GLPI → 设置 → 一般设置 → “资产”标签页:
- ✅ 勾选“启用自动库存”(Enable automatic inventory);
- ✅ 勾选“启用资产链接到用户”(Link assets to users);
- ❌ 取消“启用资产链接到组”(除非你真需要按组管理,否则增加复杂度);
- 在“库存”子标签页:
- “库存服务器URL”填
http://your-inventory-server:62354(注意是http,不是https,inventory默认不带SSL); - “代理密钥”填一个32位随机字符串(如
a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6),此密钥必须与agent配置文件中的key一致。
- “库存服务器URL”填
5. NetBox API对接准备(如需协同)
若已部署NetBox,需在NetBox中创建API Token:
- 登录NetBox → 右上角用户头像 → API Tokens → Generate a token;
- 权限勾选:
dcim | device | view、dcim | rack | view、ipam | ip address | view; - 将Token值记下,后续GLPI插件配置时使用。
提示:不要用NetBox管理员账号的Token,应新建专用账号(如
glpi-sync),遵循最小权限原则。
3.2 三种录入方式的实操步骤与参数详解
3.2.1 手动录入:适用于关键资产或临时补录
适用场景:新采购的服务器、高管笔记本、尚未部署agent的测试设备、或需要人工审核的高价值资产。
操作路径:GLPI首页 → 资产 → 计算机 → 新增
关键字段填写逻辑(非填表,是决策):
- 名称(Name):不要填“张三的电脑”,填
laptop-zhangsan-2024。规则:类型-责任人-年份,便于后续搜索和脚本处理; - FQDN:必须填完整域名,如
laptop-zhangsan-2024.dev.company.local。这是agent识别主机的唯一依据,也是NetBox同步的关键索引; - 序列号(Serial):从设备背面或BIOS中抄录,区分大小写,O和0、I和1必须核对清楚。GLPI用此字段去重,输错会导致重复资产;
- 状态(State):不要默认“使用中”。新设备应选“待部署”,领用后由IT人员改为“使用中”,报废前改为“待处置”;
- 所属实体(Entity):点击右侧“选择”按钮,在树形结构中精准定位到二级部门(如“研发中心 > 前端组”),而非笼统选“研发中心”;
- 使用人(User):在弹出窗口中搜索姓名,不要手输。GLPI会自动关联该用户的邮箱、电话、所属部门,为后续自助服务打基础;
- 模板(Template):选择预设模板(如“Windows笔记本-标准配置”),它会自动填充“操作系统”“内存大小”“硬盘类型”等字段,避免人工遗漏。
实操心得:我习惯在录入前,先用wmic bios get serialnumber(Windows)或sudo dmidecode -s system-serial-number(Linux)命令远程获取序列号,再粘贴。比翻设备背面快10倍,且零错误。
3.2.2 批量导入:适用于集中采购或历史数据迁移
核心工具:GLPI内置的“导入”功能(需启用datainjection插件)或第三方工具glpi-import。
推荐方案:使用datainjection插件(官方维护,稳定性高)
- 安装插件:GLPI → 设置 → 插件 → 搜索“DataInjection” → 安装并启用;
- 准备CSV模板:
- 下载示例CSV:GLPI → 工具 → 导入 → 计算机 → “下载CSV模板”;
- 关键列必须包含:
name,serial,fqdn,os_name,os_version,users_id,entities_id,states_id; users_id和entities_id填数字ID,不是名称!需先查GLPI数据库:SELECT id, name FROM glpi_users WHERE name='张三'; SELECT id, name FROM glpi_entities WHERE name='前端组';- 日期格式必须为
Y-m-d(如2024-03-15),时间格式H:i:s;
- 数据清洗:用Python脚本处理常见问题:
import pandas as pd df = pd.read_csv('assets.csv', encoding='gbk') # 注意编码,中文Excel常为gbk # 清洗序列号:去空格、转大写、替换O为0 df['serial'] = df['serial'].str.replace(' ', '').str.upper().str.replace('O', '0') # 生成FQDN:name + '.dev.company.local' df['fqdn'] = df['name'] + '.dev.company.local' df.to_csv('cleaned_assets.csv', index=False, encoding='utf-8-sig') # 保存为UTF-8 with BOM - 执行导入:GLPI → 工具 → 导入 → 计算机 → 上传
cleaned_assets.csv→ 映射字段 → 开始导入。
避坑指南:
- CSV必须用逗号分隔,不能用分号或制表符;
- 文件名不能含中文或空格;
- 单次导入建议≤500行,超量易超时;
- 导入后务必检查“导入日志”,红色报错行需单独修正重试。
3.2.3 自动发现(glpi-agent):生产环境唯一推荐方式
部署流程(以Windows为例):
- 下发安装包:用域控组策略(GPO)或SCCM推送
glpi-agent-1.5-lts-win64.msi; - 配置agent:安装后,agent会在
C:\Program Files\GLPI-Agent\conf\agent.cfg生成配置文件,需修改:[global] server = http://your-inventory-server:62354 key = a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6 # 与inventory.conf中一致 ca_file = /path/to/ca.crt # 如启用HTTPS,需提供CA证书 [no-category] tag = dev-company # 设备标签,用于GLPI规则过滤 [tasks] inventory = yes # 必须启用 deploy = no # 生产环境禁用部署任务,防安全风险 - 启动服务:
net start "GLPI Agent Service" - 验证采集:
- 查看服务日志:
C:\Program Files\GLPI-Agent\logs\agent.log,确认出现Inventory done; - 登录GLPI → 资产 → 计算机,搜索
FQDN,应看到新资产自动创建,状态为“已发现”; - 点击资产详情 → “库存”标签页,查看“最后库存时间”是否为当前时间,且硬件列表完整。
- 查看服务日志:
参数调优(影响采集质量的关键):
timeout = 300:采集超时时间,旧设备建议设为600;retry = 3:失败重试次数,网络不稳环境设为5;delay = 3600:采集间隔(秒),默认1小时,高频变更环境可设为1800(30分钟);local = yes:启用本地缓存,断网时仍可采集,恢复后自动同步。
注意:agent默认不采集软件列表(太耗资源)。如需软件资产,需在
agent.cfg中添加:[software] enabled = yes
3.3 NetBox协同实战:让资产在两个系统间“活”起来
当GLPI管“设备是什么、谁在用、状态如何”,NetBox管“设备在哪、连在哪、IP是多少”,二者必须打通。否则,你查一台服务器,GLPI说“在IDC-A”,NetBox说“在A03-07机柜”,但不知道A03-07机柜属于哪个IDC分区,这就是信息孤岛。
实现方案:GLPI插件netbox+ NetBox Webhook
- 在GLPI安装NetBox插件:
- 下载
netbox-2.0.0.tar.gz(适配GLPI 10.x); - 解压到
/var/www/html/glpi/plugins/netbox/; - GLPI后台启用插件;
- 下载
- 配置GLPI连接NetBox:
- GLPI → 设置 → 插件 → NetBox → 填写:
- NetBox URL:
https://netbox.your-company.com; - API Token:前面生成的Token;
- SSL验证:如NetBox用自签名证书,此处选“否”;
- NetBox URL:
- GLPI → 设置 → 插件 → NetBox → 填写:
- 在NetBox配置Webhook:
- NetBox → 管理 → Webhooks → 添加:
- 名称:
GLPI-Sync; - 目标URL:
https://glpi.your-company.com/plugins/netbox/front/hook.php; - HTTP方法:
POST; - 触发条件:勾选
dcim | device | created、dcim | device | updated; - 附加数据:勾选
custom_fields(同步自定义字段如采购单号);
- 名称:
- NetBox → 管理 → Webhooks → 添加:
- 字段映射:
- GLPI插件中,将NetBox的
device.role映射到GLPI的asset_type; - 将NetBox的
device.rack.name映射到GLPI的location字段; - 将NetBox的
primary_ip4.address映射到GLPI的ip字段。
- GLPI插件中,将NetBox的
实测效果:
- 当你在NetBox中新建一台交换机,填写机柜为
A03-07,IP为10.1.3.10/24,Webhook自动触发,GLPI中立刻创建同名资产,location=A03-07,ip=10.1.3.10; - 当你在GLPI中修改该资产的“使用人”,NetBox不会反向同步(避免循环更新),但GLPI的“NetBox同步状态”字段会变红,提示需人工确认。
经验之谈:我们约定“NetBox为物理拓扑权威源,GLPI为资产属性权威源”,所有物理位置、连接关系以NetBox为准,所有软件、使用人、状态以GLPI为准。这样分工,系统才不会打架。
4. 常见问题与排查技巧实录:那些文档里不会写的坑
4.1 “资产创建了,但库存信息为空”——90%是agent通信链路断裂
这是最高频问题。现象:GLPI里能看到新资产,但“库存”标签页一片空白,“最后库存时间”是1970年。
排查四步法:
查agent日志:
- Windows:
C:\Program Files\GLPI-Agent\logs\agent.log; - Linux:
/var/log/glpi-agent/agent.log; - 关键错误:
Connection refused(inventory服务未启动)、SSL certificate verify failed(证书问题)、Invalid key(密钥不匹配)。
- Windows:
测inventory服务连通性:
# 从agent所在机器执行 curl -v http://your-inventory-server:62354 # 应返回HTTP 200,而非"Connection refused" # 如超时,检查inventory服务状态:systemctl status glpi-inventory验密钥一致性:
- 对比
/etc/glpi-inventory/inventory.conf中的key和agent.cfg中的key,必须完全一致,包括大小写和符号; - 常见错误:inventory.conf里是
a1b2c3...,agent.cfg里是A1B2C3...(字母大小写不同)。
- 对比
看inventory日志:
tail -f /var/log/glpi-inventory/inventory.log # 正常应有:`Received inventory from laptop-001` # 错误:`Invalid agent key for laptop-001` → 密钥错; # 错误:`XML parse error` → agent版本与inventory不匹配。
实操心得:我给所有agent加了一行开机自检脚本,自动ping inventory服务器并写入日志。一旦不通,IT人员手机立刻收到企业微信告警,比等用户报修快10倍。
4.2 “批量导入后,部分资产状态不对”——CSV编码与ID映射陷阱
现象:导入500台设备,其中37台状态是“已删除”,明明CSV里写的都是states_id=2(使用中)。
根因分析:
states_id=2在你的GLPI中确实是“使用中”,但CSV文件用ANSI编码保存(Windows记事本默认),而GLPI只认UTF-8;- 导入时,
states_id字段被当作文本解析,2变成了2?(ANSI乱码),GLPI找不到ID为2?的状态,就默认设为0(已删除)。
解决方案:
- 用VS Code或Notepad++打开CSV,另存为“UTF-8 with BOM”;
- 或用Python强制转码:
with open('input.csv', 'r', encoding='gbk') as f: content = f.read() with open('output.csv', 'w', encoding='utf-8-sig') as f: f.write(content) - 更彻底:在GLPI导入页面,勾选“使用UTF-8编码”选项(datainjection插件提供)。
4.3 “NetBox同步失败,GLPI报错500”——API Token权限不足
现象:GLPI插件配置完成后,点击“同步”按钮,页面白屏,Nginx日志报500错误。
诊断命令:
# 查看GLPI错误日志 tail -f /var/log/apache2/error.log | grep netbox # 典型错误:`cURL error 22: The requested URL returned error: 403 Forbidden`403 Forbidden说明NetBox拒绝了请求,不是连接问题,而是权限问题。
修复步骤:
- 登录NetBox → 管理 → API Tokens → 编辑你的Token;
- 勾选缺失权限:
dcim | device type | view(设备型号)、extras | custom field | view(自定义字段); - 保存后,在GLPI插件中点击“清除缓存”,再试同步。
注意:NetBox 3.5+版本,API路径有变更,需确认GLPI插件版本是否兼容。不兼容时,降级插件比升级NetBox更稳妥。
4.4 “agent采集的内存大小是0”——Windows WMI权限问题
现象:agent日志显示Inventory done,但GLPI中内存容量为0。
Windows专属解决方案:
- 以管理员身份运行CMD:
winmgmt /resetrepository - 重启WMI服务:
net stop winmgmt && net start winmgmt - 授予agent服务WMI权限:
- 运行
wmimgmt.msc→ 右键“WMI控制” → 属性 → 安全 → 根节点 → 安全 → 添加NT SERVICE\GLPIAgent→ 勾选“启用账户”、“远程启用”。
- 运行
验证:
wmic memorychip get capacity # 应返回类似:8589934592 # 如报错“拒绝访问”,说明权限未生效。4.5 “资产录入后,规则没触发”——规则条件与字段值不匹配
现象:设置了“当操作系统含Server,自动分配服务器模板”,但录入Windows Server 2019,模板没应用。
调试技巧:
- 进入GLPI → 设置 → 规则 → 计算机规则 → 找到你的规则 → 点击“测试”;
- 在测试框中,手动输入
os_name=Microsoft Windows Server 2019,os_version=10.0.17763; - 点击“执行”,看是否匹配。如果不匹配:
- 检查
os_name字段实际值:agent采集的可能是Windows Server 2019 Datacenter,而规则写的是Windows Server 2019; - 改规则条件为“包含”而非“等于”,或用正则
/Windows Server.*2019/;
- 检查
- 终极验证:在GLPI数据库中查规则日志:
查看SELECT * FROM glpi_rulelogs WHERE date > DATE_SUB(NOW(), INTERVAL 1 HOUR) ORDER BY date DESC LIMIT 10;state字段是否为1(匹配成功)或0(未匹配)。
5. 资产录入的长期演进:从“能用”到“好用”的三个跃迁
5.1 第一跃迁:从“人录”到“机采”,用agent覆盖80%终端
目标:让glpi-agent成为IT资产的“呼吸传感器”,无需人工干预,数据自然流动。
- 执行要点:
- 制定agent部署SOP:新设备入库24小时内必须安装agent;
- 用GLPI报表监控agent在线率:
资产 → 报表 → 计算机 → Agent状态统计,低于95%即告警; - 为老旧设备定制轻量采集模板(禁用软件扫描、减少WMI查询项),确保兼容性。
- 收益:数据准确率从70%提升至99%,IT人员从“数据录入员”转型为“数据策展人”。
5.2 第二跃迁:从“单系统”到“双系统协同”,GLPI+NetBox构建统一视图
目标:在GLPI资产详情页,一键跳转到NetBox中该设备的机柜视图、端口连接图、IP地址分配详情。
- 执行要点:
- 在GLPI中为每台资产添加自定义字段
netbox_id,存储NetBox中设备的ID; - 开发简单前端脚本,在GLPI资产页插入“查看NetBox”按钮,链接为
https://netbox.your-company.com/dcim/devices/{netbox_id}/; - 用NetBox Webhook自动更新GLPI的
netbox_id字段,避免手工维护。
- 在GLPI中为每台资产添加自定义字段
- 收益:故障定位时间缩短60%,网络工程师和系统工程师不再互相甩锅“你那边没配好”。
5.3 第三跃迁:从“静态台账”到“动态预测”,用历史数据驱动决策
目标:基于3年资产录入与变更数据,预测下季度硬件淘汰高峰、软件许可缺口、预算需求。
- 执行要点:
- 在GLPI中启用“历史记录”插件,完整保留每次字段变更;
- 用SQL定时导出关键指标:
-- 统计未来6个月EOL设备 SELECT COUNT(*) FROM glpi_computers WHERE states_id = 2 -- 使用中 AND DATE_ADD(purchase_date, INTERVAL 5 YEAR) < DATE_ADD(NOW(), INTERVAL 6 MONTH); - 将数据接入BI工具(如Metabase),生成“资产健康度仪表盘”。
- 收益:IT预算申请通过率提升40%,从“被动救火”转向“主动规划”。
我在上一家公司推动第三跃迁时,用GLPI数据说服管理层提前半年启动服务器换代,避免了某次大规模硬盘故障导致的业务中断。那一刻我真正理解:资产录入不是IT的收尾工作,而是业务连续性的前置保险。你录下的每一个序列号,都在为未来的决策埋下伏笔。所以,别把它当成苦差事,当成在给公司IT基础设施绘制一张不断自我更新的活地图——而你,是这张地图的第一位测绘师。