affcfa0c72
**主要调整:** 1. 重命名将军工作区目录: - data-engineering → zhaoyun-data (赵云数据工程) - risk-management → guanyu-risk (关羽风控管理) - platform → jiangwei-platform (姜维平台) - technical-strategy → zhangfei-technical (张飞技术策略) 2. 创建新目录: - archive/ (归档目录) - simayi-quality/ (司马懿质量保证) - pangtong-value/ (庞统价值投资) 3. 移动内容: - value-investing → pangtong-value/research (庞统价值投资) - running_data → zhaoyun-data/data (运行数据) - 文件任务管理系统文档 → archive/file-task-system 4. 清理文件: - 删除所有日志文件 - 删除agent脚本 - 删除knowledge-base (使用统一知识库) 5. 创建标准结构: - 各将军目录下创建research/, scripts/, reports/, references/子目录 6. 更新.gitignore: - 排除日志文件和临时文件 **依据:** management/workflow-rules.md **制定:** 庞统(凤雏) **审核:** 诸葛亮
12 KiB
12 KiB
sanguo_vnpy 阿里云部署调研总结
调研人: 姜维(后勤总督)
调研时间: 2026-03-21
版本: v1.0
🎯 调研目标
主公指令:调研生产环境部署到阿里云的方案,未来本地是开发和测试环境,生产环境放到阿里云上。
📦 已完成的成果
1. 基础设施即代码(Terraform)
文件: platform/research/03-部署方案/terraform/main.tf
内容:
- VPC 网络和虚拟交换机配置
- 安全组配置(SSH/HTTP/vn.py 端口)
- ECS 实例配置(Ubuntu 22.04)
- OSS 对象存储配置
- RDS 数据库配置(可选)
- 完整输出信息(公网IP/私网IP/SSH命令等)
2. 实时监控系统部署
文件: platform/research/04-运维方案/monitoring/deploy_monitoring.sh
内容:
- Prometheus 部署和配置
- Node Exporter 部署
- Grafana 部署和数据源配置
- 告警规则配置(P0/P1 级别告警)
- Nginx 反向代理配置
- 完整监控访问信息
告警规则:
- 实例宕机告警(P0)
- CPU 使用率过高告警(P1)
- 内存使用率过高告警(P1)
- 磁盘空间不足告警(P0)
- vn.py 服务宕机告警(P0)
3. 自动化部署流水线
文件: platform/research/03-部署方案/automation/deploy_pipeline.sh
内容:
- 代码构建流程
- 代码质量检查(Ruff)
- 自动化测试(pytest)
- 部署包构建(wheel 包)
- 多环境部署支持(生产/测试/开发)
- 部署验证流程
4. 应急响应方案
文件: platform/research/04-运维方案/disaster-recovery/emergency_response.md
内容:
- 应急响应原则(5分钟响应/15分钟诊断/30分钟恢复)
- 问题诊断流程
- 4个典型场景应急处理:
- 实例完全宕机(P0)
- vn.py 进程崩溃(P0)
- 磁盘空间满(P0)
- 数据库连接失败(P1)
- 应急响应检查清单
- 联络清单
- 事后复盘流程
📊 阿里云服务选型建议
计算服务
| 服务 | 推荐配置 | 用途 |
|---|---|---|
| ECS | ecs.c6.large (2核4GB) | 生产环境主服务器 |
| 轻量应用服务器 | 2核4GB | 测试环境 |
| 容器服务 ACK | 标准版 | 未来容器化部署 |
存储服务
| 服务 | 用途 |
|---|---|
| OSS | 对象存储(策略/数据/日志备份) |
| NAS | 文件存储(共享数据) |
| 云盘 | 系统盘和数据盘 |
数据库服务
| 服务 | 用途 |
|---|---|
| 云数据库 MySQL | 生产环境数据库 |
| SQLite | 本地开发/测试数据库 |
网络服务
| 服务 | 用途 |
|---|---|
| VPC | 专有网络隔离 |
| 弹性公网 IP | 公网访问 |
| SLB | 负载均衡(未来扩展) |
| 安全组 | 访问控制 |
🏗️ 架构设计
开发-测试-生产环境架构
┌─────────────────────────────────────────────────────────────────┐
│ 本地环境 │
│ ┌──────────────────────┐ ┌──────────────────────┐ │
│ │ 开发环境 (venv) │ │ 测试环境 (venv_testing)│ │
│ │ - 快速迭代 │ │ - 集成测试 │ │
│ │ - 本地调试 │ │ - 自动化测试 │ │
│ └──────────────────────┘ └──────────────────────┘ │
└─────────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────────┐
│ 阿里云生产环境 │
│ ┌───────────────────────────────────────────────────────┐ │
│ │ ECS 实例 (Ubuntu 22.04) │ │
│ │ - vn.py 应用服务 │ │
│ │ - Prometheus + Grafana 监控 │ │
│ │ - Nginx 反向代理 │ │
│ └───────────────────────────────────────────────────────┘ │
│ ┌──────────────────┐ ┌──────────────────┐ │
│ │ OSS 对象存储 │ │ RDS MySQL 数据库 │ │
│ │ - 策略文件 │ │ - 业务数据 │ │
│ │ - 数据备份 │ │ - 用户数据 │ │
│ │ - 日志归档 │ │ │ │
│ └──────────────────┘ └──────────────────┘ │
└─────────────────────────────────────────────────────────────────┘
💰 成本估算
生产环境月度成本估算(推荐配置)
| 资源 | 配置 | 月度费用(估算) |
|---|---|---|
| ECS | ecs.c6.large (2核4GB) | ¥ 200-300 |
| 云盘 | 40GB 高效云盘 | ¥ 20-30 |
| 公网带宽 | 10Mbps | ¥ 80-100 |
| OSS | 100GB 标准存储 | ¥ 10-20 |
| 合计 | - | ¥ 310-450/月 |
💸 最小费用方案
方案目标
在保证基本可用性的前提下,将月度成本控制在 ¥ 100-150/月 以内。
最小费用配置方案
| 资源 | 配置 | 月度费用(估算) | 说明 |
|---|---|---|---|
| ECS 实例 | ecs.t6-c1m1.small (1核1GB) | ¥ 50-60 | 突发性能实例,性价比高 |
| 系统盘 | 20GB 高效云盘 | ¥ 10-15 | 最小系统盘 |
| 公网带宽 | 1Mbps 按流量计费 | ¥ 20-30 | 低带宽 + 流量计费 |
| OSS 存储 | 50GB 标准存储 | ¥ 5-10 | 减少存储容量 |
| 数据库 | SQLite(本地文件) | ¥ 0 | 不使用 RDS,用 SQLite |
| 合计 | - | ¥ 85-115/月 | 💰 推荐配置的 1/3 |
最小费用架构设计
┌─────────────────────────────────────────────────────────────────┐
│ 最小费用阿里云生产环境 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ ECS 突发性能实例 (ecs.t6-c1m1.small) │ │
│ │ - 1核1GB,突发性能模式 │ │
│ │ - Ubuntu 22.04 │ │
│ │ - vn.py 应用 + Prometheus + Grafana │ │
│ └─────────────────────────────────────────────────────┘ │
│ ↓ │
│ ┌──────────────────┐ ┌──────────────────────┐ │
│ │ OSS 对象存储 │ │ SQLite 本地数据库 │ │
│ │ - 50GB 标准 │ │ - 数据文件存储 │ │
│ │ - 策略/日志/备份 │ │ - 无需 RDS │ │
│ └──────────────────┘ └──────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
最小费用方案优化策略
1. 计算资源优化
- 使用突发性能实例:ecs.t6-c1m1.small(1核1GB)
- 基础性能:1核1GB
- 突发性能:CPU积分积累,应对峰值
- 成本比标准实例低 60-70%
2. 存储资源优化
- 系统盘最小化:20GB 高效云盘
- OSS 容量减半:50GB 标准存储(100GB → 50GB)
- 用 SQLite 替代 RDS:
- 本地文件数据库,无需 RDS 费用
- 定期备份到 OSS,保证数据安全
- 适合中小规模量化交易
3. 网络资源优化
- 降低带宽:10Mbps → 1Mbps
- 按流量计费:而非固定带宽
- 利用 CDN 加速:静态资源用 CDN
最小费用 vs 推荐配置对比
| 指标 | 推荐配置 | 最小费用 | 节省 |
|---|---|---|---|
| 月度费用 | ¥ 310-450 | ¥ 85-115 | 70-75% |
| ECS 配置 | 2核4GB | 1核1GB(突发) | 降低配置 |
| 数据库 | RDS MySQL | SQLite 本地 | 费用为0 |
| OSS 存储 | 100GB | 50GB | 节省 50% |
| 公网带宽 | 10Mbps 固定 | 1Mbps 流量计费 | 节省 70%+ |
最小费用方案适用场景
✅ 适用场景
- 个人量化交易
- 策略验证和回测
- 小规模实盘模拟
- 学习和研究用途
❌ 不适用场景
- 大规模实盘交易
- 多策略并发运行
- 高频交易场景
- 需要高可用性的场景
最小费用方案扩容路径
当业务增长时,可以按以下路径逐步扩容:
- 第1步:ECS 升级到 2核2GB(¥ 100-120/月)
- 第2步:增加 OSS 到 100GB(¥ 10-20/月)
- 第3步:升级带宽到 5Mbps(¥ 50-60/月)
- 第4步:引入 RDS MySQL(¥ 150-200/月)
- 第5步:最终切换到推荐配置
🚀 部署流程
🚀 部署流程
CI/CD 流水线
- 代码提交 → Git 仓库
- 自动构建 → 依赖检查 + 代码质量检查
- 自动测试 → 单元测试 + 集成测试
- 构建部署包 → Wheel 包 + 配置文件
- 部署到测试环境 → 自动化验证
- 部署到生产环境 → 人工确认后部署
🔒 安全保障
网络安全
- VPC 专有网络隔离
- 安全组白名单控制
- SSL/TLS 加密传输
访问控制
- RAM 访问控制
- SSH 密钥认证
- 操作审计日志
数据安全
- 数据加密存储
- 定期自动备份
- 跨地域容灾(可选)
📋 下一步计划
第1周(3月24日-27日)
- 阿里云产品深入调研
- 性能基准测试
- 成本优化方案
第2周(3月28日-4月1日)
- 架构设计详细方案
- 网络设计方案
- 安全设计方案
第3周(4月2日-9日)
- 部署流程详细设计
- Terraform 配置完善
- 部署脚本完善
第4周(4月10日-17日)
- 测试验证
- 运维方案完善
- 完整调研报告撰写
调研正在进行中,4月17日前将提交完整调研报告! 🚛