mcpField
A
alibabacloud-cloudbackup-ecs-file-backup-essential-edition

alibabacloud-cloudbackup-ecs-file-backup-essential-edition

github.com/aliyun云与 DevOps281161 次安装1 天前更新
代码仓库

关于 alibabacloud-cloudbackup-ecs-file-backup-essential-edition

面向 Alibaba Cloud ECS 文件的 Cloud Backup 基础版操作 Skill,用于启用备份、查看状态及恢复文件。它适用于接受每日备份和 30 天保留策略的基础文件保护场景,并对数据库、跨地域备份等情形设有适用性检查。

主要功能

  1. 01启用 ECS 文件备份
  2. 02每日自动备份并保留 30 天
  3. 03恢复误删文件
  4. 04检查备份计划与历史版本
  5. 05执行场景适用性和参数检查

适用场景

  1. 01恢复 ECS 上误删的文件
  2. 02保护个人网站或博客文件
  3. 03备份开发测试环境中的代码与配置

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aliyun/alibabacloud-aiops-skills --skill alibabacloud-cloudbackup-ecs-file-backup-essential-edition

安装后在 Claude Code 中输入/alibabacloud-cloudbackup-ecs-file-backup-essential-edition确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
cli-installation-guide.md
ram-policies.md
related-apis.md
verification-method.md

详细介绍

ECS 文件备份基础版 - 运维与查看

场景说明

ECS 文件备份基础版(ECS文件备份基础版)是阿里云云备份服务(HBR)针对 ECS 文件场景推出的基础备份产品,支持一键开通和零配置。

核心功能
功能描述
自动备份(自动备份)每日自动备份,保留 30 天
文件恢复(文件恢复)可恢复 30 天内意外删除的文件;支持文件级恢复
免费额度(免费额度)每个账号永久享有 100 GiB 块存储备份免费额度(所有地域共享)
低运维(低运维)一键开通,无需配置,自动安装备份客户端
推荐使用场景

当用户需求符合以下条件时,建议使用 ECS 文件备份基础版:

场景描述
ECS 文件数据保护需要保护或备份 ECS 文件数据,并从意外删除中恢复
接受每日备份策略接受每日备份一次、保留 30 天
经济实惠以实惠或免费的方式备份 ECS 数据;每个账号永久享有 100 GiB 免费额度(所有地域共享)
个人网站/博客意外删除图片或配置文件后可快速恢复
开发/测试环境保护代码和配置文件
小型企业应用以较低运维成本满足基本数据保护需求
不推荐的场景及替代方案
场景原因替代方案
RDS 或自建数据库备份(数据库备份)数据库文件被主进程锁定,备份可能不一致RDS 请联系 RDS 团队;MySQL/Oracle/SQL Server 请使用 云备份数据库备份
不接受安装备份客户端(不接受安装备份客户端)备份客户端会占用 ECS 的 CPU 和内存资源使用 ECS 快照(注意:不支持文件级恢复)
ECS 规格 < 1C512MB规格过低,会影响备份性能使用 ECS 快照,或先升级 ECS 规格
整机克隆/异地拉起(整机克隆/异地拉起)基础版不支持整机恢复使用 ECS 快照
跨地域/跨账号备份(跨地域/跨账号备份)基础版不支持跨地域或跨账号备份使用 云备份 ECS 文件备份标准版(企业级)
KMS 加密备份数据(KMS加密备份)基础版不支持 KMS 加密使用 云备份 ECS 文件备份标准版
自定义备份策略(自定义备份策略)基础版固定为每日备份一次、保留 30 天使用 云备份 ECS 文件备份标准版(支持自定义策略)
数据量 > 2 TB备份可能无法在 24 小时内完成联系云备份技术支持,或使用标准版
使用限制
限制描述
操作系统不支持 32 位操作系统
网络类型不支持经典网络(经典网络)ECS
存储类型仅支持块存储(块存储);不支持 NAS/OSS 等网络挂载存储
依赖服务需要云助手(云助手)服务(2017 年 12 月前购买的 ECS 需要手动安装云助手 Agent)
ECS 规格建议至少为 1 vCPU、512 MB 内存,以确保备份性能
数据量低优先级:< 600 GB;高优先级:< 2 TB

