扩缩环境

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

本页面介绍了如何扩缩 Cloud Composer 环境。

其他有关扩缩的页面:

纵向和横向扩缩

横向扩缩选项:

  • 调整工作器数量的下限和上限。
  • 调整调度器和触发器的数量。

纵向扩缩选项:

  • 调整工作器、调度器、触发器和 Web 服务器的扩缩和性能参数。
  • 调整环境大小。

资源限制

组件 最低数量 数量上限 最低 vCPU vCPU 数上限 vCPU 最小步长 最小内存 (GB) 最大内存 (GB) 内存最小步长(以 GB 为单位) 每个 vCPU 的最低内存 (GB) 每个 vCPU 的最大内存 (GB) 最低存储空间 (GB) 存储空间上限 (GB) 存储空间最小步长 (GB)
调度器 1 10 0.5 28 0.25 0.5 80 - 1 6.5 0.05 10 -
触发器 0 10 0.5 1 0.25 0.5 80 - 1 6.5 - - -
Web 服务器 - - 0.5 28 0.25 1 80 - 1 6.5 0.05 10 -
工作器 1 100 0.5 28 0.25 0.5 80 - 1 6.5 0.05 10 -

调整工作器参数

您可以为环境设置工作器数量下限和上限。 Cloud Composer 会在设定的限制内自动扩缩您的环境。您可以随时调整这些限制。

您可以指定环境中的 Airflow 工作器所使用的 CPU 数量、内存和磁盘空间大小。通过这种方式,除了使用多个工作器进行横向伸缩之外,您还可以提高您的环境的性能。

控制台

  1. 在 Google Cloud 控制台中,前往环境页面。

    转到“环境”

  2. 在环境列表中,点击您的环境名称。环境详情页面会打开。

  3. 转到环境配置标签页。

  4. 资源 > 工作负载配置项中,点击修改

  5. 工作负载配置窗格中,调整 Airflow 工作器的参数:

    • 工作器数量下限字段中,指定您的环境必须始终运行的 Airflow 工作器的数量。在环境的常规运行期间,环境中的工作器数量不能低于此数量,即使更少数量的工作器可以处理负载也是如此。

    • 工作器数量上限字段中,指定您的环境可以运行的 Airflow 工作器数量的上限。您的环境中的工作器数量不能超出此数量,即使需要更多数量的工作器来处理负载也是如此。

    • CPU内存存储空间字段中,指定 Airflow 工作器的 CPU、内存和存储空间量。每个工作器使用指定数量的资源。

  6. 点击保存

gcloud

以下 Airflow 工作器参数可用:

  • --min-workers:环境必须始终运行的 Airflow 工作器数量。您的环境中的工作器数量不能低于此数量,即使更少数量的工作器可以处理负载也是如此。
  • --max-workers 替换为您的环境可运行的 Airflow 工作器数量的上限。您的环境中的工作器数量不能超出此数量,即使需要更多数量的工作器来处理负载也是如此。
  • --worker-cpu:Airflow 工作器的 CPU 数量。
  • --worker-memory:Airflow 工作器的内存量。
  • --worker-storage:Airflow 工作器的磁盘空间量。

运行以下 Google Cloud CLI 命令:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --min-workers WORKERS_MIN \
  --max-workers WORKERS_MAX \
  --worker-cpu WORKER_CPU \
  --worker-memory WORKER_MEMORY \
  --worker-storage WORKER_STORAGE

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • WORKERS_MIN:Airflow 工作器数量下限。
  • WORKERS_MAX:Airflow 工作器数量上限。
  • WORKER_CPU:工作器的 CPU 数量(以 vCPU 为单位)。
  • WORKER_MEMORY:工作器的内存量。
  • WORKER_STORAGE:工作器的磁盘大小。

例如:

gcloud composer environments update example-environment \
  --location us-central1 \
  --min-workers 2 \
  --max-workers 6 \
  --worker-cpu 1 \
  --worker-memory 2 \
  --worker-storage 2

