airflow.providers.google.cloud.operators.compute

此模块包含 Google Compute Engine 运算符。

模块内容

ComputeEngineBaseOperator

Google Compute Engine 运算符继承的抽象基类运算符。

ComputeEngineInsertInstanceOperator

基于指定的参数在 Google Compute Engine 中创建实例。

ComputeEngineInsertInstanceFromTemplateOperator

基于现有模板中指定的参数在 Google Compute Engine 中创建实例。

ComputeEngineDeleteInstanceOperator

删除 Google Compute Engine 中的实例。

ComputeEngineStartInstanceOperator

启动 Google Compute Engine 中的实例。

ComputeEngineStopInstanceOperator

停止 Google Compute Engine 中的实例。

ComputeEngineSetMachineTypeOperator

将已停止实例的机器类型更改为请求中指定的机器类型。

ComputeEngineInsertInstanceTemplateOperator

使用指定字段创建实例模板。

ComputeEngineDeleteInstanceTemplateOperator

删除 Google Compute Engine 中的实例模板。

ComputeEngineCopyInstanceTemplateOperator

复制实例模板,并应用指定的更改。

ComputeEngineInstanceGroupUpdateManagerTemplateOperator

修补实例组管理器,用目标模板 URL 替换源模板 URL。

ComputeEngineInsertInstanceGroupManagerOperator

使用指定的主体创建实例组管理器。

ComputeEngineDeleteInstanceGroupManagerOperator

永久且不可撤销地删除实例组管理器。

属性

SET_MACHINE_TYPE_VALIDATION_SPECIFICATION

GCE_INSTANCE_TEMPLATE_VALIDATION_PATCH_SPECIFICATION

GCE_INSTANCE_FIELDS_TO_SANITIZE