场景适用性检查(强制第一步)

严重警告 - 硬性门槛:这是所有操作前的第一步,优先级高于安装检查、凭证验证和任何工作流。 Agent 必须先完成此项检查,然后才能执行其他步骤。

决策流程:

User requests ECS backup/restore
|
+-> Check each item in "Not-Recommended Scenarios & Alternatives"
|   +-> Matches any not-recommended scenario -> Execute [HALT Flow]
|   +-> No match -> Pass, continue to "Installation Requirements"
|
+-> Not-recommended scenario keywords:
    - Database: MySQL/Oracle/SQL Server/PostgreSQL/MongoDB/Redis/database data directory
    - Full-machine: full-machine recovery/DR failover/clone instance
    - Cross-region/cross-account: remote backup/cross-account replication
    - Custom policy: hourly backup/custom retention period
    - Large data volume: data exceeds 2 TB

[HALT Flow] - 匹配到不推荐场景时必须执行:

  1. 立即停止 - 不要执行安装检查、凭证验证、参数确认或任何 CLI 命令
  2. 向用户输出警告 - 说明当前场景为何不适合 ECS File Backup Essential Edition(引用“Not-Recommended Scenarios & Alternatives”中的原因)
  3. 推荐替代方案 - 提供具体的替代产品/功能
  4. 结束当前任务 - 输出警告和替代方案后,Agent 必须停止,不得继续执行此 Skill 的任何后续步骤

唯一恢复条件:只有当用户主动且明确表示“我了解风险,但仍想使用 ECS File Backup Essential Edition”(或语义等同的表述)时,Agent 才可以继续。 以下均不属于有效确认(Agent 必须保持停止):未回复;含糊的确认(如“好的”“继续”“帮我备份”,但未提及“ECS File Backup Essential Edition”);更换话题;询问替代方案。


安装要求(强制预检查)

严重警告:执行任何核心工作流前,Agent 必须完成以下预检查。

预检查:需要 Aliyun CLI >= 3.3.3

运行 aliyun version 验证版本是否 >= 3.3.3。如果尚未安装或版本过低, 运行 curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash 进行更新, 或参阅 references/cli-installation-guide.md 获取安装说明。

aliyun version

然后[必须]运行 aliyun plugin update,确保本机上已有的任何插件始终保持最新。 [必须] CLI User-Agent — 每次调用 aliyun CLI 命令时都必须包含: --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition 启用自动安装插件:

aliyun configure set --auto-plugin-install true
预检查:AI-Mode 配置

[必须] 启用 AI-Mode — 在调用任何 CLI 命令之前运行:

aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition"

[必须] 在每个退出点禁用 AI-Mode — 无论出于何种原因(成功、失败、错误、取消),在发送最终回复之前,都必须先禁用 AI-mode。Skill 停止运行后,AI-mode 不得保持启用。

aliyun configure ai-mode disable
预检查:需要 aliyun-cli-hbr 插件 >= 0.1.3
aliyun plugin list 2>/dev/null | grep aliyun-cli-hbr

如果尚未安装该插件或版本低于 0.1.3,请安装/更新:

aliyun plugin install --names aliyun-cli-hbr

安装插件后,HBR 命令和参数名称将采用 kebab-case 命名约定(例如,使用 describe-backup-plans 而不是 DescribeBackupPlans)。


凭证验证

预检查:需要 Alibaba Cloud 凭证

安全规则:

  • 绝不以任何形式打印、回显或输出 AK/SK 值(包括部分片段或掩码形式)
  • 绝不在命令行参数、日志、对话输出或代码注释中暴露任何凭证内容
  • 绝不直接在命令行中输入 AK/SK
  • 仅使用 aliyun configure list 检查凭证状态;绝不向用户回显此命令的输出(输出可能包含凭证相关信息);Agent 只能在内部使用输出判断凭证是否有效