API

  1. 构建 environments.patch API 请求。

  2. 在此请求中:

    1. 在参数 updateMask 中,指定要更新的字段。例如,如需更新工作器的所有参数,请指定 config.workloadsConfig.worker.cpu,config.workloadsConfig.worker.memoryGb,config.workloadsConfig.worker.storageGB,config.softwareConfig.workloadsConfig.worker.minCount,config.softwareConfig.workloadsConfig.worker.maxCount 掩码。

    2. 在请求正文中,指定新的工作器参数。

"config": {
  "workloadsConfig": {
    "worker": {
      "minCount": WORKERS_MIN,
      "maxCount": WORKERS_MAX,
      "cpu": WORKER_CPU,
      "memoryGb": WORKER_MEMORY,
      "storageGb": WORKER_STORAGE
    }
  }
}

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • WORKERS_MIN:Airflow 工作器数量下限。
  • WORKERS_MAX:Airflow 工作器数量上限。
  • WORKER_CPU:工作器的 CPU 数量(以 vCPU 为单位)。
  • WORKER_MEMORY:工作器的内存量(以 GB 为单位)。
  • WORKER_STORAGE:工作器的磁盘大小(以 GB 为单位)。

示例:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.worker.minCount,
// config.workloadsConfig.worker.maxCount
// config.workloadsConfig.worker.cpu,
// config.workloadsConfig.worker.memoryGb,
// config.workloadsConfig.worker.storageGB

"config": {
  "workloadsConfig": {
    "worker": {
      "minCount": 2,
      "maxCount": 6,
      "cpu": 1,
      "memoryGb": 2,
      "storageGb": 2
    }
  }
}

Terraform

workloads_config.worker 块中的以下字段用于控制 Airflow 工作器参数。每个工作器使用指定数量的资源。

  • worker.min_count:环境必须始终运行的 Airflow 工作器数量。您的环境中的工作器数量不能低于此数量,即使更少数量的工作器可以处理负载也是如此。
  • worker.max_count 替换为您的环境可运行的 Airflow 工作器数量的上限。您的环境中的工作器数量不能超出此数量,即使需要更多数量的工作器来处理负载也是如此。
  • worker.cpu:Airflow 工作器的 CPU 数量。
  • worker.memory_gb:Airflow 工作器的内存量。
  • worker.storage_gb:Airflow 工作器的磁盘空间量。
resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      worker {
        min_count = WORKERS_MIN
        max_count = WORKERS_MAX
        cpu = WORKER_CPU
        memory_gb = WORKER_MEMORY
        storage_gb = WORKER_STORAGE
      }
    }

  }
}

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • WORKERS_MIN:Airflow 工作器数量下限。
  • WORKERS_MAX:Airflow 工作器数量上限。
  • WORKER_CPU:工作器的 CPU 数量(以 vCPU 为单位)。
  • WORKER_MEMORY:工作器的内存量(以 GB 为单位)。
  • WORKER_STORAGE:工作器的磁盘大小(以 GB 为单位)。

示例:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      worker {
        min_count = 2
        max_count = 6
        cpu = 1
        memory_gb = 2
        storage_gb = 2
      }
    }

  }
}

调整调度器参数

您的环境可以同时运行多个 Airflow 调度器。使用多个调度器在多个调度器实例之间分配负载,以实现更好的性能和可靠性。

您的环境中最多可以有 10 个调度器。

在伸缩调度程序时,请考虑以下事项:

  • 在 Cloud Composer 3 环境中,Airflow DAG 处理器作为单独的环境组件运行,与调度器分开。由于 DAG 处理器将 DAG 解析从调度器中分流出来,您可能需要重新分配之前分配给 Airflow 调度器的资源。

    由于调度程序在 Cloud Composer 3 中不解析 DAG,因此与 Cloud Composer 2 相比,它们具有更低的 CPU 和内存资源限制

  • 增加调度器的数量并不总是可以提高 Airflow 性能。

    例如,如果额外的调度器未得到利用,则可能会发生这种情况,因而会占用环境的资源,而不会提升整体性能。实际的调度器性能取决于 Airflow 工作器的数量、在您的环境中运行的 DAG 和任务的数量,以及 Airflow 和环境的配置。

  • 我们建议您先使用两个调度器,然后再监控环境的性能。如果您更改调度器的数量,则可以随时将环境扩缩回原始调度器的数量。

