airflow.providers.google.cloud.operators.kubernetes_engine

本模組包含 Google Kubernetes Engine 運算子。

屬性

KUBE_CONFIG_ENV_VAR

GKEClusterAuthDetails

用於獲取叢集連線資訊的助手。

GKEOperatorMixin

GKE 運算子的 Mixin,提供統一的 Hook 建立方式。

GKEDeleteClusterOperator

刪除叢集,包括 Kubernetes 端點和所有工作節點。

GKECreateClusterOperator

建立指定配置的 Google Kubernetes Engine 叢集,並等待叢集建立完成。

GKEStartKueueInsideClusterOperator

在叢集內部安裝特定版本的 Kueue。

GKEStartPodOperator

在指定的 Google Kubernetes Engine 叢集中的 Kubernetes Pod 內執行任務。

GKEStartJobOperator

在指定的 Google Kubernetes Engine 叢集中執行 Kubernetes Job。

GKEDescribeJobOperator

透過給定的名稱檢索 Job 的資訊。

GKEListJobsOperator

檢索 Job 列表。

GKECreateCustomResourceOperator

在指定的 Google Kubernetes Engine 叢集中建立資源。

GKEDeleteCustomResourceOperator

在指定的 Google Kubernetes Engine 叢集中刪除資源。

GKEStartKueueJobOperator

在指定的 Google Kubernetes Engine 叢集中的 Kueue 中執行 Kubernetes Job。

GKEDeleteJobOperator

在指定的 Google Kubernetes Engine 叢集中刪除 Kubernetes Job。

GKESuspendJobOperator

透過給定的名稱掛起 Job。

GKEResumeJobOperator

透過給定的名稱恢復 Job。

模組內容

airflow.providers.google.cloud.operators.kubernetes_engine.KUBE_CONFIG_ENV_VAR = 'KUBECONFIG'[source]
class airflow.providers.google.cloud.operators.kubernetes_engine.GKEClusterAuthDetails(cluster_name, project_id, use_internal_ip, use_dns_endpoint, cluster_hook)[source]

用於獲取叢集連線資訊的助手。

引數:
  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • project_id (str) – Google Developers Console 專案 ID。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • cluster_hook (airflow.providers.google.cloud.hooks.kubernetes_engine.GKEHook) – 用於操作 kubernetes 叢集的 airflow hook。

