别再手动记账了!手把手教你用GLPI搭建企业IT资产库(CentOS 7 + PHP 7.4 + MariaDB)

张开发
2026/4/20 19:29:21 15 分钟阅读

分享文章

别再手动记账了!手把手教你用GLPI搭建企业IT资产库(CentOS 7 + PHP 7.4 + MariaDB)
企业IT资产管理革命GLPI在CentOS 7上的全栈部署指南当IT设备数量突破50台时Excel表格里的资产清单就会变成一场噩梦——版本混乱、权限失控、更新滞后。我曾亲眼见过一家成长型科技公司因为许可证管理疏漏在审计时被处以高额罚款。这正是GLPI这类专业IT资产管理工具的价值所在它不仅能自动追踪每台设备的生命周期还能将软件授权、采购合同、维护记录全部纳入统一平台。1. 为什么GLPI是中小企业的理想选择传统资产管理方式通常面临三个致命缺陷信息孤岛、人工误差和缺乏预警机制。手工维护的Excel表格往往存在多个副本财务部用一份资产折旧表运维团队用另一份设备清单而采购部门又有自己的台账。当一台笔记本报废时三个版本的数据很少能同步更新。GLPI的独特优势体现在三个维度资产全生命周期可视化从采购申请到报废处置每个环节都有完整记录多角色协同工作流支持审批链、工单系统和知识库的深度集成智能预警系统自动提醒许可证到期、设备维保和库存阈值提示GLPI 9.5版本开始支持REST API这意味着它可以与企业微信、钉钉等办公平台无缝对接对比主流解决方案GLPI在性价比和扩展性上表现突出解决方案开源授权AD集成移动端支持学习曲线GLPIGPL支持响应式设计中等Snipe-ITMIT插件专用APP平缓ServiceNow商业许可完善原生应用陡峭2. CentOS 7基础环境配置实战在开始部署前需要确保系统满足GLPI的基本要求。我推荐使用最小化安装的CentOS 7.9这样可以减少不必要的软件冲突。以下是最关键的准备工作# 更新系统并安装基础工具 yum -y update yum -y install wget curl vim2.1 PHP 7.4的优化安装GLPI 9.5需要PHP 7.2以上版本但7.4在性能和稳定性上表现更佳。Remi仓库提供了经过充分测试的PHP包# 配置EPEL和Remi仓库 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://rpms.remirepo.net/enterprise/remi-release-7.rpm # 启用PHP 7.4模块并安装核心组件 yum -y install yum-utils yum-config-manager --enable remi-php74必须安装的PHP扩展及其作用php-mysqlndMariaDB原生驱动性能比传统mysql扩展提升40%php-apcu操作码缓存减少PHP文件解析开销php-zip处理GLPI的插件安装包php-gd生成资产标签的二维码图像注意生产环境务必禁用php-xdebug这个开发工具会显著降低系统性能3. 数据库与Web服务器的黄金组合3.1 MariaDB 10.3的高可用配置GLPI官方推荐使用MariaDB 10.3其改进的InnoDB引擎能更好处理并发请求。阿里云镜像提供了稳定的安装源cat /etc/yum.repos.d/mariadb.repo EOF [mariadb] name MariaDB baseurl https://mirrors.aliyun.com/mariadb/yum/10.3/centos7-amd64/ gpgkey https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB gpgcheck 1 EOF数据库初始化时这些参数对性能影响最大-- 在my.cnf中添加以下优化参数 [mysqld] innodb_buffer_pool_size 1G innodb_log_file_size 256M query_cache_size 64M thread_cache_size 83.2 Apache的线程调优对于200人以下的企业Apache的prefork模式足够使用。关键配置位于/etc/httpd/conf/httpd.confKeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15 IfModule prefork.c StartServers 5 MinSpareServers 5 MaxSpareServers 10 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 /IfModule4. GLPI安装与安全加固4.1 文件系统权限的最佳实践下载GLPI后这些目录需要特殊权限设置wget https://github.com/glpi-project/glpi/releases/download/9.5.6/glpi-9.5.6.tgz tar -xzf glpi-9.5.6.tgz -C /var/www/html/ # 设置安全的权限结构 chown -R apache:apache /var/www/html/glpi find /var/www/html/glpi -type d -exec chmod 750 {} \; find /var/www/html/glpi -type f -exec chmod 640 {} \;必须单独配置写权限的目录/var/www/html/glpi/config/ /var/www/html/glpi/files/ /var/www/html/glpi/marketplace/4.2 初始配置的七个关键步骤访问http://your-server/glpi进入安装向导选择语言后系统会检查环境依赖数据库连接配置主机localhost用户glpi不要使用root账户密码强密码至少12位混合字符选择创建新数据库设置管理员邮箱和密码取消勾选安装演示数据生产环境必须完成安装后立即删除install/install.php文件5. 企业级功能配置指南5.1 Active Directory集成在配置 认证 AD配置中设置域控制器信息域控制器地址ad.yourcompany.com LDAP端口389 Base DNOUUsers,DCyourcompany,DCcom重要测试连接前确保服务器时间与域控制器同步时差超过5分钟会导致认证失败5.2 资产自动发现通过OCS Inventory NG插件可以实现在市场 插件中安装OCS插件部署OCS客户端到所有终端设备配置自动同步计划同步频率每日凌晨2点 冲突解决策略保留GLPI现有数据 自动关联规则按MAC地址匹配5.3 自定义报表模板GLPI的报表引擎支持SQL直接查询。例如获取即将过保的设备清单SELECT a.name AS 资产名称, a.serial AS 序列号, w.begin_date AS 维保开始, w.expiration_date AS 维保到期, DATEDIFF(w.expiration_date, CURDATE()) AS 剩余天数 FROM glpi_assets a JOIN glpi_warranties w ON a.id w.assets_id WHERE w.expiration_date BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 30 DAY) ORDER BY 剩余天数 ASC6. 日常维护与故障排查6.1 备份策略实施完整的备份应包含三个部分数据库备份mysqldump -u glpi -p glpi | gzip /backup/glpi_db_$(date %F).sql.gz文件备份tar -czf /backup/glpi_files_$(date %F).tar.gz /var/www/html/glpi配置备份cp /etc/httpd/conf.d/glpi.conf /backup/6.2 常见问题解决方案问题1登录页面出现500错误检查/var/log/httpd/error_log常见原因session目录不可写chmod 770 /var/lib/php/session问题2导入大量资产时超时修改PHP配置max_execution_time 300 memory_limit 256M问题3LDAP同步失败测试基础连接ldapsearch -x -H ldap://ad.yourcompany.com -b OUUsers,DCyourcompany,DCcom在实施GLPI的三年里最深刻的教训是不要追求一次性完美配置。建议先用测试环境验证核心流程再逐步迁移生产数据。每周花10分钟检查管理 系统日志能提前发现80%的潜在问题。

更多文章