前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何安装 Elastic 栈中的 Logstash

如何安装 Elastic 栈中的 Logstash

作者头像
腾讯云大数据
修改2021-01-08 16:25:48
2.5K0
修改2021-01-08 16:25:48
举报

腾讯云 Elasticsearch Service】高可用,可伸缩,云端全托管。集成X-Pack高级特性,适用日志分析/企业搜索/BI分析等场景


在今天的这篇文章中,我们来介绍如何在 Linux 及 MacOS 上安装 Elastic 栈中的 Logstash。

Logstash 是一个功能强大的工具,可与各种部署集成。 它提供了大量插件,可帮助您解析,丰富,转换和缓冲来自各种来源的数据。 如果你的数据需要 Beats中 没有的其他处理,则需要将 Logstash 添加到部署中。

Logstash 是 Elastic 栈非常重要的一部分,但是它不仅仅为 Elasticsearch 所使用。它可以介绍广泛的各种数据源。Logstash 可以帮利用它自己的 Filter 帮我们对数据进行解析,丰富,转换等。

最后,它可以把自己的数据输出到各种需要的数据储存地,这其中包括 Elasticsearch。

安装 JAVA

为了能够使得 Logstash 能正常工作,我们首先必须安装 JAVA。对于 Ubuntu 的使用者来说,可以参照我之前写的文章 “如何在Ubuntu上安装 Java” 来进行安装 Java。对于 MacOS 的开发者来说,可以直接在 Terminal 中打入命令:

代码语言:javascript
复制
$ java -version

如果没有安装 Java,Mac 系统会自自动弹出一个对话框让我们去按照相应的步骤去安装 JAVA。最后别忘记设置自己的JAVA_HOME 变量。设置完以后,我们可以看到我的输出是像下面的:

代码语言:javascript
复制
localhost:~ liuxg$ java -versionjava version "12.0.2" 2019-07-16Java(TM) SE Runtime Environment (build 12.0.2+10)Java HotSpot(TM) 64-Bit Server VM (build 12.0.2+10, mixed mode, sharing)localhost:~ liuxg$ echo $JAVA_HOME/Library/Java/JavaVirtualMachines/jdk-12.0.2.jdk/Contents/Home

如果你能看到上面的输出,说明你的 JAVA 安装时成功的。

安装 Logstash

注意:在这里,我们以安装版本7.3为例。如果你想安装其它的版本,请把下面的数字改为相应的版本信息进行下载及安装。 我们必须安装和Elasticsearch版本一致的 Logstash。除了下面的命令之外,我们也可以在地址https://www.elastic.co/downloads/logstash 直接下载安装。在下面我们使用7.3.0版本为例来进行安装。如果你想安装其它的版本,直接在命令行中替换命令行中的7.3.0为你想要的版本号码。

要下载并安装 Logstash,请打开 Terminal 窗口并使用适用于您的系统的命令:

deb:

代码语言:javascript
复制
curl -L -O https://artifacts.elastic.co/downloads/logstash/logstash-7.3.0.debsudo dpkg -i logstash-7.3.0.deb

rpm:

代码语言:javascript
复制
curl -L -O https://artifacts.elastic.co/downloads/logstash/logstash-7.3.0.rpmsudo rpm -i logstash-7.3.0.rpm

mac and linux:

代码语言:javascript
复制
curl -L -O https://artifacts.elastic.co/downloads/logstash/logstash-7.3.0.tar.gztar -xzvf logstash-7.3.0.tar.gz

brew:

代码语言:javascript
复制
brew tap elastic/tapbrew install elastic/tap/logstash-full

win:

代码语言:javascript
复制
从Logstash下载页面下载Logstash 7.3.0 Windows zip文件。将zip文件的内容解压缩到计算机上的目录,例如C\Program Files。 使用短路径(少于30个字符)以避免在Windows上遇到文件路径长度限制。

至此,Logstash 的安装以及完成。

我们怎么检查我们的 Logstash 安装是正确的呢?

首先,让我们通过运行最基本的 Logstash 管道来测试您的 Logstash 安装。

Logstash 管道有两个必需元素,输入和输出,以及一个可选元素 filter。 输入插件使用来自源的数据,过滤器插件在您指定时修改数据,输出插件将数据写入目标。

要测试 Logstash 安装,请运行最基本的 Logstash 管道。 例如:

代码语言:javascript
复制
cd logstash-7.3.0bin/logstash -e 'input { stdin { } } output { stdout {} }'

等Logstash完成启动后,我们在stdin里输入一下文字,我们可以看到如下的输出:

如果你在你的 Terminal 中看到和我一样的输出,说明你的 Logstash 安装时成功的。

 我们也可以创建一个自己的 logstash.conf 文件,并存于你的文件系统的一个目录下。这个 logstash.conf 的文件内容如下:

logstash.conf

代码语言:javascript
复制
input {   stdin{ }} output {     stdout {       codec => rubydebug   }}

然后,我们可以使用如下的命令来运行我们的 logstash:

代码语言:javascript
复制
./bin/logstash -f path_to_logstash_conf_file

通过这样的 -f 选项,我们可以启动任何一个我们喜欢路径的 longstash 配置文件。这个文件可能并不存在于当前的 Logstash 的安装目录中。以后我们的 Logstash 整个安装目录被删除,那么我们的配置文件也将在这里。

我们也可以通过如下的配置文件,把我们在 terminal 上输入的信息输出到一个文件中:

代码语言:javascript
复制
input {   stdin{}}output {   file {      path => "path_to_log_file/output.log"   }}

比如,我们创建一个如下的 heartbeat.conf 文件:

heartbeat.conf

代码语言:javascript
复制
input {  heartbeat {    interval => 10    type => "heartbeat"  }} output {  stdout {    codec => rubydebug  }}

我们可以使用入下的命令来运行:

代码语言:javascript
复制
./bin/logstash -f heartbeat.conf

你就可以看到如下的输出:

代码语言:javascript
复制
{      "@version" => "1",    "@timestamp" => 2020-05-04T23:10:15.893Z,          "type" => "heartbeat",          "host" => "liuxg",       "message" => "ok"}{      "@version" => "1",    "@timestamp" => 2020-05-04T23:10:25.885Z,          "type" => "heartbeat",          "host" => "liuxg",       "message" => "ok"}

更多关于 Logstash 的文章,请参阅 logstash

参考

【1】https://www.elastic.co/guide/en/logstash/current/keystore.html

【2】 https://www.elastic.co/guide/en/logstash/current/installing-logstash.html


最新活动

包含文章发布时段最新活动,前往ES产品介绍页,可查找ES当前活动统一入口

Elasticsearch Service自建迁移特惠政策>>

Elasticsearch Service 新用户特惠狂欢,最低4折首购优惠 >>

Elasticsearch Service 企业首购特惠,助力企业复工复产>>

关注“腾讯云大数据”公众号,技术交流、最新活动、服务专享一站Get~

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 【腾讯云 Elasticsearch Service】高可用,可伸缩,云端全托管。集成X-Pack高级特性,适用日志分析/企业搜索/BI分析等场景
  • 安装 JAVA
  • 安装 Logstash
    • deb:
      • rpm:
        • mac and linux:
          • brew:
            • win:
            • 最新活动
            相关产品与服务
            Elasticsearch Service
            腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档