airflow.providers.google.cloud.hooks.kubernetes_engine
¶
此模組包含 Google Kubernetes Engine Hook。
模組內容¶
類別¶
用於建立與 GKE 叢集連線的輔助程式。 |
|
Google Kubernetes Engine 叢集 API。 |
|
GKE 的非同步用戶端。 |
|
用於標準 Kubernetes API 的 GKE 驗證 Hook。 |
|
用於標準 Kubernetes API 的非同步 GKE 驗證 Hook。 |
屬性¶
- class airflow.providers.google.cloud.hooks.kubernetes_engine.GKEClusterConnection(cluster_url, ssl_ca_cert, credentials, enable_tcp_keepalive=False)[原始碼]¶
用於建立與 GKE 叢集連線的輔助程式。
- class airflow.providers.google.cloud.hooks.kubernetes_engine.GKEHook(gcp_conn_id='google_cloud_default', location=None, impersonation_chain=None, **kwargs)[原始碼]¶
基底類別:
airflow.providers.google.common.hooks.base_google.GoogleBaseHook
Google Kubernetes Engine 叢集 API。
Hook 中所有使用 project_id 的方法都必須使用關鍵字引數而不是位置引數呼叫。
- wait_for_operation(operation, project_id=PROVIDE_PROJECT_ID)[原始碼]¶
持續從 Google Cloud 擷取狀態。
此動作會持續執行,直到給定的操作完成或引發錯誤為止。
- 參數
operation (google.cloud.container_v1.types.Operation) – 要等待的操作。
project_id (str) – Google Cloud 專案 ID。
- 返回
從 Google Cloud 擷取的新的、已更新的操作。
- 返回類型
- get_operation(operation_name, project_id=PROVIDE_PROJECT_ID)[原始碼]¶
從 Google Cloud 取得操作。
- 參數
- 返回
來自 Google Cloud 的新的、已更新的操作
- 返回類型
- delete_cluster(name, project_id=PROVIDE_PROJECT_ID, wait_to_complete=True, retry=DEFAULT, timeout=None)[原始碼]¶
刪除叢集、Kubernetes 端點和所有工作節點。
在叢集建立期間設定的防火牆和路由也會被刪除。如果其他 Google Compute Engine 資源(例如負載平衡器資源)在初始建立時不存在,即使叢集正在使用這些資源,也不會被刪除。
- 參數
name (str) – 要刪除的叢集名稱。
project_id (str) – Google Cloud 專案 ID。
wait_to_complete (bool) – 如果為 True,則等待刪除完成後再返回。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – 用於判斷何時/是否重試請求的重試物件。如果未指定 None,則不會重試請求。
timeout (float | None) – 等待請求完成的秒數。請注意,如果指定了重試,則逾時時間會套用至每個個別嘗試。
- 返回
如果成功,則為刪除操作的完整 URL,否則為 None。
- 返回類型
- create_cluster(cluster, project_id=PROVIDE_PROJECT_ID, wait_to_complete=True, retry=DEFAULT, timeout=None)[原始碼]¶
建立叢集。
這應包含指定數量和 Google Compute Engine 執行個體的類型。
- 參數
cluster (dict | google.cloud.container_v1.types.Cluster) – Cluster protobuf 或 dict。如果提供 dict,則其格式必須與 protobuf 訊息
google.cloud.container_v1.types.Cluster
相同。project_id (str) – Google Cloud 專案 ID。
wait_to_complete (bool) – 布林值,使方法在建立操作完成前進入休眠狀態。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – 用於重試請求的重試物件 (
google.api_core.retry.Retry
)。如果未指定 None,則不會重試請求。timeout (float | None) – 等待請求完成的秒數。請注意,如果指定了重試,則逾時時間會套用至每個個別嘗試。
- 返回
新叢集或現有叢集的完整 URL。
- 引發
ParseError – 在嘗試轉換 dict 時發生 JSON 解析問題時。
AirflowException – 叢集既不是 dict 類型也不是 Cluster proto 類型。
- 返回類型
google.cloud.container_v1.types.Operation | google.cloud.container_v1.types.Cluster
- get_cluster(name, project_id=PROVIDE_PROJECT_ID, retry=DEFAULT, timeout=None)[原始碼]¶
取得指定叢集的詳細資訊。
- 參數
name (str) – 要擷取的叢集名稱。
project_id (str) – Google Cloud 專案 ID。
retry (google.api_core.retry.Retry | google.api_core.gapic_v1.method._MethodDefault) – 用於重試請求的重試物件。如果未指定 None,則不會重試請求。
timeout (float | None) – 等待請求完成的秒數。請注意,如果指定了重試,則逾時時間會套用至每個個別嘗試。
- check_cluster_autoscaling_ability(cluster)[原始碼]¶
檢查指定的叢集是否具備自動擴展能力。
叢集應為 Autopilot,並具有節點自動佈建或常規自動擴展節點集區。如果叢集支援自動擴展,則返回 True,否則返回 False。
- 參數
cluster (google.cloud.container_v1.types.Cluster | dict) – Cluster 物件。
- class airflow.providers.google.cloud.hooks.kubernetes_engine.GKEAsyncHook(gcp_conn_id='google_cloud_default', location=None, impersonation_chain=None, **kwargs)[原始碼]¶
基底類別:
airflow.providers.google.common.hooks.base_google.GoogleBaseAsyncHook
GKE 的非同步用戶端。
- class airflow.providers.google.cloud.hooks.kubernetes_engine.GKEKubernetesHook(cluster_url, ssl_ca_cert, enable_tcp_keepalive=False, *args, **kwargs)[原始碼]¶
基底類別:
airflow.providers.google.common.hooks.base_google.GoogleBaseHook
、airflow.providers.cncf.kubernetes.hooks.kubernetes.KubernetesHook
用於標準 Kubernetes API 的 GKE 驗證 Hook。
此 Hook 提供 KubernetesHook 提供的完整標準 Kubernetes API 集,同時提供 GKE 驗證,因此可以針對 GKE 叢集使用 KubernetesHook 功能。
- class airflow.providers.google.cloud.hooks.kubernetes_engine.GKEKubernetesAsyncHook(cluster_url, ssl_ca_cert, gcp_conn_id='google_cloud_default', impersonation_chain=None, enable_tcp_keepalive=True, **kwargs)[原始碼]¶
基底類別:
airflow.providers.google.common.hooks.base_google.GoogleBaseAsyncHook
、airflow.providers.cncf.kubernetes.hooks.kubernetes.AsyncKubernetesHook
用於標準 Kubernetes API 的非同步 GKE 驗證 Hook。
此 Hook 提供 AsyncKubernetesHook 提供的完整標準 Kubernetes API 集,同時提供 GKE 驗證,因此可以針對 GKE 叢集使用 KubernetesHook 功能。