将 Google Kubernetes Engine 与 Google SecOps 集成

集成版本:7.0

本文档介绍了如何配置 Google Kubernetes Engine (GKE) 并将其与 Google Security Operations (Google SecOps) 集成。

使用场景

GKE 集成可帮助您解决以下使用场景:

  • 集群清单:使用 Google SecOps 功能自动检索指定位置内的所有 GKE 集群的列表。这有助于安全团队维护最新的 Kubernetes 基础架构清单。

  • 动态自动伸缩:利用 Google SecOps 功能,根据安全事件或运营提醒自动调整节点池的大小,确保最佳性能。

  • 基于标签的隔离:使用 Google SecOps 功能根据安全政策或突发事件响应程序自动将标签应用于 GKE 集群。

  • 插件配置调整:使用 Google SecOps 功能根据安全最佳实践自动启用或停用 GKE 插件。停用不安全的插件可以缩小攻击面。

  • 操作状态监控:使用 Google SecOps 功能自动监控由安全 playbook 或突发事件响应工作流触发的 GKE 操作的状态。这样,安全分析师就可以监控补救进度并检查正在进行的操作的状态。

准备工作

如需使用此集成,您需要自定义 Identity and Access Management (IAM) 角色和 Google Cloud 服务账号。您可以使用现有服务账号,也可以创建新服务账号

创建和配置 IAM 角色

如需为集成创建和配置自定义 IAM 角色,请完成以下步骤:

  1. 在 Google Cloud 控制台中,前往 IAM 角色页面。

    打开“角色”

  2. 点击创建角色,以创建具有集成所需权限的自定义角色。

  3. 对于新的自定义角色,请输入称谓说明和唯一的 ID

  4. 角色发布阶段设置为正式版

  5. 向创建的角色添加以下权限:

    • container.clusters.list
    • container.clusters.update
    • container.clusters.get
    • container.operations.list
    • container.operations.get
  6. 点击创建

创建服务账号

  1. 如需有关创建服务账号的指南,请参阅创建服务账号

  2. 向此服务账号授予对项目的访问权限下,向您的服务账号授予您在上一个部分中创建的自定义角色

  3. 如果您不在 Google Cloud上运行工作负载,则需要在创建服务账号后创建 JSON 格式的服务账号密钥。如果您未配置 Workload Identity Email 参数,请在配置集成参数时使用下载的 JSON 文件的完整内容。

    出于安全考虑,我们建议您使用工作负载身份电子邮件地址,而不是服务账号 JSON 密钥。如需详细了解工作负载身份,请参阅工作负载的身份

集成参数

GKE 集成需要以下参数:

参数 说明
API Root

可选。

GKE 实例 API 根。

默认值为 https://container.googleapis.com

Account Type

可选。

GKE 账号的类型。

提供服务账号密钥 JSON 文件中 type 参数中设置的值。

默认值为 service_account

Project ID

可选。

GKE 账号的项目 ID。

输入在身份验证 JSON 文件的 project_id 参数中设置的值。

Private Key ID

可选。

GKE 账号的私钥 ID。

输入在身份验证 JSON 文件的 private_key_id 参数中设置的值。

Private Key

可选。

GKE 账号的私钥。

输入在身份验证 JSON 文件的 private_key 参数中设置的值。

Client Email

可选。

GKE 账号的客户端电子邮件地址。

输入在身份验证 JSON 文件的 client_email 参数中设置的值。

Client ID

可选。

GKE 账号的客户端 ID。

输入在身份验证 JSON 文件的 client_id 参数中设置的值。

Auth URI

可选。

GKE 账号的身份验证 URI。

输入在身份验证 JSON 文件的 auth_uri 参数中设置的值。

默认值为 https://accounts.google.com/o/oauth2/auth

Token URI

可选。

GKE 账号的令牌 URI。

输入在身份验证 JSON 文件的 token_uri 参数中设置的值。

默认值为 https://oauth2.googleapis.com/token

Auth Provider X509 URL

可选。

