在腾讯云轻量应用服务器(Lighthouse)中,目前(截至2024年)官方不支持原生的“自动快照”功能(即像CVM那样可配置定时自动创建系统盘/数据盘快照的策略)。这是轻量应用服务器与标准云服务器(CVM)的一个重要区别。
不过,你可以通过以下替代方案实现类似自动快照的效果:
✅ 推荐方案:使用「自定义镜像 + 定时脚本 + 腾讯云CLI」组合实现自动化快照(备份)
⚠️ 注意:严格来说,轻量服务器不支持对运行中实例直接创建“快照”,但支持创建自定义镜像(Image)(本质是系统盘的完整备份),且可配合API/CLI实现自动化。
✅ 步骤详解(以 Linux 实例为例)
1️⃣ 前提条件
- 已开通并登录 腾讯云控制台
- 实例已绑定密钥对(SSH免密登录)
- 已为轻量服务器分配公网IP,并确保安全组放行 SSH(22端口)
- 已在本地或云服务器上安装并配置好 TencentCloud CLI(tccli)(推荐使用 v3.0+)
🔐 权限准备:
在【访问管理 CAM】→【用户】→【API密钥】中创建子用户(或使用主账号密钥),授予以下最小权限策略:{ "version": "2.0", "statement": [ { "effect": "allow", "action": [ "lighthouse:CreateBlueprint", "lighthouse:DescribeBlueprints", "lighthouse:DeleteBlueprint" ], "resource": "*" } ] }💡
Blueprint是轻量服务器中对“自定义镜像”的称呼(旧版称 Custom Image,新版统一为 Blueprint)
2️⃣ 创建自定义镜像(手动验证流程)
- 登录 轻量应用服务器控制台
- 进入「镜像」→「自定义镜像」→「创建自定义镜像」
- 选择目标实例 → 输入名称(如
auto-backup-20240501)→ 确认创建
✅ 成功后可在「自定义镜像」列表中看到状态为「可用」
3️⃣ 使用 tccli 自动化创建镜像(关键步骤)
▶ 示例命令(创建镜像)
# 创建自定义镜像(Blueprint),需指定实例ID和名称
tccli lighthouse CreateBlueprint
--InstanceId lhins-xxxxxxxx
--BlueprintName "auto-backup-$(date +%Y%m%d_%H%M)"
--BlueprintDescription "Auto backup via cron"
📌 获取实例ID方法:
- 控制台:实例详情页 → 「基本信息」→「实例 ID」(如
lhins-abc123def)- 或用 CLI 查询:
tccli lighthouse DescribeInstances --Filters '[{"Name":"instance-state","Values":["RUNNING"]}]'
▶ 清理旧镜像(可选,防配额超限)
轻量服务器默认最多保留 50 个自定义镜像,建议定期清理(如保留最近7天):
# 列出所有自定义镜像(按创建时间倒序)
tccli lighthouse DescribeBlueprints --Filters '[{"Name":"blueprint-state","Values":["NORMAL"]}]'
--OrderByKey "CreatedTime" --OrderByOrder "DESC" > blueprints.json
# 提取7天前的镜像ID(需配合 jq 解析,示例逻辑)
# (实际脚本中建议用 Python/Shell 解析 JSON 并判断 CreatedTime)
4️⃣ 设置定时任务(Linux 实例内或本地服务器执行)
✅ 推荐在一台稳定服务器(如另一台轻量/CVM)上部署定时任务:
# 编辑 crontab(每天凌晨2:00执行)
crontab -e
添加一行:
0 2 * * * /usr/bin/bash /root/scripts/lh-auto-backup.sh >> /var/log/lh-backup.log 2>&1
📌 /root/scripts/lh-auto-backup.sh 内容示例:
#!/bin/bash
export TENCENTCLOUD_SECRET_ID="YOUR_SECRET_ID"
export TENCENTCLOUD_SECRET_KEY="YOUR_SECRET_KEY"
export TENCENTCLOUD_REGION="ap-guangzhou" # 替换为你实例所在地域
INSTANCE_ID="lhins-xxxxxxxx"
# 创建带时间戳的镜像名
NAME="auto-backup-$(date +%Y%m%d_%H%M)"
# 创建镜像
echo "[$(date)] Creating blueprint: $NAME"
tccli lighthouse CreateBlueprint
--InstanceId "$INSTANCE_ID"
--BlueprintName "$NAME"
--BlueprintDescription "Auto backup $(date)"
--Region "$TENCENTCLOUD_REGION"
# 可选:删除7天前的镜像(需额外编写清理逻辑,注意避免误删)
# ...
✅ 赋予执行权限:chmod +x /root/scripts/lh-auto-backup.sh
❌ 不可行方案说明(避坑)
| 方法 | 是否可行 | 原因 |
|---|---|---|
| 控制台开启“自动快照策略” | ❌ | 轻量服务器控制台无此入口,API 也不支持 CreateSnapshots 接口(该接口属于 CVM) |
| 对数据盘单独快照 | ❌ | 轻量服务器暂不支持挂载独立云硬盘(CBS),所有存储为系统盘一体化设计 |
| 使用 CVM 快照 API 操作轻量实例 | ❌ | 资源类型不同(lighthouse vs cvm),API 不兼容 |
✅ 补充建议 & 最佳实践
- ✅ 备份频率建议:生产环境建议每日1次;若数据变更频繁,可结合 rsync + 对象存储(COS)做增量备份。
- ✅ 镜像导出(高级):可通过 镜像导出为 COS 对象 实现异地归档。
- ✅ 恢复方式:通过「自定义镜像」重装实例即可快速回滚(⚠️ 会覆盖当前系统盘,务必提前备份重要数据)。
- ✅ 监控告警:可用
tccli lighthouse DescribeBlueprints检查镜像状态,失败时触发企业微信/邮件通知。
🔗 官方参考文档
- 轻量镜像操作指南:https://cloud.tencent.com/document/product/1207/47532
- tccli 安装与配置:https://cloud.tencent.com/document/product/1207/61981
- CAM 权限策略:https://cloud.tencent.com/document/product/1207/47542
如需,我可为你提供:
- ✅ 完整可运行的 Shell 脚本(含自动清理过期镜像)
- ✅ Python 版自动化脚本(支持多实例、邮件通知、COS 归档)
- ✅ Terraform 管理蓝图生命周期(适合 DevOps 场景)
欢迎告诉我你的具体需求(如是否需要多实例支持、是否已有 COS 存储桶等),我可以为你定制方案 👇
云小栈