通过Ansible在IBM Cloud创建Graduated tier的IBM AppID实例报错求助
IBM Cloud AppID实例创建问题(Graduated Tier/Standard计划失败)
问题描述
尝试在IBM Cloud中通过Ansible创建Graduated tier/Standard计划的AppID实例,仅lite计划可成功,使用付费计划时触发404错误,怀疑模块是否仅支持lite计划。
错误详情
fatal: [localhost]: FAILED! => {"changed": false, "msg": "", "rc": 1, "resource": {"_name": "ansible_testinstance2", "_type": "ibm_resource_instance", "target": "ibm_resource_instance.ansible_testinstance2"}, "stderr": "\nError: [ERROR] Error retrieving deployment for plan graduated tier : Request failed with status code: 404, ServerErrorResponse: {"message":"Get object request for an invalid id : deployment","code":404,"global_transaction_id":"gend-1243016054006513672"}\n\n\n on ibm_resource_instance_ansible_testinstance2.tf line 1, in resource "ibm_resource_instance" "ansible_testinstance2":\n 1: resource ibm_resource_instance "ansible_testinstance2" {\n\n\n", "stderr_lines": ["", "Error: [ERROR] Error retrieving deployment for plan graduated tier : Request failed with status code: 404, ServerErrorResponse: {"message":"Get object request for an invalid id : deployment","code":404,"global_transaction_id":"gend-1243016054006513672"}", "", "", " on ibm_resource_instance_ansible_testinstance2.tf line 1, in resource "ibm_resource_instance" "ansible_testinstance2":", " 1: resource ibm_resource_instance "ansible_testinstance2" {", "", ""], "stdout": "ibm_resource_instance.ansible_testinstance2: Creating...\n", "stdout_lines": ["ibm_resource_instance.ansible_testinstance2: Creating..."]}
解决方案
这个错误并非模块仅支持lite计划,核心问题是计划ID取值错误:
- IBM Cloud AppID的付费计划内部标识与控制台显示名称不一致:
- 控制台显示的"graduated tier"对应内部ID为
graduated-tier(短横线连接,无空格) - "standard"计划的内部ID为
standard(与显示名称一致,但需确认区域支持)
- 控制台显示的"graduated tier"对应内部ID为
- 你使用的带空格的"graduated tier"是控制台展示名称,不是Ansible模块/API所需的内部ID,导致模块无法匹配到对应的部署配置,触发404错误。
修正步骤:
- 修改playbook中
plan参数值为graduated-tier(替换原带空格的"graduated tier") - 确认目标区域支持AppID付费计划(部分区域可能未开放付费实例创建)
- 检查IBM Cloud账号权限:确保账号拥有创建付费资源实例的权限,且无额度限制
内容的提问来源于stack exchange,提问作者A.PRADEEP ANNAMALAI
相关产品推荐
相关产品推荐

