《余韬-分布式短任务的数据采集原理与实践.pdf》由会员分享,可在线阅读,更多相关《余韬-分布式短任务的数据采集原理与实践.pdf(38页珍藏版)》请在三个皮匠报告上搜索。
1、分布式短任务的数据采集原理与实践主讲人:余韬领域驱动设计启发下的AI视觉分析引擎构建主讲人:戴 昊演讲嘉宾介绍余韬 阿里巴巴技术专家iLogtail开源社区PMC成员10年工作经验,目前就职于阿里巴巴日志服务可观测平台团队,负责iLogtail开源,主要关注大数据分析、数据采集Agent、海量数据接入治理等领域曾负责百度统计、百度分析云产品的研发工作目录CONTENTS分布式任务场景和部署方案1234任务容器特点与采集难点任务场景常见采集方案探讨典型任务采集最佳实践案例分布式任务场景和部署方案 1经典分布式任务框架:MapReduce(YARN)典型场景:特征抽取经典分布式任务框架:MPI典型
2、场景:模型训练分布式任务调度的演进运行环境 资源粒度任务类型状态管理开源的现代分布式框架:K8sl 更高的可扩展性l 更高的资源利用率l 更灵活的任务管理资源抽象,灵活扩展,智能调度l CPU/GPU异构节点l 物理/虚拟节点l 可扩展存储类型应用混布、弹性伸缩、削峰填谷l 资源控制l 弹性扩缩容l 自动均衡调度各类任务,多种模式,统一管理l 定时任务l 并行执行l 失效策略模式单个 Job 对象Pod 数少于工作条目数?直接使用应用无需修改?pletions.spec.parallelism每工作条目一 Pod 的队列有时W任意值Pod 数量可变的队列1任意值静态任务分派的带索引的 JobW
3、任意值Job 模板扩展1应该为 1带 Pod 间通信的 Job有时有时WWK8s分布式任务典型场景批处理作业K8s分布式任务典型场景CI/CDK8s分布式任务典型场景AI模型训练任务容器特点与采集难点 2任务容器日志采集的必要性更原生友好的K8s支持成本分析、性能优化自动化监控告警任务调试、错误排查Pod删除后日志查询01020403Job容器的采集难点和考虑点增删频率高生命周期短突发并发大1.容器发现速度2.开始采集延时3.弹性支持关键考虑4.资源开销5.meta信息打标6.侵入性同时考虑主动退出任务场景常见采集方案探讨 3DaemonSet采集方式 容器发现 通过docker.sock/c
4、ontainerd.sock 通过API Server 采集方式 Stdout:/var/log/containers 文件:rootfs dir on host 弹性支持 不支持虚拟节点、serverless 资源开销 每个Node一个 meta信息 同容器发现 侵入性 无Sidecar采集方式 容器发现 不涉及 采集方式 Stdout:不支持 文件:共享卷 弹性支持 支持虚拟节点、serverless 资源开销 每个Pod一个 meta信息 通过环境变量手动暴露 侵入性 需修改业务PodECI弹性容器产品采集方式 容器发现 通过静态容器信息文件 采集方式 Stdout:/var/log/c
5、ontainers 文件:rootfs dir on host 弹性支持 支持虚拟节点、serverless 资源开销 每个ECI一个 meta信息 同容器发现 侵入性 无同容器采集方式 容器发现 不涉及 采集方式 Stdout:不支持 文件:本地文件 弹性支持 支持虚拟节点、serverless 资源开销 每个Container一个 meta信息 通过环境变量手动暴露 侵入性 需修改容器镜像独立存储采集方式 容器发现 不涉及 采集方式 Stdout:不支持 文件:共享持久化存储 弹性支持 可支持虚拟节点、serverless 资源开销 独立一个或多个 meta信息 通过文件路径手动暴露 侵入
6、性 无典型任务采集最佳实践案例 4采集方案Agent比较开源采集器DaemonSetSidecarECI同容器独立存储iLogtail支持标准输出、容器内文件支持容器内文件/ECI标准输出支持标准输出、容器内文件仅支持容器内文件支持Filebeat仅支持标准输出仅支持容器内文件不支持仅支持容器内文件支持fluentbit仅支持标准输出仅支持容器内文件不支持仅支持容器内文件支持ProfilesSLS输入输出iLogtail友好的容器采集能力l 自动发现匹配容器标签、环境变量、K8s标签、Pod名称、命名空间等l 云原生采集体验容器标准输出和容器内文件采集l