机器组

最近更新时间: 2024-06-12 15:06:00

机器组

机器组(MachineGroup)是一组需要采集日志的机器列表,日志服务通过机器组来管理所有需要通过loglistener采集日志的机器。

一个机器组可以包含多台机器。当应用/服务部署在多台机器上,且这些机器的日志文件路径相同时,便可将其归为一个机器组。这样在控制台只需要配置一次日志数据采集规则,便可批量生效至机器组内的所有机器。

机器组可关联至一个日志主题,即机器组内所有的日志均上报至同一个日志主题;也可以关联至多个日志主题,即机器组内不同路径的日志分别上报至不同的日志主题。

机器组具备两种定义方式:

  • IP 地址:添加 IP 地址列表到机器组,机器组将自动添加这些IP对应的机器。

  • 标识(Label):安装loglistener时为所在机器添加标识,机器组将自动添加包含这些标识的机器。

场景示例

某电商项目,共有6台机器及三个服务。其部署方式如下表: payService 部署在2台机器上,有2个日志文件路径。userService和stockService 混部在4台机器上,共有4个日志文件路径。每个服务的每类日志(访问日志 access_log 和错误日志 error_log)均需上报至单独的日志主题。

机器 部署服务 日志文件路径
192.168.1.1 payService /data/log/payService/access_log.log
/data/log/payService/error_log.log
192.168.1.2 payService /data/log/payService/access_log.log
/data/log/payService/error_log.log
192.168.1.3 userService,stockService /data/log/userService/access_log.log
/data/log/userService/error_log.log
/data/log/stockService/access_log.log
/data/log/stockService/error_log.log
192.168.1.4 userService,stockService /data/log/userService/access_log.log
/data/log/userService/error_log.log
/data/log/stockService/access_log.log
/data/log/stockService/error_log.log
192.168.1.5 userService,stockService /data/log/userService/access_log.log
/data/log/userService/error_log.log
/data/log/stockService/access_log.log
/data/log/stockService/error_log.log
192.168.1.6 userService,stockService /data/log/userService/access_log.log
/data/log/userService/error_log.log
/data/log/stockService/access_log.log
/data/log/stockService/error_log.log

在机器上部署 LogListener 时,可为每台机器按其上运行的服务添加标识,具体如下:

机器 部署服务 标识
192.168.1.1 payService payService
192.168.1.2 payService payService
192.168.1.3 userService,stockService userService,stockService
192.168.1.4 userService,stockService userService,stockService
192.168.1.5 userService,stockService userService,stockService
192.168.1.6 userService,stockService userService,stockService

然后在控制台创建3个机器组,采用标识方式进行定义,分别为 payService、userService 和 stockService,再在日志主题中关联该机器组并添加对应的采集配置即可完成日志上报。

日志主题 关联机器组 采集路径
payService_access_log_topic payService /data/log/payService/access_log.log
payService_error_log_topic payService /data/log/payService/error_log.log
userService_access_log_topic userService /data/log/userService/access_log.log
userService_error_log_topic userService /data/log/userService/error_log.log
stockService_access_log_topic stockService /data/log/stockService/access_log.log
stockService_error_log_topic stockService /data/log/stockService/error_log.log

后续服务需要扩容时,只需要在新增的机器上添加部署的服务作为标识,即可自动将新增的机器添加至对应的机器组并采集日志,极大的提升运维部署效率。