使用Telegraf Elasticsearch输入插件
作者:Sonia Gupta / 用例,产品,开发者
2019年5月30日
导航到
Telegraf Elasticsearch 插件非常易于使用,它可以向您展示大量有用的信息。首先,让我们启动InfluxDB沙箱以及一个Elasticsearch节点,并使用Kibana向其中填充一些数据。
安装InfluxDB沙箱
对于这篇教程,我选择使用InfluxDB沙箱,它非常容易启动。只需克隆仓库,然后运行./sandbox up
命令,您就可以在各自的容器中运行TICK堆栈的所有四个组件。按照这里的说明克隆仓库并启动它。
安装Elasticsearch和Kibana
Elasticsearch需要在您的机器上运行至少Java 8,所以我首先确保它已经安装。然后,由于我在运行Mac OS,我使用Homebrew在我的机器上安装Elasticsearch和Kibana:brew install elasticsearch
和 brew install kibana
。在撰写本文时,使用Homebrew将安装Elasticsearch版本6.7和Kibana版本6.7。如果您想安装最新版本的Elasticsearch,您需要按照这里提供的说明进行操作。
如果您使用Homebrew安装了Elasticsearch和Kibana,您可以通过在一个终端标签页中输入elasticsearch
和在第二个终端标签页中输入kibana
来启动它们。您将保持它们在设置Elasticsearch插件的过程中运行。
然后导航到localhost:5601
并点击左侧边栏中的“Dev Tools”,您应该会看到如下内容
这是Kibana UI,您可以从这里向您的Elasticsearch节点发送请求。
我建议您使用这里的教程来尝试使用Elasticsearch节点和Kibana。它将向您展示如何向您的节点填充数据并检查集群健康(一个集群由一个或多个节点组成,因此您也有一个集群)。例如,在Kibana中运行
PUT /user/_doc/1?pretty
{
"name": "Malala Yousafzai"
}
将创建一个用户索引并插入一个id为1的用户。然后在Kibana中运行GET /user/_doc/1?pretty
将检索该用户并返回
{
"_index" : "user",
"_type" : "_doc",
"_id" : "1",
"_version" : 2,
"found" : true,
"_source" : {
"name" : "Malala Yousafzai"
}
}
监控Elasticsearch
现在您已经在Elasticsearch节点中填充了一些索引和数据,是时候监控节点了!首先,如果您正在运行沙箱,请使用./sandbox down
将其关闭。
然后,在您最喜欢的编辑器中打开沙箱代码,并导航到telegraf/telegraf.conf
。这里您可以找到Telegraf配置的各种输入和输出插件,您也将在这里添加Elasticsearch插件的配置。
将Elasticsearch插件的配置从README文件底部复制粘贴到您的telegraf.conf
文件中,如下所示
请注意,我已经对配置进行了修改。将servers = ["https://127.0.0.1:9200"]
改为servers = ["http://host.docker.internal:9200"]
。这是因为我们正在Docker容器中运行Telegraf实例,我们需要它能够与我们在Docker容器外部运行的本地区域Elasticsearch节点进行通信。
保存文件,然后使用./sandbox up
重新启动沙箱,并导航到在localhost:8888
打开的Chronograf标签页。在左侧导航栏中点击“Explore”。然后点击“Flux”以切换到使用Flux进行查询。
然后,在“SCHEMA”下点击“telegraf”,然后点击“MEASUREMENTS”,然后点击“elasticsearch_indices”,接着点击“docs_count”旁边的“Add Filter”。这将在SCRIPT块中构建一个Flux查询
您的查询应该看起来像这样
from(bucket: "telegraf")
|> range(start: dashboardTime)
|> filter(fn: (r) => r._measurement == "elasticsearch_indices" and r._field == "docs_count")
在页面顶部点击“Visualization”,选择“Single Stat”。然后点击“Queries”返回查询块,并点击“Run Script”。您应该在页面顶部块中看到使用Elasticsearch教程创建的文档数量(至少一个)。这就是Elasticsearch插件可以展示的数据类型。
还有其他几个度量可供您使用,您实际上可以通过引入预构建的仪表板来可视化其中一些度量。为此,在左侧导航栏中点击“Configuration”,您将看到您的InfluxDB连接。点击该连接的名称
然后点击弹出的窗口中的“Update Connection”
然后滚动直到您看到“Elasticsearch”,并点击该框
点击“Create 1 Dashboard”。当您被询问Kapacitor连接时点击“Skip”,然后点击“Finish”。然后点击左侧导航栏中的“Dashboards”,您应该会在列表中看到Elasticsearch仪表板。点击它将带您进入仪表板本身
就这样!您现在已成功安装了Elasticsearch,并能够使用Telegraf插件监控其性能,以及使用包含的仪表板来可视化一些关键Elasticsearch度量。