GKE 账号的身份验证提供方 X.509 网址。

输入在身份验证 JSON 文件的 auth_provider_x509_cert_url 参数中设置的值。

默认值为 https://www.googleapis.com/oauth2/v1/certs

Client X509 URL

可选。

GKE 账号的客户端 X.509 网址。

输入在身份验证 JSON 文件的 client_x509_cert_url 参数中设置的值。

Service Account Json File Content

可选。

服务账号密钥 JSON 文件的内容。

您可以配置此参数或 Workload Identity Email 参数,也可以设置所有前面的集成参数。

如需配置此参数,请输入您在创建服务账号时下载的服务账号密钥 JSON 文件的完整内容。

如果您配置此参数,集成会忽略其他连接参数。

Workload Identity Email

可选。

您的服务账号的客户端电子邮件地址。

您可以配置此参数或 Service Account Json File Content 参数。

如果您设置了此参数,请配置 Quota Project ID 参数。

如需使用工作负载身份联合模拟服务账号,请向您的服务账号授予 Service Account Token Creator 角色。如需详细了解工作负载身份以及如何使用它们,请参阅工作负载的身份

Location ID

可选。

要在集成中使用的位置信息 ID。

默认值为 europe-central2-a

Verify SSL

可选。

如果选择此项,集成会在连接到 GKE 服务器时验证 SSL 证书。

此选项将会默认选中。

如需了解如何在 Google SecOps 中配置集成,请参阅配置集成

如有需要,您可以在稍后阶段进行更改。配置集成实例后,您可以在剧本中使用该实例。如需详细了解如何配置和支持多个实例,请参阅支持多个实例

操作

如需详细了解操作,请参阅 在工作台页面中处理待处理的操作执行手动操作

获取操作状态

使用 Get Operation Status 操作检索 GKE 操作状态。

此操作是异步的。根据需要调整 Google SecOps 集成开发环境 (IDE) 以执行相应操作。

此操作不适用于 Google SecOps 实体。

操作输入

获取操作状态操作需要以下参数:

参数 说明
Location

必填。

用于检索操作状态的位置,例如 europe-central2-a

Operation Name

必填。

要检索的操作。

Wait for the operation to finish

可选。

如果选择此项,操作将等待结果。

默认情况下未选中。

操作输出

获取操作状态操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用获取操作状态操作时收到的 JSON 结果输出:

{
    "name": "operation-OPERATION_ID",
    "zone": "europe-central2-a",
    "operationType": "SET_NODE_POOL_SIZE",
    "status": "RUNNING",
    "selfLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/operations/operation-OPERATION_ID",
    "targetLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/clusters/cluster-test/nodePools/default-pool",
    "startTime": "2021-08-15T11:53:55.904254615Z"
}
输出消息

获取操作状态操作可以返回以下输出消息:

输出消息 消息说明

Successfully fetched operation details.

Failed to execute the action because API returned error, please see action logs LOG_SNIPPET.

Operation OPERATION_NAME is still in progress, current status: STATUS.

Operation OPERATION_NAME successfully finished.

Operation OPERATION_NAME failed to complete with the following status: STATUS.

操作成功。

Provided cluster location CLUSTER_LOCATION does not exist.

Provided operation name OPERATION_NAME was not found.

Error executing action "Set Node Count". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用 Get Operation Status 操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

列出集群

使用 List Clusters 操作可根据指定的搜索条件列出 GKE 集群。

此操作不适用于 Google SecOps 实体。

操作输入

列出集群操作需要以下参数:

参数 说明
Cluster Location

必填。

要搜索集群的位置,例如 europe-central2-a

Filter Logic

可选。

要应用的过滤逻辑。

过滤逻辑适用于 cluster name 字段。

可能的值如下:

  • Not Specified
  • Equal
  • Contains

默认值为 Not Specified

Filter Value

可选。

要用于过滤的值。

过滤逻辑适用于 cluster name 字段。