aliyun configure list

确认输出显示有效的配置(AK、STS 或 OAuth 身份)。

如果没有有效凭证,请先进行配置:

  1. 从 Alibaba Cloud Console 获取凭证
  2. 在终端中运行 aliyun configure 配置凭证
  3. 重新运行 aliyun configure list,确认配置成功

参数确认与验证

重要:参数确认 - 执行任何命令前,必须先与用户确认所有可自定义参数。 不要假定使用默认值;必须获得用户的明确确认。 如果用户拒绝确认或未回应确认请求,Agent 必须中止当前操作,且不得继续后续步骤。

关键 - 安全检查关卡:将任何参数嵌入 CLI 命令前,Agent 必须根据下表中的验证正则表达式验证用户提供的所有参数。 如果验证失败,Agent 必须拒绝执行命令,告知用户哪个参数无效以及预期格式,并等待用户提供有效值后重新验证。

参数必填/可选说明验证正则表达式示例
REGION_ID必填ECS 实例所在地域^[a-zA-Z0-9-]+$cn-hangzhou
INSTANCE_ID必填ECS 实例 ID^[a-zA-Z0-9-]+$i-bp1abc123def456
PLAN_ID某些操作必填备份计划 ID;暂停/恢复/取消时需要^[a-zA-Z0-9-]+$plan-abc123
VAULT_ID恢复时必填备份仓库 ID;通过 search-historical-snapshots 获取^[a-zA-Z0-9-]+$v-0001xjb123
SNAPSHOT_ID恢复时必填备份版本 ID;通过 search-historical-snapshots 获取^[a-zA-Z0-9-]+$s-0001abc123
SNAPSHOT_HASH恢复时必填备份版本哈希值;通过 search-historical-snapshots 获取^[a-zA-Z0-9-]+$sh-abc123
performanceLevel可选备份优先级:L0(默认,数据量 < 600 GB)或 L1(数据量 600 GB~2 TB)^(L0|L1)$L0
ConflictPolicy恢复时必填文件冲突策略:SKIP_THE_FILE(跳过)或 OVERWRITE_EXISTING(覆盖)^(SKIP_THE_FILE|OVERWRITE_EXISTING)$SKIP_THE_FILE
CLIENT_TOKEN恢复时必填幂等令牌;由 Agent 生成 UUID,超时重试时重复使用^[a-zA-Z0-9-]{1,64}$550e8400-e29b-41d4-a716-446655440000
keep-latest-snapshots可选是否保留最后一个备份版本:1(保留)或 0(不保留)^(0|1)$1
SOURCE_PATH恢复时可选要恢复的源文件路径^[a-zA-Z0-9/_.-]+$/home/data/file.txt
TARGET_PATH恢复时必填恢复目标目录;必须已存在^[a-zA-Z0-9/_.-]+$/tmp/restore

RAM 权限

此 Skill 需要 references/ram-policies.md 中详细说明的权限。

推荐的系统策略:AliyunHBRFullAccess


核心工作流

关键:执行以下任何工作流前,Agent 必须完成“场景适用性检查”和“安装要求(强制预检查)”中的所有步骤。 如果尚未安装 Aliyun CLI 或 aliyun-cli-hbr 插件,或其版本不符合要求,必须先安装或更新,然后才能继续。 注意:以下所有 CLI 操作均具备幂等性,可安全重试。

1. 激活备份

为指定的 ECS 实例激活 ECS 文件备份基础版。

步骤 1:启用云备份服务(首次使用)

aliyun hbr open-hbr-service \
  --endpoint hbr.aliyuncs.com \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

步骤 2:激活 ECS 实例备份

