机器组是包含多台服务器的虚拟分组,日志服务通过机器组的方式管理所有需要通过Logtail采集日志的服务器。本文介绍机器组的概念和类型。
机器组概述
日志服务Project支持将一个Logtail采集配置应用到多个机器组,或将一个机器组绑定到多个Logtail采集配置。如需采集多个服务器上的数据,您可根据服务器部署地域或类别将它们分成多个独立的机器组,并将Logtail采集配置应用到指定的机器组。日志服务便会将该配置下发至机器组内的所有的服务器,从而采集服务器上的数据。
日志服务Project支持使用IP地址或用户自定义标识创建机器组。使用IP地址创建相对更简单,但使用用户自定义标识具有以下优势,推荐使用。
在VPC等自定义网络环境中,可能出现服务器IP地址冲突问题,导致Logtail采集失败。使用用户自定义标识可避免此类情况发生。
使用用户自定义标识可实现机器组的弹性伸缩。为新增的服务器配置相同的用户自定义标识,日志服务可自动识别,并将其添加至机器组中。如果不再需要采集服务器日志,直接删除在服务器上配置的用户自定义标识文件,日志服务可自动将该服务器从机器组中移除。
用户标识
用户标识配置文件中包含阿里云主账号的ID信息,用于标识这台服务器有权限被该账号访问、采集日志。更多信息,请参见配置用户标识。
在采集非本账号ECS、自建IDC、其他云厂商服务器日志时需要配置用户标识。
用户标识配置文件中必须配置阿里云账号(主账号)ID,不支持RAM用户。
用户标识配置文件只需配置文件名,无需配置文件后缀。
一台服务器上可配置多个用户标识,Logtail容器中仅支持配置一个用户标识。
IP地址机器组
您可以通过添加服务器IP地址的方式,将多台服务器添加到一个机器组中。
如果使用ECS实例且没有设置过主机名、没有更换过网络类型,可以在机器组中配置ECS实例的私网IP地址。
其他情况,请在机器组中配置Logtail客户端自动获取的IP地址,该IP地址记录在服务器的app_info.json文件的
ip
字段中。Logtail客户端自动获取服务器IP地址的逻辑如下:如果已在服务器
/etc/hosts
文件中设置了主机名与IP地址绑定,则自动获取绑定的IP地址。如果未在服务器
/etc/hosts
文件中设置主机名与IP地址绑定,则自动获取本机第一块网卡的IP地址。
用户自定义标识机器组
通常情况下,业务系统由多个模块组成,每个模块都可以进行独立的水平扩展,即支持添加多台服务器。为了实现高效的日志数据收集和分类,建议为每个模块创建单独的机器组。用户需要在各个模块的服务器上配置自定义标识,以确保每个服务器能归属于正确的机器组。
例如常见网站分为前端HTTP请求处理模块、缓存模块、逻辑处理模块和存储模块,其自定义标识可以分别定义为http_module
、cache_module
、logic_module
和store_module
。