cluster_name[source]
project_id[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
cluster_hook[source]
fetch_cluster_info()[source]

獲取連線到叢集所需的資訊。

class airflow.providers.google.cloud.operators.kubernetes_engine.GKEOperatorMixin[source]

GKE 運算子的 Mixin,提供統一的 Hook 建立方式。

enable_tcp_keepalive = False[source]
template_fields: collections.abc.Sequence[str] = ('location', 'cluster_name', 'use_internal_ip', 'use_dns_endpoint', 'project_id', 'gcp_conn_id',...[source]
property cluster_hook: airflow.providers.google.cloud.hooks.kubernetes_engine.GKEHook[source]
property hook: airflow.providers.google.cloud.hooks.kubernetes_engine.GKEKubernetesHook[source]
property cluster_info: tuple[str, str][source]

獲取連線到叢集所需的資訊。

property cluster_url: str[source]
property ssl_ca_cert: str[source]
class airflow.providers.google.cloud.operators.kubernetes_engine.GKEDeleteClusterOperator(location, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, cluster_name=None, name=None, api_version='v2', deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), poll_interval=10, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

刪除叢集,包括 Kubernetes 端點和所有工作節點。

要刪除特定叢集,必須指定 project_id、叢集的 cluster_name、叢集所在的 location 以及 task_id

運算子建立:

operator = GKEClusterDeleteOperator(
            task_id='cluster_delete',
            project_id='my-project',
            location='cluster-location'
            cluster_name='cluster-name')

另請參閱

有關如何使用此運算子的更多資訊,請參閱指南:刪除 GKE 叢集

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str | None) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

  • name (str | None) – (已棄用)要刪除的資源的名稱,在此情況下是叢集名稱

  • api_version (str) – 要使用的 API 版本

  • deferrable (bool) – 在可推遲模式下執行運算子。

  • poll_interval (int) – 定義檢查操作狀態頻率的間隔大小。

template_fields: collections.abc.Sequence[str][source]
location[source]
cluster_name = None[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
project_id = None[source]
gcp_conn_id = 'google_cloud_default'[source]
impersonation_chain = None[source]
api_version = 'v2'[source]
deferrable = True[source]
poll_interval = 10[source]
property name: str | None[source]
execute(context)[source]

建立運算子時派生此方法。

Context 是與渲染 jinja 模板時使用的相同字典。

有關更多 Context,請參閱 get_template_context。

execute_complete(context, event)[source]

在 Trigger Job 完成後執行。

class airflow.providers.google.cloud.operators.kubernetes_engine.GKECreateClusterOperator(body, location, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, api_version='v2', deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), poll_interval=10, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

建立指定配置的 Google Kubernetes Engine 叢集,並等待叢集建立完成。

定義要建立的叢集所需的最低要求

dict() ::

cluster_def = {“name”: “my-cluster-name”, “initial_node_count”: 1}

Cluster proto:

from google.cloud.container_v1.types import Cluster

cluster_def = Cluster(name=”my-cluster-name”, initial_node_count=1)

運算子建立:

operator = GKEClusterCreateOperator(
            task_id='cluster_create',
            project_id='my-project',
            location='my-location'
            body=cluster_def)

另請參閱

有關建立叢集的更多詳細資訊,請參閱:google.cloud.container_v1.types.Cluster

另請參閱

有關如何使用此運算子的更多資訊,請參閱指南:建立 GKE 叢集

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

  • body (dict | google.cloud.container_v1.types.Cluster) – 要建立的叢集定義,可以是 protobuf 或 Python dict,如果為 dict,則必須與 protobuf 訊息 Cluster 匹配

  • api_version (str) – 要使用的 API 版本

  • deferrable (bool) – 在可推遲模式下執行運算子。

  • poll_interval (int) – 定義檢查操作狀態頻率的間隔大小。

template_fields: collections.abc.Sequence[str][source]
body[source]
location[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
cluster_name[source]
project_id = None[source]
gcp_conn_id = 'google_cloud_default'[source]
impersonation_chain = None[source]
api_version = 'v2'[source]
poll_interval = 10[source]
deferrable =True[source]
execute(context)[source]

建立運算子時派生此方法。

Context 是與渲染 jinja 模板時使用的相同字典。

有關更多 Context,請參閱 get_template_context。

execute_complete(context, event)[source]
class airflow.providers.google.cloud.operators.kubernetes_engine.GKEStartKueueInsideClusterOperator(location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, *args, **kwargs)[source]

Bases: GKEOperatorMixin, airflow.providers.cncf.kubernetes.operators.kueue.KubernetesInstallKueueOperator

在叢集內部安裝特定版本的 Kueue。

另請參閱

有關如何使用此操作器的更多資訊,請參閱指南:Install Kueue of specific version inside Cluster

另請參閱

有關 Kueue 的更多詳細資訊,請參閱參考資料:https://kueue.sigs.k8s.io/docs/overview/

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

enable_tcp_keepalive = True[source]
template_fields[source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
execute(context)[source]

建立運算子時派生此方法。

Context 是與渲染 jinja 模板時使用的相同字典。

有關更多 Context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.kubernetes_engine.GKEStartPodOperator(location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, regional=None, on_finish_action=None, is_delete_operator_pod=None, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), *args, **kwargs)[source]

Bases: GKEOperatorMixin, airflow.providers.cncf.kubernetes.operators.pod.KubernetesPodOperator

在指定的 Google Kubernetes Engine 叢集中的 Kubernetes Pod 內執行任務。

此操作器假定系統已安裝 gcloud 並配置了帶有服務帳戶的連線 ID。

定義要建立的叢集所需的**最少**變數是 task_idproject_idlocationcluster_namenamenamespaceimage

另請參閱

有關 Kubernetes Engine 認證的更多詳細資訊,請參閱參考資料:https://cloud.google.com/kubernetes-engine/docs/how-to/cluster-access-for-kubectl#internal_ip

另請參閱

有關如何使用此操作器的更多資訊,請參閱指南:Run a Pod on a GKE cluster

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

  • regional (bool | None) – (已棄用) location 引數是區域名稱。

  • on_finish_action (str | None) – 當 pod 達到其最終狀態或執行被中斷時應執行的操作。如果設定為“delete_pod”,則無論 pod 的狀態如何,都將被刪除;如果設定為“delete_succeeded_pod”,則僅刪除成功的 pod。您可以設定為“keep_pod”來保留 pod。當前預設值為 keep_pod,但這將在該提供程式下個主要版本中更改。

  • is_delete_operator_pod (bool | None) – (已棄用)當 pod 達到其最終狀態或執行被中斷時應執行的操作。如果為 True,刪除 pod;如果為 False,保留 pod。當前預設值為 False,但這將在該提供程式下個主要版本中更改。已棄用 - 請改用 on_finish_action

  • deferrable (bool) – 在可推遲模式下執行運算子。

template_fields: collections.abc.Sequence[str][source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
deferrable = True[source]
property is_delete_operator_pod: bool | None[source]
property regional: bool | None[source]
invoke_defer_method(last_log_time=None)[source]

重新定義在子類中使用的觸發器。

class airflow.providers.google.cloud.operators.kubernetes_engine.GKEStartJobOperator(location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), job_poll_interval=10.0, *args, **kwargs)[source]

Bases: GKEOperatorMixin, airflow.providers.cncf.kubernetes.operators.job.KubernetesJobOperator

在指定的 Google Kubernetes Engine 叢集中執行 Kubernetes Job。

此操作器假定系統已安裝 gcloud 並配置了帶有服務帳戶的連線 ID。

定義要建立的叢集所需的**最少**變數是 task_idproject_idlocationcluster_namenamenamespaceimage

另請參閱

有關 Kubernetes Engine 認證的更多詳細資訊,請參閱參考資料:https://cloud.google.com/kubernetes-engine/docs/how-to/cluster-access-for-kubectl#internal_ip

另請參閱

有關如何使用此操作器的更多資訊,請參閱指南:Run a Job on a GKE cluster

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

  • deferrable (bool) – 在可推遲模式下執行運算子。

  • poll_interval – (僅限可延遲模式)檢查作業狀態的輪詢週期(秒)。

template_fields: collections.abc.Sequence[str][source]
deferrable = True[source]
job_poll_interval = 10.0[source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
execute(context)[source]

執行建立作業的過程。

execute_deferrable()[source]
class airflow.providers.google.cloud.operators.kubernetes_engine.GKEDescribeJobOperator(job_name, namespace, location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

透過給定的名稱檢索 Job 的資訊。

另請參閱

有關如何使用此 Operator 的更多資訊,請參閱指南:按給定名稱檢索 Job 資訊

引數:
  • job_name (str) – 要刪除的 Job 的名稱

  • namespace (str) – Google Kubernetes Engine 名稱空間的名稱。

  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

template_fields: collections.abc.Sequence[str][source]
job_name[source]
namespace[source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
job: kubernetes.client.models.V1Job | None = None[source]
execute(context)[source]

建立運算子時派生此方法。

Context 是與渲染 jinja 模板時使用的相同字典。

有關更多 Context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.kubernetes_engine.GKEListJobsOperator(location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, namespace=None, do_xcom_push=True, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

檢索 Job 列表。

如果指定了 namespace 引數,將檢索指定名稱空間下的 Job 列表。如果未指定 namespace,將輸出所有名稱空間下的 Job。

另請參閱

有關如何使用此 Operator 的更多資訊,請參閱指南:檢索 Job 列表

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

  • namespace (str | None) – Google Kubernetes Engine 名稱空間的名稱。

  • do_xcom_push (bool) – 如果設定為 True,Job 結果列表將推送到任務結果中。

template_fields: collections.abc.Sequence[str][source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
namespace = None[source]
do_xcom_push = True[source]
execute(context)[source]

建立運算子時派生此方法。

Context 是與渲染 jinja 模板時使用的相同字典。

有關更多 Context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.kubernetes_engine.GKECreateCustomResourceOperator(location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.cncf.kubernetes.operators.resource.KubernetesCreateResourceOperator

在指定的 Google Kubernetes Engine 叢集中建立資源。

此操作器假定系統已安裝 gcloud 並配置了帶有服務帳戶的連線 ID。

另請參閱

有關 Kubernetes Engine 認證的更多詳細資訊,請參閱參考資料:https://cloud.google.com/kubernetes-engine/docs/how-to/cluster-access-for-kubectl#internal_ip

另請參閱

有關如何使用此 Operator 的更多資訊,請參閱指南:在 GKE 叢集中建立資源

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

template_fields: collections.abc.Sequence[str][source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
class airflow.providers.google.cloud.operators.kubernetes_engine.GKEDeleteCustomResourceOperator(location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.cncf.kubernetes.operators.resource.KubernetesDeleteResourceOperator

在指定的 Google Kubernetes Engine 叢集中刪除資源。

此操作器假定系統已安裝 gcloud 並配置了帶有服務帳戶的連線 ID。

另請參閱

有關 Kubernetes Engine 認證的更多詳細資訊,請參閱參考資料:https://cloud.google.com/kubernetes-engine/docs/how-to/cluster-access-for-kubectl#internal_ip

另請參閱

有關如何使用此 Operator 的更多資訊,請參閱指南:在 GKE 叢集中刪除資源

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

template_fields: collections.abc.Sequence[str][source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
class airflow.providers.google.cloud.operators.kubernetes_engine.GKEStartKueueJobOperator(location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.cncf.kubernetes.operators.kueue.KubernetesStartKueueJobOperator

在指定的 Google Kubernetes Engine 叢集中的 Kueue 中執行 Kubernetes Job。

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

template_fields[source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
class airflow.providers.google.cloud.operators.kubernetes_engine.GKEDeleteJobOperator(location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.cncf.kubernetes.operators.job.KubernetesDeleteJobOperator

在指定的 Google Kubernetes Engine 叢集中刪除 Kubernetes Job。

此操作器假定系統已安裝 gcloud 並配置了帶有服務帳戶的連線 ID。

定義要建立的叢集所需最少的變數是 task_id, project_id, location, cluster_name, name, namespace

另請參閱

有關 Kubernetes Engine 認證的更多詳細資訊,請參閱參考資料:https://cloud.google.com/kubernetes-engine/docs/how-to/cluster-access-for-kubectl#internal_ip

另請參閱

有關如何使用此操作器的更多資訊,請參閱指南: 刪除 GKE 叢集上的作業

引數:
  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

template_fields: collections.abc.Sequence[str][source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
class airflow.providers.google.cloud.operators.kubernetes_engine.GKESuspendJobOperator(name, namespace, location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

透過給定的名稱掛起 Job。

另請參閱

有關如何使用此操作器的更多資訊,請參閱指南: 暫停 GKE 叢集上的作業

引數:
  • name (str) – 要暫停的作業名稱

  • namespace (str) – Google Kubernetes Engine 名稱空間的名稱。

  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

template_fields: collections.abc.Sequence[str][source]
name[source]
namespace[source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
job: kubernetes.client.models.V1Job | None = None[source]
execute(context)[source]

建立運算子時派生此方法。

Context 是與渲染 jinja 模板時使用的相同字典。

有關更多 Context,請參閱 get_template_context。

class airflow.providers.google.cloud.operators.kubernetes_engine.GKEResumeJobOperator(name, namespace, location, cluster_name, use_internal_ip=False, use_dns_endpoint=False, project_id=PROVIDE_PROJECT_ID, gcp_conn_id='google_cloud_default', impersonation_chain=None, *args, **kwargs)[source]

繼承自: GKEOperatorMixin, airflow.providers.google.cloud.operators.cloud_base.GoogleCloudBaseOperator

透過給定的名稱恢復 Job。

另請參閱

有關如何使用此操作器的更多資訊,請參閱指南: 恢復 GKE 叢集上的作業

引數:
  • name (str) – 要恢復的作業名稱

  • namespace (str) – Google Kubernetes Engine 名稱空間的名稱。

  • location (str) – Google Kubernetes Engine 叢集所在的區域或區域名稱,例如“us-central1-a”

  • cluster_name (str) – Google Kubernetes Engine 叢集的名稱。

  • use_internal_ip (bool) – 使用內部 IP 地址作為端點。

  • use_dns_endpoint (bool) – 使用 DNS 地址作為端點。

  • project_id (str) – Google Developers Console 專案 ID

  • gcp_conn_id (str) – 要使用的 Google Cloud 連線 ID。這允許使用者指定服務賬號。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務賬號,用於使用短期憑據進行模擬,或者獲取列表中最後一個賬號的 access_token 所需的賬號列表,該賬號將在請求中被模擬。如果設定為字串,則該賬號必須授予發起賬號 Service Account Token Creator IAM 角色。如果設定為序列,則列表中的身份必須授予緊接在其前的身份 Service Account Token Creator IAM 角色,列表中的第一個賬號授予此角色給發起賬號(模板化)。

template_fields: collections.abc.Sequence[str][source]
name[source]
namespace[source]
project_id = None[source]
location[source]
cluster_name[source]
gcp_conn_id = 'google_cloud_default'[source]
use_internal_ip = False[source]
use_dns_endpoint = False[source]
impersonation_chain = None[source]
job: kubernetes.client.models.V1Job | None = None[source]
execute(context)[source]

建立運算子時派生此方法。

Context 是與渲染 jinja 模板時使用的相同字典。

有關更多 Context,請參閱 get_template_context。

此條目是否有幫助?