airflow.providers.amazon.aws.triggers.eks

模块内容

EksCreateClusterTrigger

用于 EksCreateClusterOperator 的触发器。

EksDeleteClusterTrigger

用于 EksDeleteClusterOperator 的触发器。

EksCreateFargateProfileTrigger

异步等待 Fargate 配置文件被创建。

EksDeleteFargateProfileTrigger

异步等待 Fargate 配置文件被删除。

EksCreateNodegroupTrigger

用于 EksCreateNodegroupOperator 的触发器。

EksDeleteNodegroupTrigger

用于 EksDeleteNodegroupOperator 的触发器。

class airflow.providers.amazon.aws.triggers.eks.EksCreateClusterTrigger(cluster_name, waiter_delay, waiter_max_attempts, aws_conn_id, region_name=None)[源代码]

基类: airflow.providers.amazon.aws.triggers.base.AwsBaseWaiterTrigger

用于 EksCreateClusterOperator 的触发器。

此触发器将异步等待集群创建完成。

参数
  • cluster_name (str) – EKS 集群的名称

  • waiter_delay (int) – 尝试之间等待的时间(秒)。

  • waiter_max_attempts (int) – 最大尝试次数。

  • aws_conn_id (str | None) – 用于 AWS 凭证的 Airflow 连接。

  • region_name (str | None) – 连接应使用的 AWS 区域。如果为 None 或空,则使用默认的 boto3 行为。

hook()[源代码]

在子类中重写以返回正确的钩子。

async run()[源代码]

在异步上下文中运行触发器。

触发器应在其想要触发事件时产生一个事件,并在完成时返回 None。因此,单事件触发器应先产生,然后立即返回。

如果它产生事件,则它很可能会很快恢复,但也可能不会(例如,如果工作负载正在被移动到另一个触发器进程,或者一个多事件触发器正在用于单事件任务延迟)。

在任何一种情况下,Trigger 类都应假设它们将被持久化,然后在不再需要它们时依赖 cleanup() 被调用。

class airflow.providers.amazon.aws.triggers.eks.EksDeleteClusterTrigger(cluster_name, waiter_delay, waiter_max_attempts, aws_conn_id, region_name, force_delete_compute)[源代码]

基类: airflow.providers.amazon.aws.triggers.base.AwsBaseWaiterTrigger

用于 EksDeleteClusterOperator 的触发器。

此触发器将异步等待集群被删除。如果集群有任何节点组或 Fargate 配置文件,它们将在删除集群之前被删除。

参数
  • cluster_name – EKS 集群的名称

  • waiter_delay (int) – 尝试之间等待的时间(秒)。

  • waiter_max_attempts (int) – 最大尝试次数。

  • aws_conn_id (str | None) – 用于 AWS 凭证的 Airflow 连接。

  • region_name (str | None) – 连接应使用的 AWS 区域。如果为 None 或空,则使用默认的 boto3 行为。

  • force_delete_compute (bool) – 如果为 True,则在删除集群之前,将删除与该集群关联的任何节点组或 Fargate 配置文件。

serialize()[源代码]

返回重建此触发器所需的信息。

返回

(类路径,重新实例化所需的关键字参数) 的元组。

返回类型

tuple[str, dict[str, Any]]

hook()[源代码]

在子类中重写以返回正确的钩子。

async run()[源代码]

在异步上下文中运行触发器。

触发器应在其想要触发事件时产生一个事件,并在完成时返回 None。因此,单事件触发器应先产生,然后立即返回。

如果它产生事件,则它很可能会很快恢复,但也可能不会(例如,如果工作负载正在被移动到另一个触发器进程,或者一个多事件触发器正在用于单事件任务延迟)。

在任何一种情况下,Trigger 类都应假设它们将被持久化,然后在不再需要它们时依赖 cleanup() 被调用。

async delete_any_nodegroups(client)[源代码]

删除提供的 Amazon EKS 集群的所有 EKS 节点组。

所有 EKS 节点组都同时被删除。我们等待所有节点组被删除后才返回。