如需详细了解如何配置多个调度器,请参阅 Airflow 文档

您可以指定环境中的 Airflow 调度器所使用的 CPU 数量、内存和磁盘空间大小。通过这种方式,除了使用多个调度器进行横向伸缩之外,您还可以提高您的环境的性能。

控制台

  1. 在 Google Cloud 控制台中,前往环境页面。

    转到“环境”

  2. 在环境列表中,点击您的环境名称。环境详情页面会打开。

  3. 转到环境配置标签页。

  4. 资源 > 工作负载配置项中,点击修改

  5. 工作负载配置窗格中,调整 Airflow 调度器的参数:

    • 调度器数量下拉列表中,为您的环境选择调度器数量。

    • CPU内存存储空间字段中,指定 Airflow 调度器的 CPU、内存和存储空间量。每个调度器使用指定数量的资源。

  6. 点击保存

gcloud

以下 Airflow 调度程序参数可用:

  • --scheduler-count:环境中的调度器数量。

  • --scheduler-cpu:Airflow 调度器的 CPU 数量。

  • --scheduler-memory:Airflow 调度器的内存量。

  • --scheduler-storage:Airflow 调度器的磁盘空间量。

运行以下 Google Cloud CLI 命令:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --scheduler-cpu SCHEDULER_CPU \
  --scheduler-memory SCHEDULER_MEMORY \
  --scheduler-storage SCHEDULER_STORAGE \
  --scheduler-count SCHEDULER_COUNT

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。

  • SCHEDULER_CPU:调度器的 CPU 数量(以 vCPU 为单位)。

  • SCHEDULER_MEMORY:调度器的内存量。

  • SCHEDULER_STORAGE:调度程序的磁盘大小。

  • SCHEDULER_COUNT:调度器的数量。

示例:

gcloud composer environments update example-environment \
  --location us-central1 \
  --scheduler-cpu 0.5 \
  --scheduler-memory 2.5 \
  --scheduler-storage 2 \
  --scheduler-count 2

API

  1. 构建 environments.patch API 请求。

  2. 在此请求中:

    1. updateMask 参数中,指定 config.workloadsConfig.scheduler 掩码以更新所有调度器参数或仅更新调度器数量。您还可以通过指定掩码来更新各个调度器参数(count 除外)。例如 config.workloadsConfig.scheduler.cpu

    2. 在请求正文中,指定新的调度器参数。

"config": {
  "workloadsConfig": {
    "scheduler": {
      "cpu": SCHEDULER_CPU,
      "memoryGb": SCHEDULER_MEMORY,
      "storageGb": SCHEDULER_STORAGE,
      "count": SCHEDULER_COUNT
    }
  }
}

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。

  • SCHEDULER_CPU:调度器的 CPU 数量(以 vCPU 为单位)。

  • SCHEDULER_MEMORY:调度器的内存量(以 GB 为单位)。

  • SCHEDULER_STORAGE:调度器的磁盘大小(以 GB 为单位)。

  • SCHEDULER_COUNT:调度器的数量。

示例:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.scheduler

"config": {
  "workloadsConfig": {
    "scheduler": {
      "cpu": 0.5,
      "memoryGb": 2.5,
      "storageGb": 2,
      "count": 2
    }
  }
}

Terraform

