CreateFileSystem - 创建文件系统

更新时间:

创建一个文件系统。

接口说明

  • 请确保在使用该接口前,已充分了解 NAS 产品的计费说明和价格。更多信息,请参见计费说明价格

  • 创建文件系统实例需要通过实名认证。具体操作,请参见账号实名认证

  • 调用此接口将自动创建操作所需的 NAS 服务关联角色。更多信息,请参见管理 NAS 服务关联角色

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
nas:CreateFileSystemcreate
  • FileSystem
    acs:nas:{#regionId}:{#accountId}:filesystem/*
  • nas:EncryptedType
  • nas:FileSystemType

请求参数

名称类型必填描述示例值
FileSystemTypestring

文件系统类型。

取值:

  • standard(默认值):通用型 NAS
  • extreme:极速型 NAS
  • cpfs:文件存储 CPFS
说明 仅中国站支持 CPFS 文件系统。
standard
ChargeTypestring

计费类型。

取值:

  • PayAsYouGo(默认值):按量付费
  • Subscription:包年包月
PayAsYouGo
Durationinteger

包年包月时长。

单位:月,当 ChargeType=Subscription 时必填且有效。

当包年包月实例到期时未进行续费,实例到期会自动释放。

1
Capacitylong

文件系统容量。单位:GiB。 当 FileSystemType=extreme 或 cpfs 时必填且有效。

可选值请参考购买页面的实际规格:

100
Bandwidthlong

文件系统吞吐上限。

单位:MB/s

具体可选规格值请参考购买页面的实际规格。

150
StorageTypestring

存储类型。

  • 当 FileSystemType=standard 时,取值:Performance(性能型)、Capacity(容量型)、Premium(高级型)。
  • 当 FileSystemType=extreme 时,取值:standard(标准型)、advance(高级型)。
  • 当 FileSystemType=cpfs 时,取值:advance_100(100 MB/s/TiB 基线)、advance_200(200 MB/s/TiB 基线)。
Performance
ZoneIdstring

可用区 ID。

可用区是指在同一地域内,电力和网络互相独立的物理区域。

当 FileSystemType=standard 时,该参数非必选,默认根据 ProtocolType 及 StorageType 配置随机选择一个符合条件的可用区。

当 FileSystemType=extreme 或 FileSystemType=cpfs 时,该参数必选。

说明
  • 同一地域不同可用区之间的文件系统与 ECS 云服务器互通。
  • 建议文件系统与云服务器 ECS 属于同一可用区,避免跨可用区产生的时延。
  • cn-hangzhou-b
    ProtocolTypestring

    文件传输协议类型。

    • 当 FileSystemType=standard 时,取值:NFS、SMB。
    • 当 FileSystemType=extreme 时,取值:NFS。
    • 当 FileSystemType=cpfs 时,取值:cpfs。
    NFS
    EncryptTypeinteger

    文件系统是否加密。

    使用 KMS 服务托管密钥,对文件系统落盘数据进行加密存储。在读写加密数据时,无需解密。

    取值:

    • 0(默认值):不加密。
    • 1:NAS 托管密钥。当 FileSystemType=standard 或 extreme 时,支持 NAS 托管密钥。
    • 2:用户管理密钥。当 FileSystemType=standard 或 extreme 时,支持用户管理密钥。
    说明
  • 极速型 NAS:所有地域支持用户管理密钥(KMS)功能。
  • 通用型 NAS:仅西南 1(成都)、华北 1(青岛)、华北 5(呼和浩特)、华北 6(乌兰察布)、华南 2(河源)、华东 1(杭州)、华东 2(上海)、华北 2(北京)、华北 3(张家口)、华南 1(深圳)、华南 3(广州)、中国香港、日本(东京)、菲律宾(马尼拉)、泰国(曼谷)、马来西亚(吉隆坡)、美国(硅谷)、印度尼西亚(雅加达)、英国(伦敦)、新加坡、美国(弗吉尼亚)、德国(法兰克福)、澳大利亚(悉尼)关停中、华东 1 金融云等地域支持用户管理密钥(KMS)功能。
  • 1
    SnapshotIdstring

    快照 ID。

    仅支持极速型 NAS。

    说明 通过快照创建文件系统,创建的文件系统版本和快照源文件系统版本一致。例如:快照的源文件系统版本是 1,需要创建版本 2 的文件系统,可以先通过快照创建一个文件系统 A,然后再创建一个满足版本 2 配置的文件系统 B,把文件系统 A 中的数据拷贝至文件系统 B,拷贝完成后把业务迁移到文件系统 B 即可。
    s-xxx
    VpcIdstring

    专有网络 ID。 当 FileSystemType=cpfs 时,必须配置此参数。

    当 FileSystemType=standard 或 extreme 时,此参数为接口预留参数,暂未生效,您无需配置。

    VSwitchIdstring

    交换机 ID。

    当 FileSystemType=cpfs 时,必须配置此参数。

    当 FileSystemType=standard 或 extreme 时,此参数为接口预留参数,暂未生效,您无需配置。

    Descriptionstring

    文件系统描述。

    限制:

    • 长度为 2~128 个英文或中文字符。
    • 必须以大小写字母或中文开头,不能以http://https://开头。
    • 可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。
    此文件系统的描述。
    ClientTokenstring

    保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符,且不能超过 64 个字符。更多信息,请参见如何保证幂等性

    说明 若您未指定,则系统自动使用 API 请求的 RequestId 作为 ClientToken 标识。每次 API 请求的 RequestId 可能不一样。
    123e4567-e89b-12d3-a456-42665544****
    KmsKeyIdstring

    KMS 密钥 ID。

    仅当 EncryptType=2 时该参数必填。

    DryRunboolean

    是否对此次创建请求执行预检。

    预检操作会帮助您检查参数有效性、校验库存等,并不会实际创建实例,也不会产生费用。

    取值:

    • true:发送检查请求,不会创建实例。检查项包括是否填写了必需参数、请求格式、业务限制和 NAS 库存。如果检查不通过,则返回对应错误。如果检查通过,则返回 200 HttpCode,但 FileSystemId 为空。
    • false(默认值):发送正常请求,通过检查后直接创建实例。
    true
    ResourceGroupIdstring

    资源组 ID。

    您可以通过资源管理控制台查看资源组 ID。

    rg-acfmwavnfdf****

    关于 API 幂等性,您需要注意以下事项:
    由于 CreateFileSystem 接口涉及云资源的创建和费用,您在调用该 API 时,如果发生请求超时或服务端内部错误,客户端可能会尝试重发请求。建议您在请求中设置 ClientToken 参数以避免因多次重试导致的重复下单的问题。

    说明 当前只有 FileSystemType 参数为 extreme、cpfs 时,该 API 支持幂等;当 FileSystemType 参数为 standard 时,该 API 不支持幂等。

    ClientToken 参数的详细信息如下所示:

    • ClientToken 是一个由客户端生成的唯一的、大小写敏感、不超过 64 个 ASCII 字符的字符串。例如:ClientToken=123e4567-e89b-12d3-a456-42665544****
    • 如果您提供了一个已经使用过的 ClientToken,但其他请求参数有变化,则 NAS 会返回 IdempotentParameterMismatch 的错误代码。
    说明 参数 SignatureNonce、Timestamp 和 Signature 在重试时是需要变化的。具体原因是 NAS 使用 SignatureNonce 防止重放攻击,使用 Timestamp 标记每次请求时间。所以再次请求必须提供不同的 SignatureNonce 和 Timestamp 参数值,同时也会导致 Signature 值的变化。
    • 添加了 ClientToken 参数后:

      • 返回结果是 200 HTTPCode 时,重试后客户端可以得到与上次相同的结果,但对您的服务端状态没有影响。
      • 返回结果是 4xx HTTPCode 时,如果错误信息没有表明 try it later 类似的信息,重试永远不会成功,您需要根据错误信息排查问题后修改请求参数后再重试请求。
      • 返回结果是 5xx HTTPCode 时,表明请求可能是发生网络超时或服务端内部错误,您可以重新发送同一个请求(必须包含相同 ClientToken 和业务请求参数)以确认请求结果。
    • ClientToken 有效期为 30 天。

    返回参数

    名称类型描述示例值
    object

    结构,不参与评审,不显示。

    RequestIdstring

    请求 ID。

    98696EF0-1607-4E9D-B01D-F20930B6****
    FileSystemIdstring

    完成创建的文件系统 ID。

    1ca404****

    示例

    正常返回示例

    JSON格式

    {
      "RequestId": "98696EF0-1607-4E9D-B01D-F20930B6****",
      "FileSystemId": "1ca404****"
    }

    错误码

    HTTP status code错误码错误信息描述
    202RequestAcceptedThe request has been accepted by the server.请求已被后端接受。
    400IdempotentParameterMismatchThe same client token was passed in to different parameters.相同的ClientToken传入了不同的参数。
    400InvalidParameter.KmsServiceNotEnabledKey Management Service is not enabled.未启用KMS服务。
    400InvalidParameter.KmsKeyIdNotFoundThe KMS key ID does not exist.-
    400InvalidParameter.InvalidKmsKeyIdThe KMS key ID is invalid.-
    400DryRunOperationThe request is validated with DryRun flag set.请求校验通过。
    400SubAccount.NoExtremeSLRPermissionThe 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权限。
    400SubAccount.NoStandardSLRPermissionThe 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权限。
    400SubAccount.NoEncryptionSLRPermissionThe 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权限。
    400InvalidParam.NotSupportBYOKThe specified file system type does not support the BYOK encryption function.指定文件系统类型不支持用户管理密钥(KMS)加密。
    400MissingParameter.KmsKeyIdWhen parameter EncryptType equals 2, the parameter KmsKeyId is mandatory for your request.当加密类型为用户管理密钥(KMS)时,KmsKeyId参数必填。
    403OperationDenied.InvalidStateThe operation is not permitted when the status is processing.状态处理中不允许此操作。
    403InvalidFileSystem.AlreadyExistedThe specified file system already exists.指定的文件系统已存在。
    403Resource.OutOfStockThe inventory of the specified zone is insufficient.指定的可用区库存不足。

    访问错误中心查看更多错误码。

    变更历史

    变更时间变更内容概要操作
    2024-01-25OpenAPI 错误码发生变更查看变更详情
    2023-12-26OpenAPI 错误码发生变更、OpenAPI 入参发生变更查看变更详情