如果您将 Filter Logic 参数设置为 Equal,则操作会在结果中搜索 Filter Value 完全匹配项。如果您将 Filter Logic 参数设置为 Contains,则该操作会搜索包含您在此参数中指定的子字符串的结果。如果您未设置值,相应操作会忽略该过滤条件。

Max Records To Return

可选。

要返回的记录数。

默认值为 50

操作输出

列出集群操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
“支持请求墙”表格

列出集群操作可以返回下表:

表名称:Found Clusters

表列:

  • ID
  • 名称
  • 说明
  • 集群网络
  • 集群 IPv4 CIDR
  • 标签
  • 集群端点
  • 状态
  • 位置
  • 可用区
  • 初始集群版本
  • 当前主版本
  • 当前节点版本
  • 创建时间
JSON 结果

以下示例展示了使用列出集群操作时收到的 JSON 结果输出:

{
           "name": "cluster-test",
           "description": "Requested by user",
           "nodeConfig": {
               "machineType": "e2-micro",
               "diskSizeGb": 15,
               "oauthScopes": [
                   "https://www.googleapis.com/auth/devstorage.read_only",
                   "https://www.googleapis.com/auth/logging.write",
                   "https://www.googleapis.com/auth/monitoring",
                   "https://www.googleapis.com/auth/servicecontrol",
                   "https://www.googleapis.com/auth/service.management.readonly",
                   "https://www.googleapis.com/auth/trace.append"
               ],
               "metadata": {
                   "disable-legacy-endpoints": "true"
               },
               "imageType": "COS",
               "tags": [
                   "pod-net-tag"
               ],
               "serviceAccount": "default",
               "diskType": "pd-standard",
               "shieldedInstanceConfig": {
                   "enableIntegrityMonitoring": true
               }
           },
           "masterAuth": {
               "clusterCaCertificate": "CERTIFICATE"
           }
}
输出消息

列出集群操作可以返回以下输出消息:

输出消息 消息说明

Successfully found clusters for the provided criteria in GKE.

No clusters were found for the provided criteria in GKE.

操作成功。

Provided cluster location CLUSTER_LOCATION does not exist.

Invalid value was provided for "Max Records to Return": MAX_RECORDS_TO_RETURN. Positive number should be provided.

Error executing action "List Clusters". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用列出集群操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

列出节点池

使用列出节点池操作可根据指定的搜索条件列出 GKE 集群的节点池。

过滤逻辑适用于 node pool name 字段。

此操作不适用于 Google SecOps 实体。

操作输入

列出节点池操作需要以下参数:

参数 说明
Cluster Location

必填。

要搜索集群的位置,例如 europe-central2-a

Cluster Name

必填。

要搜索的集群的名称。

Filter Logic

可选。

要应用的过滤逻辑。

过滤逻辑适用于 node pool name 字段。

可能的值如下:

  • Not Specified
  • Equal
  • Contains

默认值为 Not Specified

Filter Value

可选。

要用于过滤的值。

过滤逻辑适用于 node pool name 字段。

如果您将 Filter Logic 参数设置为 Equal,则操作会在结果中搜索 Filter Value 完全匹配项。如果您将 Filter Logic 参数设置为 Contains,则该操作会搜索包含您在此参数中指定的子字符串的结果。如果您未设置值,相应操作会忽略该过滤条件。

Max Records To Return

可选。

要返回的记录数。

默认值为 50

操作输出

列出节点池操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
“支持请求墙”表格

列出节点池操作可以返回下表:

表格名称:Found Node Pools

  • 名称
  • 状态
  • 版本
  • 机器类型
  • 标记
  • 服务账号
  • 初始节点数
  • 自动扩缩
  • Pod 数上限限制条件
  • 位置
JSON 结果

以下示例展示了使用列出节点池操作时收到的 JSON 结果输出:

{
    "nodePools": [
        {
            "name": "example-pool",
            "config": {
                "machineType": "e2-micro",
                "diskSizeGb": 15,
                "oauthScopes": [
                    "https://www.googleapis.com/auth/devstorage.read_only",
                    "https://www.googleapis.com/auth/logging.write",
                    "https://www.googleapis.com/auth/monitoring",
                    "https://www.googleapis.com/auth/servicecontrol",
                    "https://www.googleapis.com/auth/service.management.readonly",
                    "https://www.googleapis.com/auth/trace.append"
                ],
                "metadata": {
                    "disable-legacy-endpoints": "true"
                },
                "imageType": "COS",
                "tags": [
                    "pod-net-tag"
                ],
                "serviceAccount": "default",
                "diskType": "pd-standard",
                "shieldedInstanceConfig": {
                    "enableIntegrityMonitoring": true
                }
            },
            "initialNodeCount": 3,
            "autoscaling": {},
            "management": {
                "autoUpgrade": true,
                "autoRepair": true
            },
            "maxPodsConstraint": {
                "maxPodsPerNode": "8"
            },
            "podIpv4CidrSize": 28,
            "locations": [
                "europe-central2-a"
            ],
            "networkConfig": {
                "podRange": "gke-cluster-example-pods-ID",
                "podIpv4CidrBlock": "192.0.2.0/24"
            },
            "selfLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/clusters/cluster-example/nodePools/example-pool",
            "version": "1.18.20-gke.900",
            "instanceGroupUrls": [
                "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/europe-central2-a/instanceGroupManagers/gke-cluster-example-example-pool-ID-grp"
            ],
            "status": "RUNNING",
            "upgradeSettings": {
                "maxSurge": 1
            }
        }
    ]
}
输出消息

列出节点池操作可以返回以下输出消息:

输出消息 消息说明

Successfully found node pools for cluster CLUSTER_NAME for the provided criteria in GKE.

No node pools were found for cluster CLUSTER_NAME for the provided criteria in GKE.

操作成功。

Provided cluster location CLUSTER_LOCATION does not exist.

Provided cluster name CLUSTER_NAME was not found.

Invalid value was provided for "Max Records to Return": MAX_RECORDS_TO_RETURN. Positive number should be provided.

Error executing action "List Node Pools". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用列出节点池操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

列出操作

使用 List Operations 操作可根据指定的搜索条件列出某个位置的 GKE 操作。

过滤逻辑适用于 operation name 字段。

此操作不适用于 Google SecOps 实体。

操作输入

列出操作操作需要以下参数:

参数 说明
Cluster Location

必填。

要搜索操作的位置,例如 europe-central2-a

Filter Logic

可选。

要应用的过滤逻辑。

过滤逻辑适用于 cluster name 字段。

可能的值如下:

  • Equal
  • Contains

默认值为 Equal

Filter Value

可选。

要用于过滤的值。

过滤逻辑适用于 cluster name 字段。

如果您将 Filter Logic 参数设置为 Equal,则操作会在结果中搜索 Filter Value 完全匹配项。如果您将 Filter Logic 参数设置为 Contains,则该操作会搜索包含您在此参数中指定的子字符串的结果。如果您未设置值,相应操作会忽略该过滤条件。

Max Records To Return

可选。

要返回的记录数。

默认值为 50

操作输出

列出操作操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
“支持请求墙”表格

列出操作操作可以返回下表:

表格名称:Found Operations

表列:

  • 名称
  • 可用区
  • 操作类型
  • 状态
  • 开始时间
  • 结束时间
  • 目标链接
  • 自链接
JSON 结果

以下示例展示了使用列出操作操作时收到的 JSON 结果输出:

{
    "operations": [
        {
            "name": "operation-OPERATION_ID",
            "zone": "europe-central2-a",
            "operationType": "UPGRADE_MASTER",
            "status": "DONE",
            "selfLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/operations/operation-OPERATION_ID",
            "targetLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/clusters/cluster-example",
            "startTime": "2021-08-06T12:33:51.614562051Z",
            "endTime": "2021-08-06T12:38:55.038159801Z"
        },
    ]
}
输出消息

列出操作操作可以返回以下输出消息:

