阿里云 Flink 实例管理
通过一个包装脚本以严格的创建/查询范围操作阿里云 Flink VVP 资源。
范围与入口
- 始终通过以下方式运行操作:
python scripts/instance_ops.py <command> [options]
- 允许的命令:
create、create_namespace、describe、describe_regions、describe_zones、describe_namespaces、list_tags - 范围外:更新/删除、Flink SQL/作业运行时操作,以及非 Flink 服务
触发规则
当提示涉及 Flink 实例/命名空间生命周期操作时使用本 Skill。
- 正向意图示例:
- "Create a Flink instance in cn-beijing"
- "List Flink instances and status"
- "Describe namespaces for instance f-cn-xxx"
- "查询 Flink 实例标签"
- "Flink 可用区有哪些"
- 反向意图示例:
- ECS/Kafka/OSS/DataWorks 操作
- 通用问题(天气、翻译等)
- Flink SQL / Flink 作业编写或运行时调优
- 模糊提示:
- 问一个澄清问题:实例/命名空间管理 vs SQL/作业操作。
意图到命令映射
| 用户意图 | 命令 |
|---|---|
| 查询地域中所有实例 | describe --region_id <REGION> |
| 创建实例 | create ... --confirm |
| 查询实例下的命名空间 | describe_namespaces --region_id <REGION> --instance_id <ID> |
| 创建命名空间 | create_namespace ... --confirm |
| 查询支持的地域/可用区 | describe_regions / describe_zones --region_id <REGION> |
| 查询标签 | list_tags --region_id <REGION> --resource_type <TYPE> [--resource_ids ...] |
操作规则
- 创建命令必须确认
create和create_namespace必须包含--confirm。
- 用回读验证创建结果
- 不要仅凭创建响应就断定成功。
- 重试策略严格
- 同一命令最多 2 次尝试(初次 + 一次修正重试)。
- 不自动切换操作
- 如果操作失败,未经用户批准不要切换到不同操作。
- 生命周期目标锁定
- 在
create -> create_namespace流程中,命名空间必须针对同一新创建的InstanceId,除非用户批准回退。
- 命名空间预检查必需
create_namespace之前,检查实例状态/资源和现有命名空间分配。
- 不暴露密钥
- 不要输出或索取明文 AK/SK。使用默认凭证链指导。
- 不发明参数
- 绝不捏造 VPC/VSwitch/实例 ID。
- 保留可审计的确认证据
- 生命周期输出必须包含
SafetyCheckRequired或显式--confirm证据。
- 生命周期流程不允许部分完成声明
- 对于需要
create和create_namespace的流程,只有两个创建操作都成功时整体状态才能为completed。
- 不自动扩容
- 如果
create_namespace因资源不足失败,清楚报告并请用户在本 Skill 范围外手动扩容资源。
执行协议
步骤 1:分类请求
- 范围内的 Flink 实例/命名空间/标签/地域/可用区创建/查询 -> 继续。
- 范围外或非 Flink -> 拒绝或带解释路由。
步骤 2:校验参数
- 应用
references/parameter-validation.md。 - 如果缺少必需参数,询问用户或返回清晰的补救措施。
步骤 3:执行命令
- 查询命令:除非瞬时查询错误,否则运行一次。
- 创建命令:构造最终命令字符串并在执行前验证
--confirm存在。
步骤 4:验证创建结果
- 对于
create:用describe --region_id <REGION>验证。 - 对于
create_namespace:用describe_namespaces --region_id <REGION> --instance_id <ID>验证。 - 在断定创建尚未反映之前,最多进行 3 次读取检查并短暂退避。
- 对于链式
create -> create_namespace: - 每 30 秒轮询同一
InstanceId的describe --region_id <REGION> - 最长等待:10 分钟
- 如果仍未
RUNNING,停止并提供下一步动作(等待/稍后重试) - 未经用户明确批准不要切换到另一实例
- 如果命名空间创建失败,将生命周期链标记为
failed/not_ready,而非completed - 对于
InsufficientResources,请用户手动扩容实例并稍后重试
关键参考
- 从这里开始:
references/README.mdreferences/quick-start.mdreferences/trigger-recognition-guide.mdreferences/core-execution-flow.mdreferences/command-templates.md
| 文档 | 用途 |
|---|---|
references/parameter-validation.md | 执行前校验检查清单 |
references/e2e-playbooks.md | 完整执行序列 |
references/common-failures.md | 典型错误和修复 |
references/required-confirmation-model.md | 确认门禁规则 |
references/instance-state-management.md | 实例状态和就绪检查 |
references/output-handling.md | 输出解析和重试策略 |
references/verification-method.md | 创建/查询后的验证模式 |
references/acceptance-criteria.md | 正常操作的完成检查清单 |
references/python-environment-setup.md | Python 依赖和认证设置 |
references/cli-installation-guide.md | Aliyun CLI 诊断设置 |
references/ram-policies.md | 所需 RAM 权限 |
references/related-apis.md | API 和命令映射 |
输出格式
所有命令返回 JSON:
{
"success": true,
"operation": "<command>",
"confirmation_check": {
"required_flag": "--confirm",
"provided": true,
"status": "passed"
},
"data": {},
"request_id": "..."
}
confirmation_check 出现在创建操作上,用于可审计的安全证据。
退出码:0 = 成功,1 = 错误。
阿里云skills
◯ 评论 0