本项目针对传统运维模式下操作效率低、权限管控弱、安全风险高的痛点,搭建了一站式轻量化运维管控平台。替代了传统的服务器远程登录与数据库客户端操作模式,实现了内部 30 + 服务器、10 + 数据库实例的统一管理、权限隔离与安全审计。
本项目采用前后端分离架构,后端基于 SpringBoot 2.7 构建,使用 SSH 协议实现服务器远程操作,基于 JDBC 实现多类型数据库的统一访问;前端基于 Vue 3 + Element Plus 开发,使用 WebSocket 实现服务器状态的实时推送。
本人独立完成全流程设计与开发:
1.开发服务器状态实时监控模块,实现 CPU、内存、磁盘、网络等 15 项性能指标的秒级采集与可视化展示,支持资源使用情况的实时告警,服务器性能问题排查时间从 2 小时缩短至 10 分钟
2.开发在线数据库操作模块,支持 MySQL、PostgreSQL 等多类型数据库的在线查询与数据操作,内置 SQL 语法校验与高危操作拦截机制,上线以来成功拦截 120 + 次高危操作
3.设计细粒度权限管控体系,支持按用户、资源维度的权限隔离,可灵活配置不同用户的服务器查看权限与数据库操作权限
4.实现全链路操作审计日志功能,记录所有用户的登录、服务器操作、数据库操作行为,支持操作回溯与问题定位,保障运维操作的安全可追溯
核心难点与解决方案:
1.针对多类型数据库统一访问问题,设计基于 JDBC 的数据库适配器模式,实现了不同数据库的统一接口封装
2.针对 WebSocket 连接不稳定问题,实现了心跳检测与自动重连机制,保证了服务器状态实时推送的可靠性
3.针对服务器 SSH 连接安全问题,采用密钥认证与会话超时机制,禁止密码登录,有效防止了未授权访问