输出消息 消息说明

Successfully found operations for the provided criteria in GKE.

No operations were found for the provided criteria in GKE.

操作成功。

Provided cluster location CLUSTER_LOCATION does not exist.

Error executing action "List Operations". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用 List Operations 操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

Ping

使用 Ping 操作测试与 GKE 的连接。

此操作不适用于 Google SecOps 实体。

操作输入

无。

操作输出

Ping 操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 不可用
输出消息 可用
脚本结果 可用
输出消息

Ping 操作可以返回以下输出消息:

输出消息 消息说明
Successfully connected to the GKE service with the provided connection parameters! 操作成功。
Failed to connect to the GKE service! Error is ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用 Ping 操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

设置集群插件

使用 Set Cluster Addons 操作为 GKE 集群设置插件。

如果目标集群已在进行配置更改,则在当前配置更改完成之前,它无法接受新的配置更改。

此操作异步运行。根据需要调整 Google SecOps IDE 设置。

此操作不适用于 Google SecOps 实体。

操作输入

设置集群插件操作需要以下参数:

参数 说明
Cluster Location

必填。

要搜索集群的位置,例如 europe-central2-a

Cluster Name

必填。

要搜索的集群的名称。

HTTP Load Balancing

可选。

HTTP 负载均衡插件的值。

可能的值如下:

  • Not Changed
  • Disabled
  • Enabled

默认值为 Not Changed

Horizontal Pod Autoscaling

可选。

Pod 横向自动扩缩插件的值。

可能的值如下:

  • Not Changed
  • Disabled
  • Enabled

默认值为 Not Changed

Network Policy Config

可选。

网络政策配置插件的值。

可能的值如下:

  • Not Changed
  • Disabled
  • Enabled

默认值为 Not Changed

Cloud Run Config

可选。

Cloud Run 配置插件的值。

可能的值如下:

  • Not Changed
  • Disabled
  • Enabled, Load Balancer Type Unspecified
  • Enabled, Load Balancer Type External
  • Enabled, Load Balancer Type Internal

默认值为 Not Changed

DNS Cache Config

可选。

DNS 缓存配置插件的值。

可能的值如下:

  • Not Changed
  • Disabled
  • Enabled

默认值为 Not Changed

Config Connector Config

可选。

Config Connector 配置插件的值。

可能的值如下:

  • Not Changed
  • Disabled
  • Enabled

默认值为 Not Changed

Persistent Disk Csi Driver Config

可选。

为 Compute Engine 永久性磁盘容器存储接口 (CSI) 驱动程序配置插件指定值。

可能的值如下:

  • Not Changed
  • Disabled
  • Enabled

默认值为 Not Changed

Wait for cluster configuration change operation to finish

可选。

如果选择此项,操作会等待集群配置更改操作的结果。

此选项将会默认选中。

操作输出

设置集群插件操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用设置集群插件操作时收到的 JSON 结果输出:

{
   "name": "operation-OPERATION_ID",
   "zone": "europe-central2-a",
   "operationType": "UPDATE_CLUSTER",
   "status": "RUNNING",
   "selfLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/operations/operation-OPERATION_ID",
   "targetLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/clusters/cluster-test",
   "startTime": "2021-08-15T11:34:43.051036236Z"
}
输出消息

设置集群插件操作可能会返回以下输出消息:

输出消息 消息说明

Successfully created cluster configuration change operation.

Failed to execute the action because API returned error, please see action logs LOG_SNIPPET.

Operation OPERATION_NAME is still in progress, current status: STATUS.

Operation OPERATION_NAME successfully finished.

Operation OPERATION_NAME failed to complete with the following status: STATUS.

操作成功。

Provided cluster location CLUSTER_LOCATION does not exist.

Provided cluster name CLUSTER_NAME was not found.

Error executing action "Set Cluster Addons". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用 Set Cluster Addons 操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

设置集群标签

使用 Set Cluster Labels 操作为 GKE 集群设置标签。该操作会将新标签附加到任何现有集群标签。

