用 AI Shell 只读查询五地域运行中 ECS:一次真实的跨地域盘点与 403 启示
今天早上,我用华为云开发者空间的 AI Shell,给自己账号下的弹性云服务器做了一次只读盘点:只问数量,不碰资源。目标很简单——五个地域里,到底各有几台处于运行中(ACTIVE)状态的 ECS。整个过程没有创建、修改或删除任何云资源,全部是查询操作。可最后的结果却比预想的有意思:一张表里既有四个 0,也有一个查不出来的 403。
一、这次查询是怎么做的
AI Shell 是华为云开发者空间里以自然语言驱动的云端命令行环境,背后是一个 AI 助手加上一套华为云查询技能,使用时不用自己拼命令行,也不用在本地装 SDK。
我给它的指令只有一句话:只读查询华北-北京四、华东-上海一、华南-广州、西南-贵阳一、华北-北京一这五个地域处于运行中(ACTIVE)状态的 ECS 实例数量,不要创建、修改或删除任何云资源,并分别列出每个地域的数量。
助手随后按顺序做了几件事:先加载 huawei-cloud-computing-query 技能,阅读 ECS 查询指南;接着运行环境检查脚本,确认 Python 3.11.4 与华为云 SDK(core、ECS、IAM)就绪、凭据有效;最后调用 list_servers_details.py 脚本,带上 --status ACTIVE 过滤条件,对五个地域逐一查询。整个过程在 Semi-Auto 模式下进行,没有执行任何写操作。
二、五地域查询结果:四个 0,一个 403
查询完成于 2026 年 11 月 8 日 05:29:41,结果如下:
| 地域 | Region ID | ACTIVE ECS 数量 | 查询状态 |
|---|---|---|---|
| 华北-北京四 | cn-north-4 | 0 | 查询成功 |
| 华东-上海一 | cn-east-3 | 0 | 查询成功 |
| 华南-广州 | cn-south-1 | 0 | 查询成功 |
| 西南-贵阳一 | cn-southwest-2 | 0 | 查询成功 |
| 华北-北京一 | cn-north-1 | —(未知) | 查询失败,403 Forbidden |
三、怎么读这份结果
先说四个 0。查询成功返回 0,意思是这些地域当前确实没有处于 ACTIVE 状态的 ECS 实例。它不等于“账号里没有任何资源”:关机、创建中、异常状态的实例不会被 --status ACTIVE 统计进来;其他服务(如 OBS、RDS)的资源也不在这次查询范围内。读结果时要先看清过滤条件,再下结论。
再说那个 403。华北-北京一返回的是 403 Forbidden,错误信息是“The IAM user is forbidden in the currently selected region”,即当前 IAM 用户在该地域没有访问权限。查询失败不等于数量是 0,这个地域的结果是未知,只能如实记为“未知”,不能写成 0。值得一提的是,这已经是这个地域连续几天返回 403,说明这是一个稳定的权限问题,而不是偶发的网络抖动。
四、403 背后的 IAM 地域权限
很多新手第一次见到地域相关的 403 会以为是账号或密码错了,其实不是。华为云的权限是按地域生效的:同一个 IAM 用户,在有授权的地域可以正常查询,在没有授权的地域就会被拒绝。解决办法也不在改密码,而在 IAM 控制台里检查该用户的授权范围,为其授予 cn-north-1 地域的 ECS 查询权限,或者由管理员按最小权限原则补充授权。
这个设计本身是好事:权限按地域收敛,意味着即使某个地域的凭据或配置出了问题,影响也被限制在该地域之内。做多地域巡检时,顺手把每个地域的返回状态都记下来,本身就是一次权限健康检查。
五、给新手的三点建议
第一,养成“只读先行”的习惯。盘点类工作先用只读查询弄清现状,确认数量、状态和地域分布之后,再决定要不要做变更。自然语言助手能帮你把“查一下”这类需求快速落地,但指令里要写清“只读、不要创建或修改”,让助手的行动边界一开始就是明确的。
第二,区分“0”和“查不到”。一次查询可能返回成功、空结果,也可能返回失败,每种状态的含义都不同。把失败写成 0,是巡检报告里最容易出现的错误;正确的做法是把状态和数量分开记录,失败的写清楚原因。
第三,把地域当作一等公民。选地域不是填空题,而是架构决策:不同地域的资源价格、可用区、合规要求和权限配置都可能不同。建资源之前先确认自己在该地域有没有权限,建完之后再用同样的只读查询回查一遍,闭环才算完整。
结语
这次盘点总共只花了几分钟,没有动任何一台云服务器,却得到了一张诚实的多地域“体检表”:四个地域是确定的 0,一个地域是需要补授权的未知。工具的价值不只是省下敲命令的时间,更在于让每一次查询都可复现、可记录、可复核。对刚接触华为云的开发者来说,从这样一次只读查询开始,是熟悉地域、权限和 AI Shell 的好起点。
- 点赞
- 收藏
- 关注作者
评论(0)