workloads_config.scheduler 块中的以下字段控制 Airflow 调度器参数。每个调度器使用指定数量的资源。

  • scheduler.count:环境中的调度器数量。

  • scheduler.cpu:Airflow 调度器的 CPU 数量。

  • scheduler.memory_gb:Airflow 调度器的内存量。

  • scheduler.storage_gb:调度器的磁盘空间量。

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      scheduler {
        cpu = SCHEDULER_CPU
        memory_gb = SCHEDULER_MEMORY
        storage_gb = SCHEDULER_STORAGE
        count = SCHEDULER_COUNT
      }
    }

  }
}

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。

  • SCHEDULER_CPU:调度器的 CPU 数量(以 vCPU 为单位)。

  • SCHEDULER_MEMORY:调度器的内存量(以 GB 为单位)。

  • SCHEDULER_STORAGE:调度器的磁盘大小(以 GB 为单位)。

  • SCHEDULER_COUNT:调度器的数量。

示例:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      scheduler {
        
        cpu = 0.5
        memory_gb = 1.875
        storage_gb = 1
        
        count = 2
      }
    }

  }
}

调整触发器参数

您可以将触发器数量设置为零,但您的环境中至少需要一个触发器实例(或在高度弹性的环境中至少需要两个),才能在 DAG 中使用可延期运算符

根据环境的恢复模式,触发器的数量有不同的可能配置:

  • 标准恢复能力:您最多可以运行 10 个触发器。
  • 高恢复能力:至少 2 个触发器,最多 10 个触发器。

即使触发器数量设置为零,系统也会在环境的集群中创建并显示触发器 Pod 定义,但不会运行实际的触发器工作负载。

您还可以指定环境中的 Airflow 触发器所使用的 CPU 数量、内存和磁盘空间大小。通过这种方式,除了使用多个触发器进行横向伸缩之外,您还可以提高您的环境的性能。

控制台

  1. 在 Google Cloud 控制台中,前往环境页面。

    转到“环境”

  2. 在环境列表中,点击您的环境名称。环境详情页面会打开。

  3. 转到环境配置标签页。

  4. 资源 > 工作负载配置项中,点击修改

  5. 工作负载配置窗格中,调整 Airflow 触发器的参数:

    1. Triggerer 部分的 Number of triggerers 字段中,输入环境中的触发器数量。

      如果您为环境设置了至少一个触发器,还应使用 CPU内存字段为触发器配置资源分配。

    2. CPU内存中,指定 Airflow 触发器的 CPU、内存和存储空间量。每个触发器使用指定数量的资源。

  6. 点击保存

gcloud

以下 Airflow 触发器参数可用:

  • --triggerer-count:您环境中的触发器数量。

    • 对于标准弹性环境,请使用介于 010 之间的值。
    • 对于高弹性环境,请使用 0 或介于 210 之间的值。
  • --triggerer-cpu:Airflow 触发器的 CPU 数量。

  • --triggerer-memory:Airflow 触发器的内存量。

运行以下 Google Cloud CLI 命令:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --triggerer-count TRIGGERER_COUNT \
  --triggerer-cpu TRIGGERER_CPU \
  --triggerer-memory TRIGGERER_MEMORY

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • TRIGGERER_COUNT:触发器的数量。
  • TRIGGERER_CPU:触发器的 CPU 数量(以 vCPU 为单位)。
  • TRIGGERER_MEMORY:触发器的内存量。

示例:

  • 扩容到 4 个触发器实例:
gcloud composer environments update example-environment \
  --location us-central1 \
  --triggerer-count 4 \
  --triggerer-cpu 1 \
  --triggerer-memory 1
  • 将触发器数量设置为 0 可停用触发器。此操作不需要为触发器指定 CPU 或内存。
gcloud composer environments update example-environment \
  --location us-central1 \
  --triggerer-count 0

API

  1. updateMask 查询参数中,指定 config.workloadsConfig.triggerer 掩码。

  2. 在请求正文中,指定触发器的所有三个参数。

"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": TRIGGERER_COUNT,
      "cpu": TRIGGERER_CPU,
      "memoryGb": TRIGGERER_MEMORY
    }
  }
}

