174 lines
3.9 KiB
Markdown
174 lines
3.9 KiB
Markdown
|
|
# 服务器监控管理平台
|
|||
|
|
|
|||
|
|
## 项目简介
|
|||
|
|
|
|||
|
|
这是一个基于Vue3 + Flask + MySQL的企业级服务器监控管理平台,支持服务器管理、脚本管理、批量执行、用户权限管理等功能。
|
|||
|
|
|
|||
|
|
## 技术架构
|
|||
|
|
|
|||
|
|
### 前端技术栈
|
|||
|
|
- **Vue 3** - 渐进式JavaScript框架
|
|||
|
|
- **Ant Design Vue** - 企业级UI组件库
|
|||
|
|
- **Tailwind CSS** - 实用程序优先的CSS框架
|
|||
|
|
- **Pinia** - Vue状态管理
|
|||
|
|
- **Vue Router** - 官方路由管理器
|
|||
|
|
- **Axios** - HTTP客户端
|
|||
|
|
|
|||
|
|
### 后端技术栈
|
|||
|
|
- **Flask** - 轻量级Web应用框架
|
|||
|
|
- **SQLAlchemy** - Python ORM
|
|||
|
|
- **MySQL 8.0** - 关系型数据库
|
|||
|
|
- **JWT** - JSON Web Token认证
|
|||
|
|
- **Paramiko** - SSH客户端库
|
|||
|
|
|
|||
|
|
## 功能特性
|
|||
|
|
|
|||
|
|
### 🔐 用户认证与权限管理
|
|||
|
|
- JWT Token认证
|
|||
|
|
- 基于角色的权限控制(RBAC)
|
|||
|
|
- 用户状态管理(启用/禁用)
|
|||
|
|
|
|||
|
|
### 🖥️ 服务器管理
|
|||
|
|
- 服务器信息维护(IP、端口、用户名等)
|
|||
|
|
- 实时连接状态检测
|
|||
|
|
- 服务器连接测试
|
|||
|
|
|
|||
|
|
### 📝 脚本管理
|
|||
|
|
- 支持Shell、Python、SQL脚本
|
|||
|
|
- 脚本内容编辑器
|
|||
|
|
- 脚本分类和版本管理
|
|||
|
|
|
|||
|
|
### ⚡ 批量执行
|
|||
|
|
- 选择多台服务器批量执行脚本
|
|||
|
|
- 并发执行,提高效率
|
|||
|
|
- 实时查看执行结果和输出
|
|||
|
|
- 执行历史记录查询
|
|||
|
|
|
|||
|
|
### 📊 控制台面板
|
|||
|
|
- 关键指标统计
|
|||
|
|
- 最近执行记录
|
|||
|
|
- 服务器状态概览
|
|||
|
|
|
|||
|
|
## 安装部署
|
|||
|
|
|
|||
|
|
### 环境要求
|
|||
|
|
- Node.js 16+
|
|||
|
|
- Python 3.8+
|
|||
|
|
- MySQL 8.0+
|
|||
|
|
|
|||
|
|
### 前端部署
|
|||
|
|
|
|||
|
|
1. 安装依赖
|
|||
|
|
\`\`\`bash
|
|||
|
|
npm install
|
|||
|
|
\`\`\`
|
|||
|
|
|
|||
|
|
2. 开发环境运行
|
|||
|
|
\`\`\`bash
|
|||
|
|
npm run dev
|
|||
|
|
\`\`\`
|
|||
|
|
|
|||
|
|
3. 生产构建
|
|||
|
|
\`\`\`bash
|
|||
|
|
npm run build
|
|||
|
|
\`\`\`
|
|||
|
|
|
|||
|
|
### 后端部署
|
|||
|
|
|
|||
|
|
1. 创建虚拟环境
|
|||
|
|
\`\`\`bash
|
|||
|
|
cd backend
|
|||
|
|
python -m venv venv
|
|||
|
|
source venv/bin/activate # Windows: venv\\Scripts\\activate
|
|||
|
|
\`\`\`
|
|||
|
|
|
|||
|
|
2. 安装依赖
|
|||
|
|
\`\`\`bash
|
|||
|
|
pip install -r requirements.txt
|
|||
|
|
\`\`\`
|
|||
|
|
|
|||
|
|
3. 配置数据库
|
|||
|
|
- 创建MySQL数据库 \`server_monitor\`
|
|||
|
|
- 修改 \`app.py\` 中的数据库连接配置
|
|||
|
|
|
|||
|
|
4. 初始化数据库
|
|||
|
|
\`\`\`bash
|
|||
|
|
python init_db.py
|
|||
|
|
\`\`\`
|
|||
|
|
|
|||
|
|
5. 运行应用
|
|||
|
|
\`\`\`bash
|
|||
|
|
python app.py
|
|||
|
|
\`\`\`
|
|||
|
|
|
|||
|
|
### 数据库配置
|
|||
|
|
|
|||
|
|
创建MySQL数据库:
|
|||
|
|
\`\`\`sql
|
|||
|
|
CREATE DATABASE server_monitor CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
|||
|
|
\`\`\`
|
|||
|
|
|
|||
|
|
## 使用说明
|
|||
|
|
|
|||
|
|
### 默认账户
|
|||
|
|
- 用户名:\`admin\`
|
|||
|
|
- 密码:\`admin123\`
|
|||
|
|
|
|||
|
|
### 基本使用流程
|
|||
|
|
|
|||
|
|
1. **登录系统** - 使用默认管理员账户登录
|
|||
|
|
2. **添加服务器** - 在服务器管理页面添加要管理的服务器
|
|||
|
|
3. **创建脚本** - 在脚本管理页面创建执行脚本
|
|||
|
|
4. **批量执行** - 选择服务器和脚本进行批量执行
|
|||
|
|
5. **查看结果** - 查看执行结果和历史记录
|
|||
|
|
|
|||
|
|
### 权限说明
|
|||
|
|
|
|||
|
|
系统支持三种角色:
|
|||
|
|
- **管理员(admin)** - 拥有所有权限
|
|||
|
|
- **操作员(operator)** - 可执行脚本,管理服务器和脚本
|
|||
|
|
- **查看员(viewer)** - 只能查看信息,不能进行操作
|
|||
|
|
|
|||
|
|
## 项目结构
|
|||
|
|
|
|||
|
|
\`\`\`
|
|||
|
|
cloudPlat/
|
|||
|
|
├── src/ # 前端源码
|
|||
|
|
│ ├── api/ # API接口
|
|||
|
|
│ ├── components/ # 公共组件
|
|||
|
|
│ ├── layout/ # 布局组件
|
|||
|
|
│ ├── router/ # 路由配置
|
|||
|
|
│ ├── store/ # 状态管理
|
|||
|
|
│ ├── views/ # 页面组件
|
|||
|
|
│ └── style.css # 全局样式
|
|||
|
|
├── backend/ # 后端源码
|
|||
|
|
│ ├── routes/ # API路由
|
|||
|
|
│ ├── models.py # 数据模型
|
|||
|
|
│ ├── app.py # Flask应用
|
|||
|
|
│ └── requirements.txt # 依赖包
|
|||
|
|
├── package.json # 前端依赖配置
|
|||
|
|
├── vite.config.js # Vite配置
|
|||
|
|
└── README.md # 项目说明
|
|||
|
|
\`\`\`
|
|||
|
|
|
|||
|
|
## 开发说明
|
|||
|
|
|
|||
|
|
### 代码规范
|
|||
|
|
- 遵循ESLint和Prettier代码格式化
|
|||
|
|
- 使用TypeScript类型检查(推荐)
|
|||
|
|
- 组件命名采用PascalCase
|
|||
|
|
- 文件命名采用kebab-case
|
|||
|
|
|
|||
|
|
### 安全特性
|
|||
|
|
- JWT Token过期机制
|
|||
|
|
- 密码哈希存储
|
|||
|
|
- SQL注入防护
|
|||
|
|
- CORS跨域保护
|
|||
|
|
|
|||
|
|
## 许可证
|
|||
|
|
|
|||
|
|
MIT License
|
|||
|
|
|
|||
|
|
## 技术支持
|
|||
|
|
|
|||
|
|
如有问题,请提交Issue或联系开发团队。
|