创建RapidFS实例前校验
更新时间:2026-06-17
描述
本接口用于在创建 RapidFS 实例前,检查库存、规格、VPC/子网 是否满足下单条件,期望用户调用该接口以避免下单失败。
API Explorer
去调试
您可以在 API Explorer 中直接运行该接口,免去您计算签名的困扰。运行成功后,API Explorer 可以自动生成 SDK 代码示例。
请求结构
Plain Text
1POST /v{version}/instance?action=CheckBeforeCreateInstance HTTP/1.1
2Host: rapidfs.bj.baidubce.com
3Authorization: authorization string
4
5{
6 "zone": "zoneB",
7 "vpcId": "vpc-znt4cwv6z817",
8 "subnetId": "sbn-p69syq5etyp5",
9 "managedMode": "MasterManaged",
10 "metaSpec": "M1",
11 "dataSpec": "Basic",
12 "type": "BCC",
13 "capacityTiB": 3,
14 "cceClusterId": "cce-gv45s2cp",
15 "aihcResourcePoolId": "aihc-hk25ilq7xcfd",
16 "k8sControllerId": "controller-id",
17 "k8sControllerToken": "controller-token"
18}
请求头域
除公共头域外,无其他特殊头域。
请求参数
| 参数名称 | 类型 | 是否必需 | 参数位置 | 描述 |
|---|---|---|---|---|
| version | String | 是 | URL参数 | API版本号 |
| zone | String | 是 | RequestBody参数 | 可用区,ZoneA,ZoneB …… |
| vpcId | String | 是 | RequestBody参数 | RapidFS 实例所在 vpc,短 ID |
| subnetId | String | 是 | RequestBody参数 | RapidFS 实例所在子网,短 ID |
| managedMode | String | 否 | RequestBody参数 | RapidFS 实例部署模式,枚举值: • FullyManaged:全托管部署模式,适合无闲置存储资源、超大规模或追求高稳定性的业务。该模式下,RapidFS 产品完全管理实例,无需用户运维; • MasterManaged:Master 托管部署模式,适合有闲置存储资源、成本敏感且具备一定运维能力的业务。 |
| metaSpec | String | 否 | RequestBody参数 | 元数据规格,当前仅在 MasterManaged 部署模式下生效,枚举值: • M1:适用于文件数在 10 亿,Cache节点上限 50 个,单个Cache节点可挂载数据盘上限 4 个的场景; • M2:适用于文件数在 50 亿,Cache节点上限 400 个,单个Cache节点可挂载数据盘上限 8 个的场景。 |
| dataSpec | String | 否 | RequestBody参数 | 数据规格,当前仅在 FullyManaged 部署模式下生效,枚举值: • Basic:数据性能基线为 100MB/s/TiB; • Capacity:数据性能基线为 200MB/s/TiB; |
| type | String | 否 | RequestBody参数 | MasterManaged 部署模式下,用户运维管理的缓存接入类型,仅 MasterManaged 部署模式时有效,枚举值如下: • BCC:云服务器 BCC,表示用户的缓存节点直接部署在云服务器 BCC 上; • IDC:自建数据中心,表示用户的缓存节点直接部署在用户 IDC 服务器上;; • CCE:Cloud Container Engine, 容器引擎 CCE,表示用户的缓存节点通过容器形式部署在 CCE 集群中; • K8S:自有 Kubernetes 容器服务,厂内 EKS/自建 K8s,表示用户的缓存节点通过容器形式部署在厂内 EKS/自建 K8s 集群中; • AIHC:AI Heterogeneous Compute,百舸 AIHC,表示用户的缓存节点通过容器形式部署在百舸集群中,当前仅支持百舸全托管资源池。 |
| capacityTiB | Int | 否 | RequestBody参数 | FullyManaged 部署模式下必填,表示购买的缓存容量,单位 TiB。不超过 DescribeSpecs 接口返回的可购买的最大容量。 |
| cceClusterId | String | 否 | RequestBody参数 | MasterManaged 部署模式下,用户运维管理的缓存接入类型 type 为 CCE 时必填,为容器引擎 CCE 集群 ID。 |
| aihcResourcePoolId | String | 否 | RequestBody参数 | MasterManaged 部署模式下,用户运维管理的缓存接入类型 type 为 AIHC 时必填,为 AIHC 全托管资源池 ID。 |
| k8sControllerId | String | 否 | RequestBody参数 | MasterManaged 部署模式下,用户运维管理的缓存接入类型 type 为 K8S 时必填,为 K8s 集群内 RapidFS 缓存控制器 ID;需要在 controller 安装之后,通过 K8s 命令行查询获取:kubectl get cm -n kube-system rapidfs-cache-service-config -o yaml |
| k8sControllerToken | String | 否 | RequestBody参数 | MasterManaged 部署模式下,用户运维管理的缓存接入类型 type 为 K8S 时必填,为 K8s 集群内 RapidFS 缓存控制器 Token;需要在 controller 安装之后,通过 K8s 命令行 get controller 查询获取:kubectl get cm -n kube-system rapidfs-cache-service-config -o yaml该字段需要需要基于请求 header x-bce-accesskey 对应的 secretkey 进行加密传输,详见密码加密传输规范定义。可参考 bce-python-sdk aes128_encrypt_16char_key()函数实现。 |
返回状态码
成功返回200,失败返回见错误码。
返回头域
除公共头域外,无其他特殊头域。
返回参数
| 参数名称 | 类型 | 描述 |
|---|---|---|
| pass | boolean | 是否通过校验 |
| errInfo | ErrInfo | 具体错误信息,见数据类型ErrInfo |
请求示例
Plain Text
1POST /v2/instance?action=CheckBeforeCreateInstance HTTP/1.1
2Host: rapidfs.bj.baidubce.com
3Authorization: authorization string
4{
5 "capacityTiB": 3,
6 "vpcId": "vpc-znt4cwv6z817",
7 "zone": "zoneD",
8 "managedMode": "FullyManaged",
9 "subnetId": "sbn-p69syq5etyp5",
10 "dataSpec": "Basic"
11}
返回示例
Plain Text
1HTTP/1.1 200 OK
2Content-Type: application/json;charset=UTF-8
3x-bce-request-id: d8752367-38e8-45e4-b4c7-e53be3137ce5
4{
5 "pass": true,
6 "errInfo": {
7 "errCode": "",
8 "errMsg": ""
9 }
10}
常见错误如下:
| 错误返回 | 解释 |
|---|---|
| { "errCode": "InsufficientInventory_bcc", "errMsg": "当前购买数量已达到可购买库存,请刷新后重试"} | 计算资源不足:指用户购买的容量超过当前可用库存,此时需联系资源账户管理员进行资源预约。若遇计算资源不足提示,建议优先通过管理员协调扩容或调整资源配额,同时可查询其他可用区的库存状态,系统会实时更新库存数据。 |
| { "errCode": "InsufficientInventory_vip" "errMsg": "当前子网可用ip数量不足,请重新选择子网"} | IP资源不足:指定子网内可用IP数量低于系统最低要求。请更换子网或扩容子网可用 IP。 |
| { "errCode": "InvalidType" "errMsg": "托管实例类型无效"} | 托管实例类型不属于 BCC、IDC、K8S、CCE、AIHC 其中之一 |
| { "errCode": "InvalidCceClusterId" "errMsg": "CCE 集群 ID 无效"} | CCE 集群 ID 格式错误,或用户无该 CCE 集群权限 |
| { "errCode": "InvalidAihcResourcePoolId" "errMsg": "AIHC 全托管资源池 ID 无效"} | AIHC 全托管资源池 ID 格式错误,或用户无该全托管资源池权限 |
| { "errCode": "AihcResourcePoolAlreadyBound" "errMsg": "该资源池已绑定RapidFS实例,请更换其他资源池"} | AIHC 全托管资源池已绑定其他 RapidFS 实例,需要更换其他百舸资源池 ID |
| { "errCode": "InvalidK8sControllerId" "errMsg": "K8s 集群内 RapidFS 缓存控制器 ID 无效"} | K8s 集群内 RapidFS 缓存控制器 ID 无效,可能是缓存控制器 ID 格式错误,或该 K8S 集群内还未安装 RapidFS 相应组件 |
| { "errCode": "InvalidK8sControllerToken" "errMsg": "K8s 集群内 RapidFS 缓存控制器 Token 无效"} | K8s 集群内 RapidFS 缓存控制器 Token 无效,可能是缓存控制器 Token 格式错误,或该缓存控制器 Token 和 K8s集群内 RapidFS 缓存控制器 ID 不匹配 |
| { "errCode": "K8sControllerTokenExpired" "errMsg": "K8s 集群内 RapidFS 缓存控制器 Token 过期"} | K8s 集群内 RapidFS 缓存控制器 Token 过期,请重新获取 |
评价此篇文章