async delete_any_fargate_profiles(client)[源代码]

删除提供的 Amazon EKS 集群的所有 EKS Fargate 配置文件。

EKS Fargate 配置文件必须一次删除一个,因此我们必须等待一个被删除后才能发送下一个删除命令。

class airflow.providers.amazon.aws.triggers.eks.EksCreateFargateProfileTrigger(cluster_name, fargate_profile_name, waiter_delay, waiter_max_attempts, aws_conn_id, region_name=None)[源代码]

基类: airflow.providers.amazon.aws.triggers.base.AwsBaseWaiterTrigger

异步等待 Fargate 配置文件被创建。

参数
  • cluster_name (str) – EKS 集群的名称

  • fargate_profile_name (str) – Fargate 配置文件的名称

  • waiter_delay (int) – 尝试之间等待的时间(秒)。

  • waiter_max_attempts (int) – 最大尝试次数。

  • aws_conn_id (str | None) – 用于 AWS 凭证的 Airflow 连接。

hook()[源代码]

在子类中重写以返回正确的钩子。

class airflow.providers.amazon.aws.triggers.eks.EksDeleteFargateProfileTrigger(cluster_name, fargate_profile_name, waiter_delay, waiter_max_attempts, aws_conn_id, region_name=None)[源代码]

基类: airflow.providers.amazon.aws.triggers.base.AwsBaseWaiterTrigger

异步等待 Fargate 配置文件被删除。

参数
  • cluster_name (str) – EKS 集群的名称

  • fargate_profile_name (str) – Fargate 配置文件的名称

  • waiter_delay (int) – 尝试之间等待的时间(秒)。

  • waiter_max_attempts (int) – 最大尝试次数。

  • aws_conn_id (str | None) – 用于 AWS 凭证的 Airflow 连接。

hook()[源代码]

在子类中重写以返回正确的钩子。

class airflow.providers.amazon.aws.triggers.eks.EksCreateNodegroupTrigger(cluster_name, nodegroup_name, waiter_delay, waiter_max_attempts, aws_conn_id, region_name=None)[源代码]

基类: airflow.providers.amazon.aws.triggers.base.AwsBaseWaiterTrigger

用于 EksCreateNodegroupOperator 的触发器。

此触发器将异步轮询 boto3 API,并等待节点组达到等待器指定的状态。

参数
  • cluster_name ( str) – 与节点组关联的 EKS 集群的名称。

  • nodegroup_name ( str) – 要检查的节点组的名称。

  • waiter_delay (int) – 尝试之间等待的时间(秒)。

  • waiter_max_attempts (int) – 最大尝试次数。

  • aws_conn_id (str | None) – 用于 AWS 凭证的 Airflow 连接。

  • region_name ( str | None) – 连接应使用的 AWS 区域。(已模板化)如果此项为 None 或为空,则使用默认的 boto3 行为。

hook()[源代码]

在子类中重写以返回正确的钩子。

class airflow.providers.amazon.aws.triggers.eks.EksDeleteNodegroupTrigger(cluster_name, nodegroup_name, waiter_delay, waiter_max_attempts, aws_conn_id, region_name=None)[源代码]

基类: airflow.providers.amazon.aws.triggers.base.AwsBaseWaiterTrigger

用于 EksDeleteNodegroupOperator 的触发器。

此触发器将异步轮询 boto3 API,并等待节点组达到等待器指定的状态。

参数
  • cluster_name ( str) – 与节点组关联的 EKS 集群的名称。

  • nodegroup_name ( str) – 要检查的节点组的名称。

  • waiter_delay (int) – 尝试之间等待的时间(秒)。

  • waiter_max_attempts (int) – 最大尝试次数。

  • aws_conn_id (str | None) – 用于 AWS 凭证的 Airflow 连接。

  • region_name ( str | None) – 连接应使用的 AWS 区域。(已模板化)如果此项为 None 或为空,则使用默认的 boto3 行为。

hook()[源代码]

在子类中重写以返回正确的钩子。

此条目是否有帮助?