CPU 分配

了解如何指定要为每个 Cloud Run for Anthos on Google Cloud 容器实例分配的 CPU 数。默认情况下,Cloud Run for Anthos 不会指定 CPU 数下限或上限。您的服务受可用资源量的限制。如需详细了解 CPU 资源,请参阅容器运行时合同

设置和更新 CPU 分配

任何配置更改都会导致新修订版本的创建。后续修订版本也将自动采用此配置设置,除非您进行了明确更新。

在部署新服务或更新现有服务和部署修订版本时,您可以使用 Cloud Console、gcloud 命令行工具或 YAML 文件设置 CPU 分配:

控制台

  1. 转到 Cloud Run for Anthos on Google Cloud

  2. 如果您是要配置一个新服务来作为部署目标,请点击创建服务。如果您要配置现有服务,请点击该服务,然后点击修改和部署新的修订版本

  3. 在“高级设置”下,点击容器

    图片

  4. 从下拉列表中选择所需的 CPU 分配。您可以选择以 Kubernetes CPU 单位来表示的数量。例如,指定 1 表示 1 个 CPU,指定 400m 表示 0.4 个 CPU,以此类推。

  5. 点击创建部署

命令行

  • 对于现有服务,请运行带有 --cpu 参数的 gcloud kuberun core services update 命令来设置要分配的 CPU 数量

    gcloud kuberun core services update SERVICE --cpu CPU
    

    您需要将其中的:

    • SERVICE 替换为您的服务名称。
    • CPU 替换为所需的 CPU 分配。请指定以 Kubernetes CPU 单位表示的值。例如,指定 1 表示 1 个 CPU,指定 400m 表示 0.4 个 CPU,以此类推。
  • 对于新服务,请运行带有 --cpu 参数的 gcloud kuberun core services create 命令来设置要分配的 CPU 数量:

    gcloud kuberun core services create SERVICE --image=IMAGE_URL --cpu CPU
    

    您需要将其中的:

    • SERVICE 替换为您的服务名称。
    • IMAGE_URL 替换为对容器映像的引用,例如 gcr.io/myproject/my-image:latest
    • CPU 替换为所需的 CPU 分配。请指定以 Kubernetes CPU 单位表示的值。例如,指定 1 表示 1 个 CPU,指定 400m 表示 0.4 个 CPU,以此类推。

YAML

如需使用 YAML 文件修改现有服务的配置,请获取当前配置的副本,修改相应配置并将更改保存到本地文件内,然后再将这些更改部署到服务中。

  1. 显示为 YAML,然后将服务的配置复制到本地文件(例如 service.yaml)中:

    gcloud kuberun core services describe SERVICE --format yaml

    SERVICE 替换为您的 Cloud Run for Anthos 服务的名称。

  2. 在本地文件中,更新 cpu 属性:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        spec:
          containers:
          - image: IMAGE
            resources:
              limits:
                cpu: CPU

    替换

    • SERVICE 替换为您的 Cloud Run for Anthos 服务的名称。
    • IMAGE 替换为容器映像的网址。
    • CPU 替换为所需的 CPU 值。请指定以 Kubernetes CPU 单位来表示的值。例如,指定 1 表示 1 个 CPU,指定 400m 表示 0.4 个 CPU,以此类推。
  3. 使用以下命令将服务替换为其新配置:

    gcloud beta run services replace service.yaml