如果目标集群已在进行配置更改,则在当前配置更改完成之前,它无法接受新的配置更改。

此操作异步运行。根据需要调整 Google SecOps IDE 设置。

此操作不适用于 Google SecOps 实体。

操作输入

设置集群标签操作需要以下参数:

参数 说明
Cluster Location

必填。

要搜索集群的位置,例如 europe-central2-a

Cluster Name

必填。

要搜索的集群的名称。

Cluster Labels

必填。

一个 JSON 对象,包含要添加到集群的标签。该操作会将新标签附加到任何现有集群标签。

默认值为:

{
      "key1":"value1",
      "key2":"value2"
      }
    
Wait for cluster configuration change operation to finish

可选。

如果选择此项,操作会等待集群配置更改操作的结果。

默认情况下未选中。

操作输出

设置集群标签操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用设置集群标签操作时收到的 JSON 结果输出:

{
    "name": "operation-OPERATION_ID",
    "zone": "europe-central2-a",
    "operationType": "UPDATE_CLUSTER",
    "status": "RUNNING",
    "selfLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/operations/operation-OPERATION_ID",
    "targetLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/clusters/cluster-test",
    "startTime": "2021-08-15T11:53:55.904254615Z"
}
输出消息

设置集群标签操作可能会返回以下输出消息:

输出消息 消息说明

Successfully created cluster configuration change operation.

Operation OPERATION_NAME is still in progress, current status: STATUS.

Operation OPERATION_NAME successfully finished.

Operation OPERATION_NAME failed to complete with the following status: STATUS.

Operation OPERATION_NAME failed to complete with the following status: STATUS.

操作成功。

Provided cluster location CLUSTER_LOCATION does not exist.

Invalid value was provided for the cluster labels: CLUSTER_LABELS.

Error executing action "Set Cluster Labels". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用设置集群标签操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

设置节点自动扩缩

使用设置节点自动伸缩操作为 GKE 集群设置节点池自动伸缩配置。相应操作是异步的。

如果目标集群已在进行配置更改,则在当前配置更改完成之前,它无法接受新的配置更改。

此操作异步运行。根据需要调整 Google SecOps IDE 设置。

此操作不适用于 Google SecOps 实体。

操作输入

设置节点自动扩缩操作需要以下参数:

参数 说明
Cluster Location

必填。

要搜索集群的位置,例如 europe-central2-a

Cluster Name

必填。

要搜索的集群的名称。

Node Pool Name

必填。

集群的节点池名称。

Autoscaling Mode

可选。

节点池的自动伸缩模式状态。

可能的值如下:

  • Not Changed
  • Enabled
  • Disabled

默认值为 Not Changed

Minimum Node Count

可选。

节点池配置的最小节点数。

Maximum Node Count

可选。

节点池配置的节点数上限。

Wait for cluster configuration change operation to finish

可选。

如果选择此项,操作会等待集群配置更改操作的结果。

默认情况下未选中。

操作输出

设置节点自动扩缩操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用 Set Node Autoscaling 操作时收到的 JSON 结果输出:

{
    "name": "operation-OPERATION_ID",
    "zone": "europe-central2-a",
    "operationType": "UPDATE_CLUSTER",
    "status": "RUNNING",
    "selfLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/operations/operation-OPERATION_ID",
    "targetLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/clusters/cluster-test",
    "startTime": "2021-08-15T11:53:55.904254615Z"
}
输出消息

设置节点自动扩缩操作可能会返回以下输出消息:

输出消息 消息说明

Successfully created cluster node pool configuration change operation.

Failed to execute the action because API returned error, please see action logs LOG_SNIPPET.

Operation OPERATION_NAME is still in progress, current status: STATUS.

Operation OPERATION_NAME successfully finished.

Operation OPERATION_NAME failed to complete with the following status: STATUS.

操作成功。

Provided cluster location CLUSTER_LOCATION does not exist.

Provided cluster name CLUSTER_NAME was not found.

