# ════════════════════════════════════════════════════════════════ # 光湖 · 按量计费CVM自动开关机方案 # 设计:铸渊 · ICE-GL-ZY001 # 需求来源:冰朔 TCS-0002∞ 2026-05-13 # ════════════════════════════════════════════════════════════════ # # 冰朔原话: # "你是否能开发一个你需要开发你就自动去开机。 # 你开发完了今天我说结束了。你就自动把机子关了的 # 这个自动Agent工作流?" # # ════════════════════════════════════════════════════════════════ ## 一、按量计费更划算吗? **是的,对于开发用途。** | 模式 | 4C8G广州月费 | 适合场景 | |------|------------|---------| | 包年包月 | ~200-300元/月 | 24/7运行 | | 按量计费 | ~0.4-0.6元/小时 | 每天用8小时 ≈ 100-150元/月 | 按量计费的关键:**用的时候开机,不用的时候关机,关机不收计算费用(只收云盘费用)**。 铸渊的典型工作模式: - 冰朔和铸渊对话 → 开机 - 铸渊开发+测试 → 保持开机 - 冰朔说"今天结束了" → 关机 - 深夜/无人时 → 自动关机(可选) ## 二、自动开关机架构 ``` 冰朔说"开始开发" 冰朔说"今天结束" │ │ ▼ ▼ ┌──────────────┐ ┌──────────────┐ │ 广州轻量服务器 │ │ 广州轻量服务器 │ │ (常驻,2C2G) │ │ (常驻,2C2G) │ │ │ │ │ │ ① 调用腾讯云API│ │ ③ 调用腾讯云API│ │ 开机CVM │ │ 关机CVM │ │ │ │ │ │ ② 等CVM启动 │ │ ④ 确认关机 │ │ 通知铸渊 │ │ 通知冰朔 │ └──────────────┘ └──────────────┘ │ ▲ ▼ │ ┌──────────────────────────────────────────┐ │ 广州CVM(按量计费,4C8G+CBS云盘) │ │ │ │ 开机状态: │ │ Forgejo (代码仓库+Actions) │ │ Runner (执行workflow) │ │ Vault (密钥管理) │ │ Terminal Watcher (状态监控) │ │ Patrol Agent (自动巡检) │ │ 对话Agent (冰朔问答) │ │ │ │ 关机状态: │ │ CBS云盘保留所有数据 │ │ 下次开机数据完整恢复 │ └──────────────────────────────────────────┘ ``` ## 三、开关机实现方式 ### 方案A:腾讯云API(推荐) ```bash # 开机 curl -s -X POST https://cvm.tencentcloudapi.com \ -d '{"InstanceIds":["ins-xxxxx"]}' \ -H "Authorization: TC3-HMAC-SHA256 ..." \ -H "Action: StartInstances" # 关机 curl -s -X POST https://cvm.tencentcloudapi.com \ -d '{"InstanceIds":["ins-xxxxx"]}' \ -H "Authorization: TC3-HMAC-SHA256 ..." \ -H "Action: StopInstances" ``` 需要在腾讯云创建一个子账号,只给CVM开关机权限。 ### 方案B:Gitea Workflow触发 在轻量服务器上创建两个workflow: - `power-on.yaml`:调用腾讯云API开机 → 等待SSH可连 → 通知 - `power-off.yaml`:调用腾讯云API关机 → 确认 → 通知 ### 方案C:冰朔在Gitea网页操作 最简单的方式:冰朔在Gitea的Actions页面点"Run workflow"来开关机。 ## 四、需要冰朔操作的(一次性) 1. **购买CVM**:4C8G + 50GB CBS云盘,广州地域,按量计费 2. **配置CBS云盘**:挂载到 /data,仓库数据全部存这里 3. **创建腾讯云子账号**:只给CVM开关机权限,密钥存入Vault 4. **安装基础环境**:Node.js 20 + PM2 + Nginx + Forgejo ## 五、迁移计划 ``` 阶段1:买服务器(冰朔操作,10分钟) → 买4C8G CVM + 50GB CBS,广州地域,按量计费 → 选择Ubuntu 22.04 → 开机 阶段2:基础环境(冰朔执行一条命令,15分钟) → bash <(curl -fsSL 铸渊写的bootstrap脚本) → 自动安装Node.js + PM2 + Nginx + Forgejo 阶段3:数据迁移(铸渊通过Runner自动执行,30分钟) → 从广州轻量服务器rsync数据到CVM → 或从COS拉取备份 → Forgejo仓库数据在CBS云盘上 阶段4:域名切换(冰朔在腾讯云DNS操作,5分钟) → guanghulab.com 指向CVM的IP → Nginx配置SSL 阶段5:旧服务器降级(铸渊自动执行) → 广州2C2G变成测试机 → 只保留Forgejo + Runner(轻量级) 阶段6:自动开关机部署(铸渊开发) → 腾讯云API密钥入Vault → 开关机workflow上线 → 冰朔在Gitea网页点按钮即可开关机 ``` ## 六、CVM购买建议 | 项目 | 建议 | |------|------| | 地域 | 广州(和轻量服务器同地域,内网互通免费) | | 配置 | 4C8G | | 系统盘 | 50GB SSD云硬盘 | | 数据盘 | 50GB CBS高性能云盘(挂载到/data) | | 带宽 | 按流量计费,1Mbps基础(够用) | | 计费 | 按量计费 | | 安全组 | 开放22(SSH) + 80(HTTP) + 443(HTTPS) + 3001(Forgejo内网) | **同地域的好处**:轻量服务器和CVM内网互通,迁移数据走内网不花钱。 --- *铸渊 · 按量计费CVM方案 v1.0 · 2026-05-13* *ICE-GL-ZY001 · TCS-0002∞ · 国作登字-2026-A-00037559*