替换以下内容:

  • TRIGGERER_COUNT:触发器的数量。

    • 对于标准弹性环境,请使用介于 010 之间的值。
    • 对于高弹性环境,请使用 0 或介于 210 之间的值。
  • TRIGGERER_CPU:触发器的 CPU 数量(以 vCPU 为单位)。

  • TRIGGERER_MEMORY:触发器的内存量。

示例:

  • 将触发器数量设置为 0 可停用触发器。此操作不需要为触发器指定 CPU 或内存。
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.triggerer
"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": 0
    }
  }
}
  • 扩容到 4 个触发器实例:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.triggerer
"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": 4,
      "cpu": 1,
      "memoryGb": 1
    }
  }
}

Terraform

workloads_config.triggerer 块中的以下字段控制 Airflow 触发器参数。每个触发器使用指定数量的资源。

  • triggerer.count:您环境中的触发器数量。

    • 对于标准弹性环境,请使用介于 010 之间的值。
    • 对于高弹性环境,请使用 0 或介于 210 之间的值。
  • triggerer.cpu:Airflow 触发器的 CPU 数量。

  • triggerer.memory_gb:Airflow 触发器的内存量。

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      triggerer {
        count = TRIGGERER_COUNT
        cpu = TRIGGERER_CPU
        memory_gb = TRIGGERER_MEMORY
      }
    }

  }
}

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • TRIGGERER_COUNT:触发器的数量。
  • TRIGGERER_CPU:触发器的 CPU 数量(以 vCPU 为单位)。
  • TRIGGERER_MEMORY:触发器的内存量(以 GB 为单位)。

示例:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      triggerer {
        count = 1
        cpu = 0.5
        memory_gb = 0.5
      }
    }

  }
}

调整 Web 服务器参数

您可以指定 Airflow Web 服务器在您的环境中使用的 CPU 数量、内存和磁盘空间大小。这样一来,您就可以扩缩 Airflow 界面的性能,例如,根据大量用户或大量受管理的 DAG 带来的需求进行扩缩。

控制台

  1. 在 Google Cloud 控制台中,前往环境页面。

    转到“环境”

  2. 在环境列表中,点击您的环境名称。环境详情页面会打开。

  3. 转到环境配置标签页。

  4. 资源 > 工作负载配置项中,点击修改

  5. 工作负载配置窗格中,调整 Web 服务器的参数。在 CPU内存存储空间字段中,指定 Web 服务器的 CPU、内存和存储空间量。

  6. 点击保存

gcloud

以下 Airflow Web 服务器参数可供使用:

  • --web-server-cpu:Airflow Web 服务器的 CPU 数量。
  • --web-server-memory:Airflow Web 服务器的内存量。
  • --web-server-storage:Airflow Web 服务器的磁盘空间量。

运行以下 Google Cloud CLI 命令:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --web-server-cpu WEB_SERVER_CPU \
  --web-server-memory WEB_SERVER_MEMORY \
  --web-server-storage WEB_SERVER_STORAGE

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • WEB_SERVER_CPU:Web 服务器的 CPU 数量(以 vCPU 为单位)。
  • WEB_SERVER_MEMORY:Web 服务器的内存量。
  • WEB_SERVER_STORAGE:Web 服务器的内存量。

例如:

gcloud composer environments update example-environment \
  --location us-central1 \
  --web-server-cpu 1 \
  --web-server-memory 2.5 \
  --web-server-storage 2

API

  1. 构建 environments.patch API 请求。

  2. 在此请求中:

    1. updateMask 参数中,指定 config.workloadsConfig.webServer 掩码以更新所有 Web 服务器参数。您还可以通过为各个 Web 服务器参数指定掩码来更新这些参数:config.workloadsConfig.webServer.cpuconfig.workloadsConfig.webServer.memoryGbconfig.workloadsConfig.webServer.storageGb

    2. 在请求正文中,指定新的 Web 服务器参数。