aliyun hbr create-backup-plan \
  --region <REGION_ID> \
  --edition BASIC \
  --source-type ECS_FILE \
  --instance-id <INSTANCE_ID> \
  --keep-latest-snapshots 1 \
  --options '{"performanceLevel":"<LEVEL>"}' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

此操作具备幂等性;对同一实例重复调用不会创建重复的备份计划。超时后可安全重试。

步骤 3:验证激活状态

激活和客户端安装均为异步操作;通常需要几分钟才能就绪。

使用“5. 查看 ECS 备份状态”中的状态判定逻辑进行验证。预期状态变化:Preparing -> Ready -> Backing Up


2. 暂停备份(挂起)

暂停备份计划(备份计划),同时保留现有备份数据;之后可以恢复。

步骤 1:获取备份计划 ID

aliyun hbr describe-backup-plans \
  --region <REGION_ID> \
  --edition BASIC \
  --source-type ECS_FILE \
  --filters '[{"Key":"instanceId","Values":["<INSTANCE_ID>"]}]' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

从响应中提取 PlanId。

步骤 2:暂停备份

aliyun hbr disable-backup-plan \
  --region <REGION_ID> \
  --plan-id <PLAN_ID> \
  --edition BASIC \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

3. 恢复备份

恢复之前暂停的备份计划。

aliyun hbr enable-backup-plan \
  --region <REGION_ID> \
  --plan-id <PLAN_ID> \
  --edition BASIC \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

4. 取消备份(删除)

WARNING:此操作将永久删除所有备份数据,且无法撤销!执行前必须确认用户意图。 如果用户尚未明确确认删除,Agent 必须中止操作,不得继续。

步骤 1:获取备份计划 ID

aliyun hbr describe-backup-plans \
  --region <REGION_ID> \
  --source-type ECS_FILE \
  --edition BASIC \
  --filters '[{"Key":"instanceId","Values":["<INSTANCE_ID>"]}]' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

步骤 2:删除备份计划

aliyun hbr delete-backup-plan \
  --region <REGION_ID> \
  --plan-id <PLAN_ID> \
  --edition BASIC \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

取消后,实例将不再产生费用;已删除的备份数据无法恢复。对于已删除的计划,可以重复安全调用。


5. 查看 ECS 备份状态

步骤 1:查询备份计划

aliyun hbr describe-backup-plans \
  --region <REGION_ID> \
  --edition BASIC \
  --source-type ECS_FILE \
  --filters '[{"Key":"instanceId","Values":["<INSTANCE_ID>"]}]' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

步骤 2:查询最新备份作业

aliyun hbr describe-backup-jobs-2 \
  --region <REGION_ID> \
  --edition BASIC \
  --source-type ECS_FILE \
  --filters '[{"Key":"instanceId","Values":["<INSTANCE_ID>"]}]' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

describe-backup-jobs-2 返回的备份作业按创建时间降序排列;第一条记录是最新的执行结果。

状态判定逻辑

describe-backup-plans finds no plan -> Not Activated (未激活)
describe-backup-plans finds a plan
+-> Disabled = true -> Paused (已暂停)
+-> Query describe-backup-jobs-2 for latest backup job
    +-> No backup jobs -> Preparing (准备中)
    +-> Has backup jobs (first record = latest result)
        +-> COMPLETE/PARTIAL_COMPLETE -> Backup Normal (备份正常)
        +-> RUNNING/QUEUED/CREATED -> Backing Up (备份中)
        +-> CANCELED -> Canceled (已取消)
        +-> FAILED/EXPIRED -> Backup Abnormal (备份异常); troubleshoot via describe-backup-clients

辅助查询命令

查看备份客户端状态:

aliyun hbr describe-backup-clients \
  --region <REGION_ID> \
  --client-type ECS_CLIENT \
  --instance-ids '["<INSTANCE_ID>"]' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

查看备份历史(快照列表):

aliyun hbr search-historical-snapshots \
  --region <REGION_ID> \
  --edition BASIC \
  --source-type ECS_FILE \
  --query '[{"field":"instanceId","value":"<INSTANCE_ID>","operation":"MATCH_TERM"}]' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