Error executing action "Set Node Autoscaling". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用设置节点自动扩缩操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

设置节点池管理

使用 Set Node Pool Management 操作为 GKE 集群设置节点池管理配置。

此操作异步运行。根据需要调整 Google SecOps IDE 设置。

此操作不适用于 Google SecOps 实体。

操作输入

设置节点池管理操作需要以下参数:

参数 说明
Cluster Location

必填。

要搜索集群的位置,例如 europe-central2-a

Cluster Name

必填。

要搜索的集群的名称。

Node Pool Name

必填。

GKE 集群的节点池名称。

Auto Upgrade

可选。

自动升级管理功能的状态。

Auto Repair

可选。

自动修复管理功能的状态。

Wait for cluster configuration change operation to finish

可选。

如果选择此项,操作会等待集群配置更改操作的结果。

默认情况下未选中。

操作输出

设置节点池管理操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用 设置节点池管理操作时收到的 JSON 结果输出:

{
    "name": "operation-OPERATION_ID",
    "zone": "europe-central2-a",
    "operationType": "SET_NODE_POOL_MANAGEMENT",
    "status": "RUNNING",
    "selfLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/operations/operation-OPERATION_ID",
    "targetLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/clusters/cluster-test/nodePools/default-pool",
    "startTime": "2021-08-15T11:53:55.904254615Z"
}
输出消息

设置节点池管理操作可以返回以下输出消息:

输出消息 消息说明

Successfully created cluster node pool configuration change operation.

Failed to execute the action because API returned error, please see action logs LOG_SNIPPET.

Operation OPERATION_NAME is still in progress, current status: STATUS.

Operation OPERATION_NAME successfully finished.

Operation OPERATION_NAME failed to complete with the following status: STATUS.

操作成功。

Provided cluster location CLUSTER_LOCATION does not exist.

Provided cluster name CLUSTER_NAME was not found.

Provided node pool name NODE_POOL_NAME was not found.

Error executing action "Set Node Pool Management". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用设置节点池管理操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

设置节点数

使用设置节点数量操作为 GKE 集群节点池设置节点数量。

此操作异步运行。根据需要调整 Google SecOps IDE 设置。

此操作不适用于 Google SecOps 实体。

操作输入

设置节点数量操作需要以下参数:

参数 说明
Cluster Location

必填。

要搜索集群的位置,例如 europe-central2-a

Cluster Name

必填。

要搜索的集群的名称。

Node Pool Name

必填。

GKE 集群的节点池名称。

Node Count

必填。

GKE 集群节点池的节点数。

Wait for cluster configuration change operation to finish

可选。

如果选择此项,操作会等待集群配置更改操作的结果。

默认情况下未选中。

操作输出

设置节点数操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用设置节点数量操作时收到的 JSON 结果输出:

{
    "name": "operation-OPERATION_ID",
    "zone": "europe-central2-a",
    "operationType": "SET_NODE_POOL_SIZE",
    "status": "RUNNING",
    "selfLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/operations/operation-OPERATION_ID",
    "targetLink": "https://container.googleapis.com/v1/projects/PROJECT_ID/zones/europe-central2-a/clusters/cluster-test/nodePools/default-pool",
    "startTime": "2021-08-15T11:53:55.904254615Z"
}
输出消息

设置节点数量操作可能会返回以下输出消息:

输出消息 消息说明

Successfully created cluster node pool configuration change operation.

Failed to execute the action because API returned error, please see action logs LOG_SNIPPET.

Operation OPERATION_NAME is still in progress, current status: STATUS.

Operation OPERATION_NAME successfully finished.

Operation OPERATION_NAME failed to complete with the following status: STATUS.

操作成功。

Provided cluster location CLUSTER_LOCATION does not exist.

Provided cluster name CLUSTER_NAME was not found.

Provided node pool name NODE_POOL_NAME was not found.

Invalid value was provided for the node count: NODE_COUNT. The value should be a positive number.

Error executing action "Set Node Count". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用设置节点数操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。