Telegraf是一款开源的数据采集代理。其设计目标是较小的内存使用,通过插件来构建各种服务和第三方组件的 metrics 收集。Telegraf的内置插件支持将采集的数据上报给OpenTSDB。由于时序引擎全面兼容OpenTSDB,因此用户可以使用Telegraf来对接时序引擎。

本文将介绍如何在用户的已有应用环境中部署 Telegraf 监控代理, 并对接公有云时序引擎实例使之接收 Telegraf 的上报数据。

事前准备

  1. 确保用户已有的待检测应用环境(以下简称”应用环境”)已经连接上公网,并获得了公网IP。
  2. 根据需要申请公有云的时序引擎实例,并为它申请公网地址,并在网络白名单中填入上述应用环境的公网IP。
    • 时序引擎实例管理界面中申请公网地址的入口。申请公网
    • 网络白名单配置界面。白名单
  3. 时序引擎公网地址申请后,确认从应用环境可以连接到该时序引擎实例的公网域名。时序引擎实例域名以及端口会在公网地址申请成功后显示在下述位置。公网地址ip

安装Telegraf

请结合应用环境所属的平台种类,参见Telegraf产品文档选择适合自身平台的安装方式。

配置Telegraf连接时序引擎

  1. 修改 Telegraf 的配置文件telegraf.conf,找到其中的OUTPUT PLUGINS部分。
  2. 关闭掉 output.influxdb的插件,启用output.opentsdb插件。
      ...... 
      #[[outputs.influxdb]] 
      ~(下略)~ 
      [[outputs.opentsdb]] 
      ......
  3. 配置[[outputs.opentsdb]]的相关设置。
    • 配置时序引擎实例的域名和端口。填入类似以下的内容。
       host = "http://{时序引擎实例ID}.hitsdb.rds.aliyuncs.com" 
       port = 3242
      说明 host必须加上“http://”前缀。3242 是公有云时序引擎实例在公网暴露的默认端口。
    • 配置数据上报时的HTTP接口。可通过打开http_path = "/api/put"注释来实现。同时可以通过设置http_batch_size来指定上报数据时一次批量写入的数据点数。
    • 配置Telegraf写入指标时的分隔符。可通过设置separator实现指标的分隔符。但需注意分隔符只能选用Lindorm时序引擎所支持的单值数据写入
    • 关于其他可配置项的设置,请参见Telegraf 在线文档
  4. 启动Telegraf,开启数据上报。 数据上报开始后,可以从时序引擎实例的管控平台的监控页面,看到数据的写入情况。监控页面的入口为 阿里云时序引擎 > 管理控制台 > 实例列表 > 实例监控跳转监控云监控