自定义性能

借助自定义性能,您可以独立于指定的容量为 Filestore 实例定义性能设置。 这意味着,您可以根据工作负载要求优化 Filestore 实例,并扩缩文件共享以满足应用的需求,而无需调整容量大小。

如果您使用 Google Cloud 控制台创建 Filestore 可用区级和区域级实例, 自定义性能是配置性能的默认机制。

读取和写入 IOPS

您可以将为文件系统购买的 IOPS 的 100% 用于读取和写入操作。读取和写入操作的权重不同,每次读取操作会从购买的 IOPS 中占用一个操作,而写入操作会从购买的 IOPS 中占用 3.33 个 IOPS。

例如,如果您的文件系统将购买的 IOPS 的 33% 用于读取操作,则它可以同时将购买的 IOPS 的 67% 用于写入操作,并根据每次写入 3.33 的比率利用购买的 IOPS。

无论容量范围或服务层级是区域级还是可用区级,自定义性能都支持每 1,000 个购买的 IOPS 最多 100 个客户端连接。

从复制的数据(例如 备份 操作)中累积的 IOPS 不计入用户购买的 IOPS。

IOPS 计算示例

假设您购买了 4,000 个 IOPS:

  • 如果您想将它们用于读取 IOPS,则最多可以访问 4,000 个读取 IOPS。
  • 如果您想将它们用于写入 IOPS,则最多可以访问 1,200 个写入 IOPS。
  • 如果您想使用 900 个 IOPS 进行写入操作,则实际上会使用 3,000 个 IOPS 预算,剩余 1,000 个 IOPS 用于读取操作。

如果您需要更多 IOPS 或吞吐量,可以提高购买的 IOPS 速率。

配置自定义性能

您可以为已支持自定义性能的可用区级和区域级实例设置自定义性能。基本层级不支持此功能。

自定义性能实例的计费方式与未配置自定义性能的实例不同。如需了解详情,请参阅 Filestore 价格

您可以通过以下方式配置自定义性能:

  • 设置 IOPS/TiB 比率,其中 IOPS 会随着实例大小线性扩缩。
  • 设置固定 IOPS 速率。无论实例大小如何,该速率都是稳定的。

在 Google Cloud 控制台中创建实例时,系统会默认启用自定义性能 ,以便您根据工作负载 和规模配置性能。如果您未提供特定的 IOPS 值,系统会使用建议的默认速率。您可以选择停用自定义性能,但必须在创建实例之前执行此操作,因为该设置是永久性的,以后无法更改。

如需详细了解如何设置自定义性能,请参阅创建实例

如需详细了解 GKE 中的自定义性能,请参阅 Filestore CSI 驱动程序

查看自定义性能状态

如果您想查看自定义性能状态,请按照以下说明操作:

Google Cloud 控制台

  1. 在 Google Cloud 控制台中,前往实例页面。

    转到实例

  2. 点击实例 ID 以打开实例详情 页面。

  3. 前往概览 标签页,然后找到自定义性能 条目。

    • 不支持 表示特定实例不支持自定义性能。例如,当您创建基本层级实例时,或者在推出该功能之前创建实例时。
    • 已启用 表示此实例支持自定义性能并且已启用。
    • 已停用 表示此实例支持自定义性能,但未启用。

gcloud

如需获取有关 Filestore 实例的信息,请运行 instances describe 命令:

    gcloud filestore instances describe INSTANCE_ID --project=PROJECT_ID --location=LOCATION

输出可能会因实例设置而异。以下是一个输出示例:

    createTime: '2021-10-11T17:28:23.340943077Z'
    customPerformanceSupported: true
    fileShares:
    - capacityGb: '1024'
    name: vol1
    kmsKeyName: projects/example-project/locations/us-central1/keyRings/example-ring/cryptoKeys/example-key
    labels:
    key:val
    name: projects/yourproject/locations/us-central1/instances/nfs-server
    networks:
    - ipAddresses:
    - 10.0.0.2
    network: default
    reservedIpRange: 10.0.0.0/26
    performanceConfig:
      iopsPerTb:
        maxIopsPerTb: '17000'
    performanceLimits:
      maxIops: '17000'
      maxReadIops: '17000'
      maxReadThroughputBps: '417792000'
      maxWriteIops: '5100'
      maxWriteThroughputBps: '139264000'
    state: READY
    tier: REGIONAL
  • 如果存在 customPerformanceSupported 参数且设置为 true,则表示此实例支持自定义性能。如果不存在该标志,则表示不支持自定义性能。

  • 如果存在 performanceConfig 参数,则表示此实例已启用自定义性能。

REST API

  1. 安装并初始化 gcloud CLI,以便为 Authorization 标头生成访问令牌。

  2. 使用 cURL 调用 Filestore API

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      GET "https://file.googleapis.com/v1beta1/projects/PROJECT/locations/LOCATION/instances/INSTANCE_NAME"

    其中:

    • PROJECT 是实例所在项目的名称。例如,my-project
    • LOCATION 是实例所在的地区。例如,us-central1-a
    • INSTANCE_NAME 是您要查看的实例的名称。例如,nfs-server

    如果提供的实例支持自定义性能并已配置,则响应将包含以下参数:

     "customPerformanceSupported": true,
      "performanceConfig": {
        "fixedIops": {
          "maxIops": "9000"
        }
      },
      "performanceLimits": {
        "maxReadIops": "9000",
        "maxWriteIops": "2700",
        "maxReadThroughputBps": "221184000",
        "maxWriteThroughputBps": "73728000",
        "maxIops": "9000"
      }
    

监控

如需监控实例 IOPS 使用情况,您可以使用 Metrics Explorer 查看以下指标:read_ops_countwrite_ops_countmetadata_ops_count

如需了解详情,请参阅监控实例

后续步骤