手把手教你用Python打造“全能型”Linux运维驾驶舱摘要:本文系统性地阐述了一套基于 Python Flask 框架构建的 Linux 可视化远程管理工具的设计原理、实现方法及部署方案。该工具通过图形化 Web 界面封装底层 Shell 命令操作,有效降低了命令行运维的技术门槛,提升了管理效率与操作安全性。系统核心功能涵盖实时资源监控(CPU/内存/磁盘)、系统垃圾清理、内存释放、网络连接分析、软件包管理、进程管理、定时任务可视化配置、系统服务控制、告警阈值管理及多角色权限控制等十大模块。前端采用 Bootstrap 5 构建自适应响应式界面,支持 HTTPS 安全传输协议,后端利用 MySQL 实现监控状态数据、操作日志及用户信息的持久化存储。本文在基础功能之上,重点扩展了进程管理、定时任务可视化、系统服务控制、告警阈值设置、操作日志分级、多用户角色及暗黑模式切换等企业级运维特性,形成了一套功能完备、可直接落地的企业级运维面板解决方案。文章提供了完整的代码实现逻辑、数据库设计规范及生产环境部署指引,适用于中小规模服务器运维自动化实践等场景。详细内容请参考下文。
一、系统架构设计
说明:项目命名为Linux运维驾驶舱,主要包括以下功能:
- 系统监控:实时展示CPU使用率、内存占用率、磁盘利用率,支持自动刷新(间隔可配置);
- 系统优化:一键清理/tmp、系统日志、缓存文件;释放未使用的内存缓存;管理开机自启动项;
- 磁盘管理:扫描并列出指定目录下的大文件(支持按大小排序),清理指定缓存目录;
- 文件清理:自动扫描并清理垃圾目录(含/var/log、~/.cache等),支持白名单排除;
- 网络安全:监控当前网络连接(TCP/UDP),识别并记录可疑IP地址(基于连接频率阈值);
- 软件管理:自动识别apt(Debian系)或yum(RedHat系),支持软件包搜索、安装、卸载及更新;
- 进程管理:查看所有运行进程(PID、名称、CPU/内存占用、启动时间),支持按名称或PID搜索,支持终止异常进程(替代kill命令);
- 定时任务可视化:以表格形式展示当前用户的cron任务,支持新增、编辑、删除及启用/禁用操作,实时同步至crontab文件;
- 系统服务控制:列出系统所有服务(或常用服务组),支持一键启动、停止、重启、查看状态(基于systemctl);
- 告警阈值设置:为CPU、内存、磁盘分别设定警告阈值(百分比),系统后台每分钟检测一次,超过阈值时前端弹窗提醒并写入告警日志;
- 操作日志分级:将操作日志划分为INFO(普通操作)、WARNING(警告操作,如内存接近满载)、DANGER(危险操作,如终止系统关键进程、删除大文件),便于安全审计;
- 多用户角色:支持管理员(admin)和只读观察员(viewer)两种角色;管理员拥有全部操作权限,观察员仅可查看监控数据和报表,无法执行修改类操作;
- 报表与帮助:历史流量统计(按日/月汇总)、操作日志检索与导出、内置帮助文档(含各功能使用说明);
- 暗黑模式:前端支持明暗主题切换,适配夜间运维场景,用户偏好保存至本地存储。
二、数据库设计
通过init_db.py脚本在Mysql中创建system_manager_ssh_db数据库和系统资源监控表system_stats等八个数据表。
详细情况如下:
其具体SQL语句如下:
1.创建数据库system_manager_db
SQL>CREATE DATABASE system_manager_ssh_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
2.创建system_stats等数据表
SQL>CREATE TABLE system_stats (idINT AUTO_INCREMENT PRIMARY KEY,timestampDATETIME DEFAULT CURRENT_TIMESTAMP,cpu_percentFLOAT,memory_percentFLOAT,disk_percentFLOAT );
三、编程实战与系统使用
1.程序设计
本项目需要设计系统的前后端文件,其中包系统后端的主程序有app.py、配置文件config.py等后台文件;前端的展示文件,有首页index.html、服务管理server_managerment.html、日志分析告警log_alert.html、数据报表report.html、帮助中心help.html等文件。详细情况如下:
2.使用指引
本系统以 root 权限启主程序app.py,然后通过浏览器访问https://服务器IP:443即可使用Linux运维驾驶舱。详情如下
(1)启动系统
(2)使用系统
第一步:客户端使用SSL安全协议通过浏览器访问系统
访问服务器的IP地址https://172.16.27.49查看系统首页。如下图
第二步:使用管理员登录系统新增监控服务器
点击右上角的登录按钮,输入管理员liubei账号。如下图
使用管理员账号liubei登录系统。如下图
第三步:点击【服务器管理】菜单切换到服务器管理页面。如下图
新增监控服务器360Server。相关信息如下图所示
点击“保存”按钮保存监控服务器信息。如下图
第四步:点击【日志告警】菜单切换到系统日志告警页面。如下图
第五步:点击【统计报表】菜单切换到统计报表页面。如下图
第六步:点击【AI助手】菜单切换到AI智能助手页面。如下图
如果本文对您有帮助,欢迎:
- 🔄 转发,分享给您的技术团队或社区朋友,提升运维效率。
- 👉 关注我,即可查看并下载完整项目代码,亲手打造属于您自己的“全能型”Linux运维驾驶舱平台。