创建一个文件系统。
接口说明
-
创建文件系统实例需要通过实名认证。具体操作,请参见账号实名认证。
-
调用此接口将自动创建操作所需的 NAS 服务关联角色。更多信息,请参见管理 NAS 服务关联角色。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
nas:CreateFileSystem | create |
|
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
FileSystemType | string | 否 | 文件系统类型。 取值:
说明
仅中国站支持 CPFS 文件系统。
| standard |
ChargeType | string | 否 | 计费类型。 取值:
| PayAsYouGo |
Duration | integer | 否 | 包年包月时长。 单位:月,当 ChargeType=Subscription 时必填且有效。 当包年包月实例到期时未进行续费,实例到期会自动释放。 | 1 |
Capacity | long | 否 | 文件系统容量。单位:GiB。 当 FileSystemType=extreme 或 cpfs 时必填且有效。 可选值请参考购买页面的实际规格: | 100 |
Bandwidth | long | 否 | 150 | |
StorageType | string | 是 | 存储类型。
| Performance |
ZoneId | string | 否 | 可用区 ID。 可用区是指在同一地域内,电力和网络互相独立的物理区域。 当 FileSystemType=standard 时,该参数非必选,默认根据 ProtocolType 及 StorageType 配置随机选择一个符合条件的可用区。 当 FileSystemType=extreme 或 FileSystemType=cpfs 时,该参数必选。 说明
| cn-hangzhou-b |
ProtocolType | string | 是 | 文件传输协议类型。
| NFS |
EncryptType | integer | 否 | 文件系统是否加密。 使用 KMS 服务托管密钥,对文件系统落盘数据进行加密存储。在读写加密数据时,无需解密。 取值:
说明
| 1 |
SnapshotId | string | 否 | 快照 ID。 仅支持极速型 NAS。 说明
通过快照创建文件系统,创建的文件系统版本和快照源文件系统版本一致。例如:快照的源文件系统版本是 1,需要创建版本 2 的文件系统,可以先通过快照创建一个文件系统 A,然后再创建一个满足版本 2 配置的文件系统 B,把文件系统 A 中的数据拷贝至文件系统 B,拷贝完成后把业务迁移到文件系统 B 即可。
| s-xxx |
VpcId | string | 否 | 专有网络 ID。 当 FileSystemType=cpfs 时,必须配置此参数。 当 FileSystemType=standard 或 extreme 时,此参数为接口预留参数,暂未生效,您无需配置。 | 无 |
VSwitchId | string | 否 | 交换机 ID。 当 FileSystemType=cpfs 时,必须配置此参数。 当 FileSystemType=standard 或 extreme 时,此参数为接口预留参数,暂未生效,您无需配置。 | 无 |
Description | string | 否 | 文件系统描述。 限制:
| 此文件系统的描述。 |
ClientToken | string | 否 | 保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符,且不能超过 64 个字符。更多信息,请参见如何保证幂等性。 说明
若您未指定,则系统自动使用 API 请求的 RequestId 作为 ClientToken 标识。每次 API 请求的 RequestId 可能不一样。
| 123e4567-e89b-12d3-a456-42665544**** |
KmsKeyId | string | 否 | KMS 密钥 ID。 仅当 EncryptType=2 时该参数必填。 | 无 |
DryRun | boolean | 否 | 是否对此次创建请求执行预检。 预检操作会帮助您检查参数有效性、校验库存等,并不会实际创建实例,也不会产生费用。 取值:
| true |
ResourceGroupId | string | 否 | 资源组 ID。 您可以通过资源管理控制台查看资源组 ID。 | rg-acfmwavnfdf**** |
关于 API 幂等性,您需要注意以下事项:
由于 CreateFileSystem 接口涉及云资源的创建和费用,您在调用该 API 时,如果发生请求超时或服务端内部错误,客户端可能会尝试重发请求。建议您在请求中设置 ClientToken 参数以避免因多次重试导致的重复下单的问题。
ClientToken 参数的详细信息如下所示:
- ClientToken 是一个由客户端生成的唯一的、大小写敏感、不超过 64 个 ASCII 字符的字符串。例如:
ClientToken=123e4567-e89b-12d3-a456-42665544****
- 如果您提供了一个已经使用过的 ClientToken,但其他请求参数有变化,则 NAS 会返回 IdempotentParameterMismatch 的错误代码。
-
添加了 ClientToken 参数后:
- 返回结果是 200 HTTPCode 时,重试后客户端可以得到与上次相同的结果,但对您的服务端状态没有影响。
- 返回结果是 4xx HTTPCode 时,如果错误信息没有表明 try it later 类似的信息,重试永远不会成功,您需要根据错误信息排查问题后修改请求参数后再重试请求。
- 返回结果是 5xx HTTPCode 时,表明请求可能是发生网络超时或服务端内部错误,您可以重新发送同一个请求(必须包含相同 ClientToken 和业务请求参数)以确认请求结果。
-
ClientToken 有效期为 30 天。
返回参数
示例
正常返回示例
JSON
格式
{
"RequestId": "98696EF0-1607-4E9D-B01D-F20930B6****",
"FileSystemId": "1ca404****"
}
错误码
HTTP status code | 错误码 | 错误信息 | 描述 |
---|---|---|---|
202 | RequestAccepted | The request has been accepted by the server. | 请求已被后端接受。 |
400 | IdempotentParameterMismatch | The same client token was passed in to different parameters. | 相同的ClientToken传入了不同的参数。 |
400 | InvalidParameter.KmsServiceNotEnabled | Key Management Service is not enabled. | 未启用KMS服务。 |
400 | InvalidParameter.KmsKeyIdNotFound | The KMS key ID does not exist. | - |
400 | InvalidParameter.InvalidKmsKeyId | The KMS key ID is invalid. | - |
400 | DryRunOperation | The request is validated with DryRun flag set. | 请求校验通过。 |
400 | SubAccount.NoExtremeSLRPermission | The RAM user does not have the permission to create service linked role AliyunServiceRoleForNasExtreme. Please authorize the RAM user the permission ram:CreateServiceLinkedRole. | 当前RAM用户没有权限创建AliyunServiceRoleForNasExtreme SLR角色,请授权RAM用户ram:CreateServiceLinkedRole权限。 |
400 | SubAccount.NoStandardSLRPermission | The RAM user does not have the permission to create service linked role AliyunServiceRoleForNasStandard. Please authorize the RAM user the permission ram:CreateServiceLinkedRole. | 当前RAM用户没有权限创建AliyunServiceRoleForNasStandard SLR角色,请授权RAM用户ram:CreateServiceLinkedRole权限。 |
400 | SubAccount.NoEncryptionSLRPermission | The RAM user does not have the permission to create service linked role AliyunServiceRoleForNasEncryption. Please authorize the RAM user the permission ram:CreateServiceLinkedRole. | 当前RAM用户没有权限创建AliyunServiceRoleForNasEncryption SLR角色,请授权RAM用户ram:CreateServiceLinkedRole权限。 |
400 | InvalidParam.NotSupportBYOK | The specified file system type does not support the BYOK encryption function. | 指定文件系统类型不支持用户管理密钥(KMS)加密。 |
400 | MissingParameter.KmsKeyId | When parameter EncryptType equals 2, the parameter KmsKeyId is mandatory for your request. | 当加密类型为用户管理密钥(KMS)时,KmsKeyId参数必填。 |
403 | OperationDenied.InvalidState | The operation is not permitted when the status is processing. | 状态处理中不允许此操作。 |
403 | InvalidFileSystem.AlreadyExisted | The specified file system already exists. | 指定的文件系统已存在。 |
403 | Resource.OutOfStock | The inventory of the specified zone is insufficient. | 指定的可用区库存不足。 |
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2024-01-25 | OpenAPI 错误码发生变更 | 查看变更详情 |
2023-12-26 | OpenAPI 错误码发生变更、OpenAPI 入参发生变更 | 查看变更详情 |