一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!
滴滴LogiAM来源于滴滴多年来大量的运维实践经验。经历过多方考验,对于大规模Agent日志采集治理管控及巡检诊断已经沉淀出一套完善的解决方案。在云原生时代背景下,LogiAM以“应用/服务”为采集粒度,满足了从业务层面创建采集任务的需求。
使用Apache-2.0开源协议
执行Agent-Manager源码包中的create_mysql_table.sql这个sql文件,初始化mysql表。
# 示例: mysql -uXXXX -pXXX -h XXX.XXX.XXX.XXX -PXXXX < ./create_mysql_table.sql
先进入system-metrcis项目主目录,执行mvn clean install -DskipTests命令。
因为本地直接使用IDEA启动agent-manager项目,并不会将前端资源文件生成,因此在第一次启动之前,需要在agent-manager项目主目录执行一下mvn clean install -DskipTests命令,将前端的静态资源文件打包出来。
mvn install执行完成以后,修改application.yml配置文件,然后点击启动即可。
本地启动成功之后,访问http://localhost:8080。
具体的IDEA启动及配置见图:
IDEA 打包
修改 Agent-Manager 配置文件
启动 Agent-Manager
Agent-Manager 浏览器访问
模块
说明
详细说明
agent-manager-console
前端模块
Agent-Manager前端相关的代码
agent-manager-common
公共模块
存放公共内容,包括POJO类、常量/枚举类、工具类等
agent-manager-core
核心模块
Agent-Manager的核心模块,存放最基本及最重要的功能,比如采集任务的增删改查等
agent-manager-persistence
DAO 模块
主要是操作MySQL、ElasticSearch的相关类
agent-manager-extends
扩展模块
非核心模块,可根据实际需要进行扩展
agent-manager-thirdpart
扩展模块-默认第三方扩展模块
如元数据(主机、容器、Pod、服务)的获取,默认基于标准k8s,也可以对接自己公司内部的容器管理平台
agent-manager-remote
远程访问模块
用于与其他系统进行交互,例如kafka-manager、对象存储等
agent-manager-task
定时任务模块
基于MySQL通过抢占方式实现的一个定时任务的负载均衡以及定时任务的执行模块,用于执行既有定时任务,比如日志采集任务、Agent的健康度巡检
agent-manager-rest
web 模块
接受外部 Rest Http 请求及进行相关控制
注意:在搭建Log-Agent本地开发环境前,请先对Agent-Manager工程进行Maven打包、安装。
修改settings.properties配置文件,将log-agent-node项目中的
com.didichuxing.datachannel.agent.node.Agent类作为启动类运行即可,如下图:
本地启动成功之后,访问http://localhost:8080。
源码已同步于GitCoffee,账户打通公测中,一飞开源账号授权登录如有问题,可独立注册GitCoffee新账号。问题反馈,请关注微信公众号:一飞开源。【一飞开源,正在致力于打造活力开源社区,共建开源新生态!】
评论