6. 查看免费额度和容量
aliyun hbr get-basic-statistics \
  --source-type ECS_FILE \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

关键字段:GlobalStatistics.ProtectedDataSize 是已备份 ECS 实例的块存储总容量(单位为字节)。

免费额度规则:每个账号享有 100 GiB 的额度(永久有效,所有地域共享)。超出额度的用量按量计费;计费依据为已备份 ECS 实例所挂载的块存储总容量。


7. 文件恢复
aliyun hbr create-restore-job \
  --region <REGION_ID> \
  --restore-type ECS_FILE \
  --edition BASIC \
  --source-type ECS_FILE \
  --vault-id <VAULT_ID> \
  --snapshot-id <SNAPSHOT_ID> \
  --snapshot-hash <SNAPSHOT_HASH> \
  --include '["<SOURCE_PATH>"]' \
  --target-instance-id <INSTANCE_ID> \
  --target-path <TARGET_PATH> \
  --options '{"ConflictPolicy":"<CONFLICT_POLICY>"}' \
  --client-token <UUID> \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

可以通过 search-historical-snapshots 获取 VaultId、SnapshotId 和 SnapshotHash。 如果省略 --include,则恢复快照中的所有文件。 TargetPath 必须是目标 ECS 实例上已存在的目录;否则恢复作业将报告 TARGET_NOT_EXIST 错误。 使用 OVERWRITE_EXISTING 策略将覆盖目标路径下的同名文件;执行前必须获得用户明确确认。如果用户尚未确认,Agent 必须中止恢复操作。 使用 --client-token 确保操作幂等;Agent 应生成一个 UUID 作为 ClientToken,并在超时重试时重复使用同一个令牌,以防止创建重复的恢复作业。

查看恢复进度

aliyun hbr describe-restore-jobs-2 \
  --region <REGION_ID> \
  --edition BASIC \
  --restore-type ECS_FILE \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

8. 修改计划备份时间

步骤 1:获取备份计划 ID

aliyun hbr describe-backup-plans \
  --region <REGION_ID> \
  --edition BASIC \
  --source-type ECS_FILE \
  --filters '[{"Key":"instanceId","Values":["<INSTANCE_ID>"]}]' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

步骤 2:更新备份计划

aliyun hbr update-backup-plan \
  --region <REGION_ID> \
  --plan-id <PLAN_ID> \
  --edition BASIC \
  --schedule 'I|<TIMESTAMP>|P1D' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

计划格式:I|<start_timestamp>|P1D,其中 start_timestamp 是以秒为单位的 Unix 时间戳,P1D 表示每天执行一次(Essential Edition 固定为此频率)。


9. 切换保留最后一个快照

启用后,即使所有备份版本都已超过保留期限,系统仍会保留最后一个版本,不予删除。

aliyun hbr update-backup-plan \
  --region <REGION_ID> \
  --plan-id <PLAN_ID> \
  --edition BASIC \
  --keep-latest-snapshots <0_OR_1> \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

1 = 保留最后一个备份版本(推荐);0 = 不保留;所有超过 30 天的备份点都将自动删除。


10. 调整备份执行优先级
aliyun hbr update-backup-plan \
  --region <REGION_ID> \
  --plan-id <PLAN_ID> \
  --edition BASIC \
  --options '{"performanceLevel":"<LEVEL>"}' \
  --read-timeout 60 \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cloudbackup-ecs-file-backup-essential-edition

有效值请参见“参数确认”表中的 performanceLevel;详细用例请参见 references/related-apis.md。


验证

详情请参见 references/verification-method.md。


参考资料

文档链接
CLI 安装指南references/cli-installation-guide.md
API 和 CLI 命令参考references/related-apis.md
RAM 权限策略references/ram-policies.md
验证方法references/verification-method.md
官方用户指南ECS 文件备份基础版
云备份 API 文档HBR API 参考

评论

支持 Markdown