首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    在Kubernetes上运行Airflow两年后的收获

    译自 What we learned after running Airflow on Kubernetes for 2 years。...我将根据形成我们当前 Airflow 实现的关键方面来分割它: 执行器选择 解耦和动态 DAG 生成 微调配置 通知、报警和可观测性 执行器选择 在这里,我们所有的东西都在 Kubernetes 中运行...因此,在 Airflow 的情况下也不会有什么不同。起初,执行器的选择似乎很明显:让我们使用 Kubernetes Executor!...后者优于前者,因为 OpenTelemetry 是一个更完整的框架,还支持日志和跟踪。然而,目前 Airflow 还不支持通过 OTEL 进行日志和跟踪(但未来会支持!)。...结论 希望这篇文章能为使用 Kubernetes 上的 Airflow 而启程的团队带来一些启发,尤其是在一个更具协作性的环境中,多个团队在同一个 Airflow 集群上进行使用。

    44310

    kubernetes | 日志

    k8s日志包含两大类: k8s系统的组件日志 k8s集群中部署的应用程序的日志 标准输出 日志文件 组件日志# journalctl -u kubelet kubectl logs...kube-proxy -n kube-system /var/log/messages 应用日志# 标准输出# 实时查看pod标准输出日志 kubectl logs -f kubectl...# 比如nginx应用的日志一般保存在accesss.log和error.log日志中,这些日志是不会输出到标准输出的,可以采用如下两种方式进行采集 emptyDir数据卷# 创建pod时挂载emptyDIr...类型的数据卷,用以持久化自定义的日志文件 需要先找到pod分配的节点 Kubectl get pods -o wide 再查看pod的id docker ps | grep pod-name pod日志文件路径.../var/lib/kubelet/pods//volumes/kubernetes.io~empty-dir 示例 apiVersion: v1 kind: Pod metadata:

    31410

    大数据调度平台Airflow(二):Airflow架构及原理

    ;监控任务;断点续跑任务;查询任务状态、详细日志等。...Executor:执行器,负责运行task任务,在默认本地模式下(单机airflow)会运行在调度器Scheduler中并负责所有任务的处理。...但是在airflow集群模式下的执行器Executor有很多类型,负责将任务task实例推送给Workers节点执行。...在Airflow中执行器有很多种选择,最关键的执行器有以下几种:SequentialExecutor:默认执行器,单进程顺序执行任务,通常只用于测试。LocalExecutor:多进程本地执行任务。...生产环境中建议使用CeleryExecutor作为执行器,Celery是一个分布式调度框架,本身无队列功能,需要使用第三方插件,例如:RabbitMQ或者Redis。

    6.3K33

    开源工作流调度平台Argo和Airflow对比

    工作流具有多个特性,例如:支持多种任务类型,包括容器化任务、脚本任务、并行任务等;提供不同类型的控制流,例如串行、并行、条件、循环等;支持与外部工具和服务进行交互,例如Git、Jenkins、Slack等;提供丰富的日志和指标支持...用户可以在UI界面中查看任务运行情况、查看日志和统计信息。丰富的任务调度功能Airflow支持多种任务调度方式,如定时触发、事件触发和手动触发等。用户可以自定义任务的调度规则,以适应不同的场景。...运行Airflow任务一旦DAG被定义和设置好,用户可以通过Airflow的命令行工具来启动任务,并且可以在UI界面中查看任务状态、日志和统计信息等。...可扩展性由于Argo是基于Kubernetes构建的,因此具有较好的可扩展性,能够方便地适应不同的工作负载和规模。Airflow的扩展性较弱,需要手动进行配置。...可视化界面Argo提供了Web界面来管理和可视化任务执行的流程,包括检查任务状态和日志文件等。Airflow也提供了命令行和Web UI两种方式来实现任务的管理和可视化。

    7.7K71

    Kubernetes容器日志收集

    日志采集方式 日志从传统方式演进到容器方式的过程就不详细讲了,可以参考一下这篇文章Docker日志收集最佳实践,由于容器的漂移、自动伸缩等特性,日志收集也就必须使用新的方式来实现,Kubernetes官方给出的方式基本是这三种...,但是,在多容器、弹性伸缩情况下,日志的排查会十分困难,仅仅适用于刚开始研究Kubernetes的公司吧。...,其中我们修改了Kubernetes-Client的源码使之支持subPathExpr,然后发送到日志系统的kafka。...还有就是对日志进行了分类,分为三种: (1).操作日志(在es中以.operations*匹配的),记录了对Kubernetes的操作 (2).项目日志(在es中以project*匹配的),业务日志,日志收集中最重要的...参考: 1.Kubernetes日志官方文档 2.Kubernetes日志采集Sidecar模式介绍 3.Docker日志收集最佳实践

    1.8K10

    kubernetes中日志采集

    在Kubernetes中,对于运行在容器内的应用程序,我们需要一种有效的方法来收集和管理这些应用程序的日志信息。...在Kubernetes中,有很多日志采集方案可以供我们选择,本文将介绍其中的几种常见的方案,并且探讨它们的优缺点。...方案一:容器内部日志采集在Kubernetes中,每个容器都有自己的标准输出和标准错误输出,我们可以使用容器运行时提供的工具来采集这些输出,并将其重定向到日志文件中。...方案二:DaemonSet另一种常见的日志采集方案是使用Kubernetes中的DaemonSet来部署日志收集器。...在Kubernetes中,我们可以将一个或多个日志收集器部署为Sidecar容器,并与主应用程序共享同一个Pod。

    93330

    你不可不知的任务调度神器-AirFlow

    极易扩展,提供各种基类供扩展, 还有多种执行器可供选择,其中 CeleryExcutor 使用了消息队列来编排多个工作节点(worker), 可分布式部署多个 worker ,AirFlow 可以做到无限扩展...Airflow 是免费的,我们可以将一些常做的巡检任务,定时脚本(如 crontab ),ETL处理,监控等任务放在 AirFlow 上集中管理,甚至都不用再写监控脚本,作业出错会自动发送日志到指定人员邮箱...执行器:Executor 是一个消息队列进程,它被绑定到调度器中,用于确定实际执行每个任务计划的工作进程。有不同类型的执行器,每个执行器都使用一个指定工作进程的类来执行任务。...其他像 CeleryExecutor 的执行器使用存在于独立的工作机器集群中的工作进程执行任务。 Workers:这些是实际执行任务逻辑的进程,由正在使用的执行器确定。...Executor 任务执行器。每个任务都需要由任务执行器完成。BaseExecutor是所有任务执行器的父类。

    3.7K21

    Kubernetes之日志收集

    准备 关于容器日志 Docker的日志分为两类,一类是 Docker引擎日志;另一类是容器日志。引擎日志一般都交给了系统日志,不同的操作系统会放在不同的位置。...本文主要介绍容器日志,容器日志可以理解是运行在容器内部的应用输出的日志,默认情况下,docker logs 显示当前运行的容器的日志信息,内容包含 STOUT(标准输出) 和 STDERR(标准错误输出...默认方式下容器日志并不会限制日志文件的大小,容器会一直写日志,导致磁盘爆满,影响系统应用。...应用容器中直接将日志推到存储后端,这种方式就比较简单了,直接在应用里面将日志内容发送到日志收集服务后端。 ?...日志架构 通过上文对k8s日志收集方案的介绍,要想设计一个统一的日志收集系统,可以采用节点代理方式收集每个节点上容器的日志,日志的整体架构如图所示。 ?

    1.7K40

    企业任务调度解决方案:Airflow vs TASKCTL 深度剖析

    以下是我对两者的对比:功能对比Airflow:● 基于 Python,使用有向无环图(DAG)来编程化地安排任务。...● 支持多种执行器,如 SequentialExecutor、LocalExecutor、CeleryExecutor 和 KubernetesExecutor,以适应不同规模的工作环境。...● 提供日志记录和审计功能,便于事后分析和追溯。技术架构对比Airflow:● 拥有模块化的架构,易于扩展和维护。● 使用消息队列来协调工作,支持大规模分布式系统。...压力管理对比Airflow:● 通过不同执行器的支持,可以灵活应对不同的工作负载。● KubernetesExecutor 特别适合于大规模任务的分布式执行。...结论Airflow 和 TASKCTL 各有千秋。Airflow 以其开源社区和灵活性在多样化的工作环境中表现出色,尤其适合需要高度定制化和与现有系统集成的场景。

    25110

    Airflow速用

    web界面 可以手动触发任务,分析任务执行顺序,任务执行状态,任务代码,任务日志等等; 实现celery的分布式任务调度系统; 简单方便的实现了 任务在各种状态下触发 发送邮件的功能;https://airflow.apache.org...#queues 存储日志到远程 http://airflow.apache.org/howto/write-logs.html 调用 远程 谷歌云,亚马逊云 相关服务(如语音识别等等)https://airflow.apache.org...store its log files 9 # This path must be absolute 10 # 绝对路径下的日志文件夹位置 11 base_log_folder = /mnt/e...绝对路径,精确到日志文件 46 dag_processor_manager_log_location = /mnt/e/airflow_project/log/dag_processor_manager.log...____ 839 # formatting as supported by airflow normally. 840 841 [kubernetes_labels] 842

    5.5K10
    领券