class airflow.providers.google.cloud.operators.compute.ComputeEngineBaseOperator(*, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', impersonation_chain=None, **kwargs)[source]

基类: airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

Google Compute Engine 运算符继承的抽象基类运算符。

execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineInsertInstanceOperator(*, body, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, request_id=None, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基类: ComputeEngineBaseOperator

基于指定的参数在 Google Compute Engine 中创建实例。

另请参阅

有关如何使用此运算符的更多信息,请参阅指南: ComputeEngineInsertInstanceOperator

参数
  • body (dict) – 实例表示为对象。应至少包括“name”、“machine_type”、“disks”和“network_interfaces”字段,但不包括“zone”字段,因为它将在“zone”参数中指定。完整或部分 URL,可以表示为以下示例:1.“machine_type”:“projects/your-project-name/zones/your-zone/machineTypes/your-machine-type” 2.“disk_type”:“projects/your-project-name/zones/your-zone/diskTypes/your-disk-type” 3.“subnetwork”:“projects/your-project-name/regions/your-region/subnetworks/your-subnetwork”

  • zone (str) – Google Cloud 实例所在的区域

  • project_id (str) – Google Cloud Compute Engine 实例所在的项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • resource_id (str | None) – 实例的名称。如果实例的名称未在 body[‘name’] 中指定,则将从 ‘resource_id’ 参数获取名称

  • request_id (str | None) – 您可能添加的唯一 request_id,以实现完全幂等性(例如,当客户端调用超时时,重复使用同一请求 id 的请求将不会再次创建新的实例模板)。它应采用 RFC 4122 中定义的 UUID 格式

  • gcp_conn_id (str) – 用于连接到 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本(例如 v1 - 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐户,或获取列表中最后一个帐户的 access_token 所需的帐户链表,该帐户将在请求中模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧接的前一个标识,列表中的第一个帐户将此角色授予原始帐户(模板化)。

  • retry (google.api_core.retry.Retry | None) – 用于重试请求的重试对象。如果指定 None,则不会重试请求。

  • timeout (float | None) – 等待请求完成的超时时间,以秒为单位。请注意,如果指定了 retry,则超时时间适用于每次单独的尝试。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供给方法的额外元数据。

template_fields: collections.abc.Sequence[str] = ('body', 'project_id', 'zone', 'request_id', 'gcp_conn_id', 'api_version',...[source]
check_body_fields()[source]
execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineInsertInstanceFromTemplateOperator(*, source_instance_template, body, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, request_id=None, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基类: ComputeEngineBaseOperator

基于现有模板中指定的参数在 Google Compute Engine 中创建实例。

另请参阅

有关如何使用此运算符的更多信息,请查看以下指南: ComputeEngineInsertInstanceFromTemplateOperator

参数
  • body (dict) – 实例表示为对象。对于此运算符,只需要“name”参数来创建新实例,因为所有其他参数将通过模板传递。

  • source_instance_template (str) – 将用作创建新实例基础的现有实例模板。指定后,在创建新实例时,只需在“body”参数中提供新实例的名称作为输入参数。所有其他参数,如“machine_type”、“disks”和“network_interfaces”将按照实例模板中的指定传递给实例。完整或部分 URL,可以用以下示例表示: 1. “https://www.googleapis.com/compute/v1/projects/your-project-name/global/instanceTemplates/temp” 2. “projects/your-project-name/global/instanceTemplates/temp” 3. “global/instanceTemplates/temp”

  • zone (str) – 实例所在的 Google Cloud 区域。

  • project_id (str) – Google Cloud Compute Engine 实例所在的项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • resource_id (str | None) – 实例的名称。如果实例的名称未在 body[‘name’] 中指定,则将从 ‘resource_id’ 参数获取名称

  • request_id (str | None) – 您可能添加的唯一 request_id,以实现完全幂等性(例如,当客户端调用超时时,重复使用同一请求 id 的请求将不会再次创建新的实例模板)。它应采用 RFC 4122 中定义的 UUID 格式

  • gcp_conn_id (str) – 用于连接到 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本(例如 v1 - 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐户,或获取列表中最后一个帐户的 access_token 所需的帐户链表,该帐户将在请求中模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧接的前一个标识,列表中的第一个帐户将此角色授予原始帐户(模板化)。

  • retry (google.api_core.retry.Retry | None) – 用于重试请求的重试对象。如果指定 None,则不会重试请求。

  • timeout (float | None) – 等待请求完成的超时时间,以秒为单位。请注意,如果指定了 retry,则超时时间适用于每次单独的尝试。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供给方法的额外元数据。

template_fields: collections.abc.Sequence[str] = ('body', 'source_instance_template', 'project_id', 'zone', 'request_id', 'gcp_conn_id',...[source]
execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineDeleteInstanceOperator(*, resource_id, zone, request_id=None, project_id=PROVIDE_PROJECT_ID, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基类: ComputeEngineBaseOperator

删除 Google Compute Engine 中的实例。

另请参阅

有关如何使用此运算符的更多信息,请查看以下指南: ComputeEngineDeleteInstanceOperator

参数
  • project_id (str) – Google Cloud Compute Engine 实例所在的项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • zone (str) – 实例所在的 Google Cloud 区域。

  • resource_id (str) – 实例的名称。

  • request_id (str | None) – 您可能添加的唯一 request_id,以实现完全幂等性(例如,当客户端调用超时时,重复使用同一请求 id 的请求将不会再次创建新的实例模板)。它应采用 RFC 4122 中定义的 UUID 格式

  • gcp_conn_id (str) – 用于连接到 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本(例如 v1 - 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐户,或获取列表中最后一个帐户的 access_token 所需的帐户链表,该帐户将在请求中模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧接的前一个标识,列表中的第一个帐户将此角色授予原始帐户(模板化)。

  • retry (google.api_core.retry.Retry | None) – 用于重试请求的重试对象。如果指定 None,则不会重试请求。

  • timeout (float | None) – 等待请求完成的超时时间,以秒为单位。请注意,如果指定了 retry,则超时时间适用于每次单独的尝试。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供给方法的额外元数据。

template_fields: collections.abc.Sequence[str] = ('zone', 'resource_id', 'request_id', 'project_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineStartInstanceOperator(*, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', impersonation_chain=None, **kwargs)[source]

基类: ComputeEngineBaseOperator

启动 Google Compute Engine 中的实例。

另请参阅

有关如何使用此操作符的更多信息,请查看以下指南:ComputeEngineStartInstanceOperator

参数
  • zone (str) – 实例所在的 Google Cloud 区域。

  • resource_id (str | None) – Compute Engine 实例资源的名称。

  • project_id (str) – 可选,Compute Engine 实例所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 可选,用于连接 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version (str) – 可选,使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选,用于使用短期凭据模拟的服务帐户,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,该 access_token 将在请求中被模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须向直接前面的标识授予“服务帐户令牌创建者”IAM 角色,列表中的第一个帐户向原始帐户授予此角色(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'zone', 'resource_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineStopInstanceOperator(*, zone, resource_id=None, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', impersonation_chain=None, **kwargs)[source]

基类: ComputeEngineBaseOperator

停止 Google Compute Engine 中的实例。

另请参阅

有关如何使用此操作符的更多信息,请查看以下指南:ComputeEngineStopInstanceOperator

参数
  • zone (str) – 实例所在的 Google Cloud 区域。

  • resource_id (str | None) – Compute Engine 实例资源的名称。

  • project_id (str) – 可选,Compute Engine 实例所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 可选,用于连接 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version (str) – 可选,使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选,用于使用短期凭据模拟的服务帐户,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,该 access_token 将在请求中被模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须向直接前面的标识授予“服务帐户令牌创建者”IAM 角色,列表中的第一个帐户向原始帐户授予此角色(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'zone', 'resource_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

airflow.providers.google.cloud.operators.compute.SET_MACHINE_TYPE_VALIDATION_SPECIFICATION[source]
class airflow.providers.google.cloud.operators.compute.ComputeEngineSetMachineTypeOperator(*, zone, resource_id, body, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基类: ComputeEngineBaseOperator

将已停止实例的机器类型更改为请求中指定的机器类型。

另请参阅

有关如何使用此操作符的更多信息,请查看以下指南:ComputeEngineSetMachineTypeOperator

参数
  • zone (str) – 实例所在的 Google Cloud 区域。

  • resource_id (str) – Compute Engine 实例资源的名称。

  • body (dict) – Compute Engine setMachineType API 所需的主体,如 https://cloud.google.com/compute/docs/reference/rest/v1/instances/setMachineType#request-body 中所述

  • project_id (str) – 可选,Compute Engine 实例所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • gcp_conn_id (str) – 可选,用于连接 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version (str) – 可选,使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • validate_body (bool) – 可选,如果设置为 False,则不执行主体验证。默认为 False。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选,用于使用短期凭据模拟的服务帐户,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,该 access_token 将在请求中被模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须向直接前面的标识授予“服务帐户令牌创建者”IAM 角色,列表中的第一个帐户向原始帐户授予此角色(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'zone', 'resource_id', 'body', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

airflow.providers.google.cloud.operators.compute.GCE_INSTANCE_TEMPLATE_VALIDATION_PATCH_SPECIFICATION: list[dict[str, Any]][source]
airflow.providers.google.cloud.operators.compute.GCE_INSTANCE_FIELDS_TO_SANITIZE = ['kind', 'id', 'creationTimestamp', 'properties.disks.sha256', 'properties.disks.kind',...[source]
class airflow.providers.google.cloud.operators.compute.ComputeEngineInsertInstanceTemplateOperator(*, body, project_id=PROVIDE_PROJECT_ID, resource_id=None, request_id=None, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基类: ComputeEngineBaseOperator

使用指定字段创建实例模板。

另请参阅

有关如何使用此运算符的更多信息,请查看指南: ComputeEngineInsertInstanceTemplateOperator

参数
  • body (dict) – 实例模板表示为对象。

  • project_id (str) – Google Cloud Compute Engine 实例所在的项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • request_id (str | None) – 您可能添加的唯一 request_id,以实现完全幂等性(例如,当客户端调用超时时,重复使用同一请求 id 的请求将不会再次创建新的实例模板)。它应采用 RFC 4122 中定义的 UUID 格式

  • resource_id (str | None) – 实例模板的名称。如果实例模板的名称未在 body[‘name’] 中指定,则该名称将从 ‘resource_id’ 参数中获取。

  • gcp_conn_id (str) – 用于连接到 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本(例如 v1 - 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐户,或获取列表中最后一个帐户的 access_token 所需的帐户链表,该帐户将在请求中模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧接的前一个标识,列表中的第一个帐户将此角色授予原始帐户(模板化)。

  • retry (google.api_core.retry.Retry | None) – 用于重试请求的重试对象。如果指定 None,则不会重试请求。

  • timeout (float | None) – 等待请求完成的超时时间,以秒为单位。请注意,如果指定了 retry,则超时时间适用于每次单独的尝试。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供给方法的额外元数据。

template_fields: collections.abc.Sequence[str] = ('body', 'project_id', 'request_id', 'gcp_conn_id', 'api_version', 'impersonation_chain', 'resource_id')[source]
check_body_fields()[source]
execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineDeleteInstanceTemplateOperator(*, resource_id, request_id=None, project_id=PROVIDE_PROJECT_ID, retry=None, timeout=None, metadata=(), gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[source]

基类: ComputeEngineBaseOperator

删除 Google Compute Engine 中的实例模板。

另请参阅

有关如何使用此运算符的更多信息,请查看指南: ComputeEngineDeleteInstanceTemplateOperator

参数
  • resource_id (str) – 实例模板的名称。

  • project_id (str) – Google Cloud Compute Engine 实例所在的项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • request_id (str | None) – 您可能添加的唯一 request_id,以实现完全幂等性(例如,当客户端调用超时时,重复使用同一请求 id 的请求将不会再次创建新的实例模板)。它应采用 RFC 4122 中定义的 UUID 格式

  • gcp_conn_id (str) – 用于连接到 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version (str) – 使用的 API 版本(例如 v1 - 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐户,或获取列表中最后一个帐户的 access_token 所需的帐户链表,该帐户将在请求中模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧接的前一个标识,列表中的第一个帐户将此角色授予原始帐户(模板化)。

  • retry (google.api_core.retry.Retry | None) – 用于重试请求的重试对象。如果指定 None,则不会重试请求。

  • timeout (float | None) – 等待请求完成的超时时间,以秒为单位。请注意,如果指定了 retry,则超时时间适用于每次单独的尝试。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供给方法的额外元数据。

template_fields: collections.abc.Sequence[str] = ('resource_id', 'request_id', 'project_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[来源]
execute(context)[来源]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineCopyInstanceTemplateOperator(*, resource_id, body_patch, project_id=PROVIDE_PROJECT_ID, request_id=None, gcp_conn_id='google_cloud_default', api_version='v1', validate_body=True, impersonation_chain=None, **kwargs)[来源]

基类: ComputeEngineBaseOperator

复制实例模板,并应用指定的更改。

另请参阅

有关如何使用此运算符的更多信息,请查看指南:ComputeEngineCopyInstanceTemplateOperator

参数
  • resource_id (str) – 实例模板的名称

  • body_patch (dict) – 遵循 rfc7386 PATCH 语义的 instanceTemplates 对象主体的补丁。body_patch 内容遵循 https://cloud.google.com/compute/docs/reference/rest/v1/instanceTemplates 需要 name 字段,因为我们需要重命名模板,所有其他字段都是可选的。重要的是要遵循 PATCH 语义 - 数组将被完全替换,因此如果您需要更新数组,则应提供整个目标数组作为补丁元素。

  • project_id (str) – 可选,Compute Engine 实例所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • request_id (str | None) – 可选,您可能会添加的唯一 request_id,以实现完全的幂等性(例如,当客户端调用超时时,使用相同的 request id 重复请求不会再次创建新的实例模板)。它应为 RFC 4122 中定义的 UUID 格式。

  • gcp_conn_id (str) – 可选,用于连接 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version (str) – 可选,使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • validate_body (bool) – 可选,如果设置为 False,则不执行主体验证。默认为 False。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选,用于使用短期凭据模拟的服务帐户,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,该 access_token 将在请求中被模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须向直接前面的标识授予“服务帐户令牌创建者”IAM 角色,列表中的第一个帐户向原始帐户授予此角色(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'resource_id', 'request_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[来源]
execute(context)[来源]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineInstanceGroupUpdateManagerTemplateOperator(*, resource_id, zone, source_template, destination_template, project_id=PROVIDE_PROJECT_ID, update_policy=None, request_id=None, gcp_conn_id='google_cloud_default', api_version='beta', impersonation_chain=None, **kwargs)[来源]

基类: ComputeEngineBaseOperator

修补实例组管理器,用目标模板 URL 替换源模板 URL。

API V1 没有 Instance Group Manager 的更新/补丁操作,因此您必须使用 beta 或更新的 API 版本。Beta 是默认版本。

另请参阅

有关如何使用此运算符的更多信息,请查看指南:ComputeEngineInstanceGroupUpdateManagerTemplateOperator

参数
  • resource_id (str) – 实例组管理器的名称

  • zone (str) – 实例组管理器所在的 Google Cloud 区域。

  • source_template (str) – 要替换的模板的 URL。

  • destination_template (str) – 目标模板的 URL。

  • project_id (str) – 可选,Compute Engine 实例所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用 Google Cloud 连接中的默认 project_id。

  • request_id (str | None) – 可选,您可能会添加的唯一 request_id,以实现完全的幂等性(例如,当客户端调用超时时,使用相同的 request id 重复请求不会再次创建新的实例模板)。它应为 RFC 4122 中定义的 UUID 格式。

  • gcp_conn_id (str) – 可选,用于连接 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version – 可选,使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选,用于使用短期凭据模拟的服务帐户,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,该 access_token 将在请求中被模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须向直接前面的标识授予“服务帐户令牌创建者”IAM 角色,列表中的第一个帐户向原始帐户授予此角色(模板化)。

template_fields: collections.abc.Sequence[str] = ('project_id', 'resource_id', 'zone', 'request_id', 'source_template', 'destination_template',...[来源]
execute(context)[来源]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineInsertInstanceGroupManagerOperator(*, body, zone, project_id=PROVIDE_PROJECT_ID, resource_id=None, request_id=None, gcp_conn_id='google_cloud_default', api_version='v1', retry=None, timeout=None, metadata=(), impersonation_chain=None, validate_body=True, **kwargs)[source]

基类: ComputeEngineBaseOperator

使用指定的主体创建实例组管理器。

在创建组后,将使用指定的实例模板创建组中的实例。

另请参阅

有关如何使用此操作符的更多信息,请查看以下指南:ComputeEngineInsertInstanceGroupManagerOperator

参数
  • body (dict) – 实例组管理器表示为对象。

  • project_id (str) – Compute Engine 实例组管理器所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用来自 Google Cloud 连接的默认 project_id。

  • request_id (str | None) – 您可以添加的唯一 request_id,以实现完全幂等性(例如,当客户端调用超时时,使用相同的请求 id 重复请求不会再次创建新的实例组管理器)。它应采用 RFC 4122 中定义的 UUID 格式。

  • resource_id (str | None) – 实例组管理器的名称。如果 body['name'] 中未指定实例组管理器的名称,则该名称将取自 'resource_id' 参数。

  • gcp_conn_id (str) – 用于连接到 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version – 使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐户,或获取列表中最后一个帐户的 access_token 所需的帐户链表,该帐户将在请求中模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧接的前一个标识,列表中的第一个帐户将此角色授予原始帐户(模板化)。

  • retry (google.api_core.retry.Retry | None) – 用于重试请求的重试对象。如果指定 None,则不会重试请求。

  • timeout (float | None) – 等待请求完成的超时时间,以秒为单位。请注意,如果指定了 retry,则超时时间适用于每次单独的尝试。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供给方法的额外元数据。

template_fields: collections.abc.Sequence[str] = ('project_id', 'body', 'zone', 'request_id', 'gcp_conn_id', 'api_version',...[source]
check_body_fields()[source]
execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

class airflow.providers.google.cloud.operators.compute.ComputeEngineDeleteInstanceGroupManagerOperator(*, resource_id, zone, project_id=PROVIDE_PROJECT_ID, request_id=None, gcp_conn_id='google_cloud_default', api_version='v1', retry=None, timeout=None, metadata=(), impersonation_chain=None, validate_body=True, **kwargs)[source]

基类: ComputeEngineBaseOperator

永久且不可撤销地删除实例组管理器。

另请参阅

有关如何使用此操作符的更多信息,请查看以下指南:ComputeEngineDeleteInstanceGroupManagerOperator

参数
  • resource_id (str) – 实例组管理器的名称。

  • project_id (str) – Compute Engine 实例组管理器所在的 Google Cloud 项目 ID。如果设置为 None 或缺失,则使用来自 Google Cloud 连接的默认 project_id。

  • request_id (str | None) – 您可以添加的唯一 request_id,以实现完全幂等性(例如,当客户端调用超时时,使用相同的请求 id 重复请求不会再次创建新的实例组管理器)。它应采用 RFC 4122 中定义的 UUID 格式。

  • gcp_conn_id (str) – 用于连接到 Google Cloud 的连接 ID。默认为 ‘google_cloud_default’。

  • api_version – 使用的 API 版本(例如 v1 或 beta)。默认为 v1。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 使用短期凭据模拟的服务帐户,或获取列表中最后一个帐户的 access_token 所需的帐户链表,该帐户将在请求中模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧接的前一个标识,列表中的第一个帐户将此角色授予原始帐户(模板化)。

  • retry (google.api_core.retry.Retry | None) – 用于重试请求的重试对象。如果指定 None,则不会重试请求。

  • timeout (float | None) – 等待请求完成的超时时间,以秒为单位。请注意,如果指定了 retry,则超时时间适用于每次单独的尝试。

  • metadata (collections.abc.Sequence[tuple[str, str]]) – 提供给方法的额外元数据。

template_fields: collections.abc.Sequence[str] = ('project_id', 'resource_id', 'zone', 'request_id', 'gcp_conn_id', 'api_version', 'impersonation_chain')[source]
execute(context)[source]

在创建运算符时派生。

上下文与渲染 jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

此条目是否有帮助?