入门:macOS上的InfluxDB Cloud和Telegraf
作者:Al Sargent / 用例,产品,开发者
2019年11月14日
导航至
本文最初发布在Medium by Al Sargent。
最近我一直在我的MacBook Air上玩InfluxDB和Telegraf。我想分享一下如何在Mac上开始使用InfluxDB和Telegraf的笔记。首先,一些背景信息。
InfluxDB是什么?
如果您还不熟悉,InfluxDB是来自InfluxData的时间序列数据库,它比像Postgres这样的关系型数据库和像MongoDB这样的文档数据库在收集时间序列数据方面要好得多。这引出了我们的下一个问题...
什么是时间序列数据?
时间序列数据是您希望跟踪随时间变化的记录的信息。这意味着什么?好吧,让我们看看时间序列数据不是什么。
在许多SaaS应用程序中,您只能看到您正在处理的内容的最新状态。例如,在Salesforce中,您的客户账户的当前状态。但很难看到账户随时间的变化,因为Salesforce使用的数据库在跟踪此类信息方面存在困难,无法达到任何粒度或规模的精度。
时间序列数据中,随时间的变化是关键:这个房间的温度随时间如何变化?这个容器的CPU利用率随时间如何变化?这只股票的价格随时间如何变化?这位客户的数据利用率随时间如何变化?这些数据有时具有极高的粒度,甚至可以达到微秒甚至纳秒级别。
时间序列数据如何使用?
时间序列数据出现在广泛的用例中,包括系统监控、物联网传感器、客户计费、自动驾驶汽车和股票市场分析等。
Telegraf和InfluxDB如何处理时间序列数据?
Telegraf是一个收集时间序列数据并将其发送到InfluxDB的代理平台,然后InfluxDB存储数据以供后续分析和展示。
逐步指南
背景介绍完毕,让我们深入探讨。首先,您需要访问InfluxData并注册一个免费账户,用于InfluxDB Cloud 2.0。
填写您的信息,前往您的邮箱,点击链接确认您的电子邮件,并选择您的云提供商。我选择了AWS。
您将收到提示将数据加载到InfluxDB
点击加载您的数据。坚持使用Telegraf加载数据的默认选项。
点击 创建配置。为了简化操作,我们将使用我们Mac笔记本电脑的指标作为我们的时间序列数据流。因此,点击 系统 然后点击 继续。
为Telegraf配置命名,然后点击 创建并验证。
下一部分是用户体验的一个亮点。InfluxDB Cloud列出了所有需要进行的步骤,并提供了将Telegraf连接到在AWS上运行的InfluxDB的确切命令。
由于我们正在运行macOS,我们将使用Homebrew包管理器来安装Telegraf。(如果您正在运行不同的操作系统,您可以在这里找到安装说明。)
如果您还没有安装Homebrew,请先安装。在终端中输入
/usr/bin/ruby -e "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/master/install)"
(不确定如何使用终端?请查看这篇教程。)
然后安装Telegraf
brew update
brew install telegraf
然后将上面的截图中的export命令复制/粘贴以设置您的INFLUX_TOKEN系统变量。这对于您的账户是唯一的。
export INFLUX_TOKEN=[your unique API token]
您可以通过输入 env 命令来确认它是否已设置。我喜欢将其通过 sort 管道,这样我就可以快速从长列表中挑选出变量。因此,请输入以下内容
env | sort
您将在环境变量列表中看到INFLUX_TOKEN
接下来,复制/粘贴 telegraf 命令,以及您的唯一连接URL
telegraf --config https://us-west-2-
1.aws.cloud2.influxdata.com/api/v2/telegrafs/[your_unique_number]
您应该看到类似以下的输出
这表示Telegraf 1.12.1已被启动,并正在监控各种系统指标:CPU、磁盘、内存等。
返回浏览器并点击蓝色的 监听数据 按钮
您应该看到一条成功消息
点击蓝色的 完成 按钮,然后左侧的Data Explorer图标(从上往下数第二个)
点击 cpu 过滤器,按 提交,您应该看到如下图表
恭喜!现在Telegraf正在向云端的InfluxDB发送数据。在此阶段,值得在UI中探索一下可用的数据类型,以及学习如何使用Flux语言来查询数据。