通过Logtail跨地域采集日志

本文以Linux系统为例介绍同阿里云账号跨地域采集日志的操作步骤。

方案概览

假如某公司的网站应用部署在地域A,日志服务Project部署在地域B,现计划通过Logtail采集配置将部署在地域AECS实例中的日志数据发送到地域B日志服务Project中。您可通过以下步骤配置:

配置流程图如下所示:

image

前提条件

已创建ProjectLogstore。更多信息,请参见管理Project创建基础Logstore

步骤一:在地域AECS实例中安装Logtail

网络传输说明

传输方式

适用场景

公网

  • 阿里云云服务器实例和日志服务Project属于不同地域。

  • 服务器为其他云厂商服务器或自建IDC。

传输加速

服务器分布在海外各地的自建机房或者来自海外云厂商,使用公网传输数据可能会出现网络延迟高、传输不稳定等问题,推荐选择传输加速。更多信息,参见管理传输加速

登录地域AECS实例,请参考网络传输说明根据您的网络环境选择安装Logtail脚本。安装Logtail支持的Liunx系统,请参见使用限制

公网

  1. 根据日志服务Project所在地域,获取对应的${region_id}

    重要

    各地域对应的${region_id}请参见开服地域,例如华东 1(杭州)对应的${region_id}cn-hangzhou

  2. 执行以下命令下载Logtail安装脚本并完成安装,注意替换${region_id}为实际地域值。

    wget http://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/logtail.sh -O logtail.sh
    chmod +x logtail.sh
    ./logtail.sh install ${region_id}-internet

传输加速

  1. 根据日志服务Project所在地域,获取对应的${region_id}

    重要
    • 各地域对应的${region_id}请参见开服地域,例如华东 1(杭州)对应的${region_id}cn-hangzhou

    • 使用传输加速安装Logtial后,需要进入Project,开启传输加速域名后方可生效。具体操作,请参见开启Project的传输加速域名

  2. 执行以下命令下载Logtail安装脚本并完成安装,注意替换${region_id}为实际地域值。

    wget http://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/logtail.sh -O logtail.sh
    chmod +x logtail.sh
    ./logtail.sh install ${region_id}-acceleration

步骤二:在地域AECS实例中配置用户自定义标识

  1. 在指定目录下建立用户自定义标识文件user_defined_id并配置用户自定义标识。

    重要
    • 同一机器组中不允许同时存在LinuxWindows服务器,请勿在LinuxWindows服务器上配置相同的用户自定义标识

    • 一个服务器可配置多个用户自定义标识,标识之间以换行符分割。

Linux环境
  1. 登录已安装LogtailLinux服务器,使用以下命令配置用户自定义标识

    说明

    如果目录/etc/ilogtail/不存在,请先手动创建该目录。

    echo "user-defined-1" > /etc/ilogtail/user_defined_id
  2. (可选)使用以下命令检查用户自定义标识是否写入成功。如果返回user-defined-1,则表示写入成功。

    cat /etc/ilogtail/user_defined_id
  3. 新增、删除、修改user_defined_id文件后,默认情况下,1分钟内生效。如果需要立即生效,请执行以下命令重启Logtail。

    /etc/init.d/ilogtaild stop
    /etc/init.d/ilogtaild start
Windows环境
  1. 登录已安装LogtailWindows服务器,在C:\LogtailData目录下新建user_defined_id文件并写入user-defined-1,完成后保存。

    说明

    如果目录C:\LogtailData不存在,请先手动创建该目录。

  2. 新增、删除、修改user_defined_id文件后,默认情况下,1分钟内生效。如需立即生效,请根据以下步骤重启Logtail。

    1. 选择开始 > 控制面板 > 管理工具 > 服务

    2. 服务对话框中,选择对应的服务。

    3. 如果是0.x.x.x版本,选择LogtailWorker服务。

    4. 如果是1.0.0.0及以上版本,选择LogtailDaemon服务。

    5. 右键单击重新启动使配置生效。

容器环境

用户自定义标识配置在Logtail容器的环境变量ALIYUN_LOGTAIL_USER_DEFINED_ID中,可通过docker inspect ${logtail_container_name} | grep ALIYUN_LOGTAIL_USER_DEFINED_ID命令查看。

步骤三:在地域B的日志服务Project中创建用户自定义标识机器组

  1. 登录日志服务控制台,在Project列表,单击打开目标Project。

  2. 左侧导航栏中,选择资源 > 机器组。在打开的机器组页面中,选择机器组右侧的机器组 > 创建机器组image

  3. 在弹出的创建机器组页面,填写以下信息,并单击确定

    参数

    说明

    名称

    机器组名称,命名规则如下所示:

    • 只能包括小写字母、数字、短划线(-)和下划线(_)。

    • 必须以小写字母或者数字开头和结尾。

    • 长度必须在 2~128 字符之间。

    重要

    创建后,不支持修改机器组名称,请谨慎填写。

    机器组标识

    选择IP地址

    机器组Topic

    (可选)机器组Topic用于区分不同服务器产生的日志数据。更多信息,请参见日志主题

    IP地址

    填入Logtail自动获取的服务器IP。

    重要
    • 存在多台服务器时,请手动输入对应的IP地址,IP地址之间需使用换行符分隔。

    • 同一机器组中不允许同时存在LinuxWindows服务器。请勿将WindowsLinux服务器IP添加到同一机器组中。

  4. 机器组列表中,单击目标机器组。在机器组配置页面,检查机器组配置信息以及服务器状态。

步骤四:在地域B的日志服务Project中创建Logtail采集配置

重要
  • 安装Logtail的主机需要在出口方向开放80(HTTP)端口和443(HTTPS)端口。ECS实例的端口由安全组规则控制,添加安全组规则的步骤请参见添加安全组规则

  • 服务器日志的内容持续新增。Logtail只采集增量日志,如果下发Logtail配置后日志文件无更新,则Logtail不会采集该文件中的日志。更多信息,请参见读取日志

  • 如需采集历史数据,请参见导入历史日志文件

相关文档