在CentOS7上配置ELK日志分析系统-Logstash安装配置

(1)Logstash的安装

Logstash的下载地址为:https://artifacts.elastic.co/downloads/logstash/logstash-6.1.3.tar.gz。然后上传至CentOS服务器,进入压缩文件所在的目录,这里同样选择放在了/opt目录下,进入/opt目录,安装解压目录如下。

# tar –zxvf logstash-6.1.2.tar.gz

同样为了后续使用方面将解压后的目录文件重名名为logstash,重命名命令如下。

# mv logstash-6.1.2 logstash

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

Logstash管道有两个必需的元素,input并且output,以及一个可选的元素,filter。输入插件消耗来自源的数据,过滤器插件会按照您指定的方式修改数据,并且输出插件将数据写入到目的地。

安装完成后运行如下命令。结果如图一所示。
# /opt/logstash/bin/logstash -e 'input { stdin { } } output { stdout {} }'

在CentOS7上配置ELK日志分析系统-Logstash安装配置_第1张图片

可以看到,输入什么内容logstash按照某种格式输出,其中-e参数允许Logstash直接通过命令行接受设置。这点尤其快速的帮助我们反复的测试配置是否正确而不用写配置文件。使用ctrl-c命令可以退出之前运行的Logstash。

使用-e参数在命令行中指定配置是很常用的方式,不过如果需要配置更多设置则需要很长的内容。这种情况,首先创建一个简单的配置文件,并且指定logstash使用这个配置文件。 例如:在 logstash 安装目录下(/opt/logstash/config)创建一个“基本配置”测试文件 logstash-test.conf, 创建配置文件内容如下:

input { stdin { } }

output {

    stdout { codec=> rubydebug }

}

Logstash使用input和output定义收集日志时的输入和输出的相关配置,本例中input 定义了一个叫"stdin"的input,output定义一个叫"stdout"的output。无论我们输入什么字符, Logstash都会按照某种格式来返回我们输入的字符,其中output被定义为"stdout"并使用了codec参数来指定logstash输出格式。

使用logstash的-f参数来读取配置文件,执行如图二所示操作开始进行测试:

在CentOS7上配置ELK日志分析系统-Logstash安装配置_第2张图片

(2)测试Elasticsearch 和 Logstash 来收集日志数据

接下来在Logstash安装目录下创建一个用于测试 logstash 使用Elasticsearch作为Logstash 的后端的测试文件Logstash-test1.conf,该文件中定义了stdout和Elasticsearch作为output,这样的“多重输出”即保证输出结果显示到屏幕上,同时也输出到Elastisearch中。

前提要保证Elasticsearch和Logstash都正常启动(需要先启动Elasticsearch,再启动Logstash)

input { stdin { } }

output {

    elasticsearch {hosts => "10.10.3.69:9200" } #Elasticsearch服务地址

    stdout { codec=> rubydebug }

}

然后开启服务,执行如下命令,结果如图三所示。

# /opt/logstash/bin/logstash -f /opt/logstash/config/logstash-test1.conf

在CentOS7上配置ELK日志分析系统-Logstash安装配置_第3张图片
通过浏览器访问请求http://10.10.3.69:9200/_search?pretty来查看 ES 是否接收到了数据 ,结果如图四所示。

在CentOS7上配置ELK日志分析系统-Logstash安装配置_第4张图片

至此,就可以成功利用Elasticsearch和Logstash来收集日志数据了。

你可能感兴趣的:(在CentOS7上配置ELK日志分析系统-Logstash安装配置)