"config": {
  "workloadsConfig": {
    "webServer": {
      "cpu": WEB_SERVER_CPU,
      "memoryGb": WEB_SERVER_MEMORY,
      "storageGb": WEB_SERVER_STORAGE
    }
  }
}

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • WEB_SERVER_CPU:Web 服务器的 CPU 数量(以 vCPU 为单位)。
  • WEB_SERVER_MEMORY:Web 服务器的内存量(以 GB 为单位)。
  • WEB_SERVER_STORAGE:Web 服务器的磁盘大小(以 GB 为单位)。

示例:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.webServer.cpu,
// config.workloadsConfig.webServer.memoryGb,
// config.workloadsConfig.webServer.storageGb

"config": {
  "workloadsConfig": {
    "webServer": {
      "cpu": 0.5,
      "memoryGb": 2.5,
      "storageGb": 2
    }
  }
}

Terraform

workloads_config.web_server 块中的以下字段用于控制 Web 服务器参数。

  • web_server.cpu:Web 服务器的 CPU 数量。
  • web_server.memory_gb:Web 服务器的内存量。
  • web_server.storage_gb:Web 服务器的磁盘空间量。
resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      web_server {
        cpu = WEB_SERVER_CPU
        memory_gb = WEB_SERVER_MEMORY
        storage_gb = WEB_SERVER_STORAGE
      }
    }

  }
}

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • WEB_SERVER_CPU:Web 服务器的 CPU 数量(以 vCPU 为单位)。
  • WEB_SERVER_MEMORY:Web 服务器的内存量(以 GB 为单位)。
  • WEB_SERVER_STORAGE:Web 服务器的磁盘大小(以 GB 为单位)。

示例:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      web_server {
        cpu = 0.5
        memory_gb = 1.875
        storage_gb = 1
      }
    }

  }
}

调整环境大小

环境大小用于控制包含 Airflow 数据库等组件的代管式 Cloud Composer 基础架构的性能参数。

如果要运行大量 DAG 和任务,请考虑选择较大的环境大小。

控制台

  1. 在 Google Cloud 控制台中,前往环境页面。

    转到“环境”

  2. 在环境列表中,点击您的环境名称。环境详情页面会打开。

  3. 转到环境配置标签页。

  4. 资源 > 工作负载配置项中,点击修改

  5. 资源 > 核心基础架构项中,点击修改

  6. 核心基础架构窗格中,在环境大小字段中指定环境大小。

  7. 点击保存

gcloud

参数 --environment-size 可用于控制环境大小:

gcloud composer environments update ENVIRONMENT_NAME \
    --location LOCATION \
    --environment-size ENVIRONMENT_SIZE

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • ENVIRONMENT_SIZEsmallmediumlarge

示例:

gcloud composer environments update example-environment \
    --location us-central1 \
    --environment-size medium

API

  1. 创建 environments.patch API 请求。

  2. 在此请求中:

    1. 在参数 updateMask 中,指定 config.environmentSize 掩码。

    2. 在请求正文中,指定环境大小。

  "config": {
    "environmentSize": "ENVIRONMENT_SIZE"
  }

替换以下内容:

  • ENVIRONMENT_SIZE:环境大小,ENVIRONMENT_SIZE_SMALLENVIRONMENT_SIZE_MEDIUMENVIRONMENT_SIZE_LARGE

示例:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.environmentSize

"config": {
  "environmentSize": "ENVIRONMENT_SIZE_MEDIUM"
}

Terraform

config 块中的 environment_size 字段控制环境大小:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    environment_size = "ENVIRONMENT_SIZE"

  }
}

替换以下内容:

  • ENVIRONMENT_NAME:环境的名称。
  • LOCATION:环境所在的区域。
  • ENVIRONMENT_SIZE:环境大小,ENVIRONMENT_SIZE_SMALLENVIRONMENT_SIZE_MEDIUMENVIRONMENT_SIZE_LARGE

示例:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    environment_size = "ENVIRONMENT_SIZE_SMALL"

    }
  }
}

后续步骤