ELKStack入门之kibana&logstash安装和配置node
1、Kibana安装和配置linux
1.1 kibana简介 Kibana是一个基于Node.js的Elasticsearch索引库数据统计工具,能够利用Elasticsearch的聚合功能,生成各类图表,如柱形图,线状图,饼图等。并且还提供了操做Elasticsearch索引数据的控制台,而且提供了必定的API提示,很是有利于咱们学习Elasticsearch的语法。 英文官网:https://www.elastic.co/products/kibana 中文官网:https://www.elastic.co/cn/products/kibana 这是您走进 的窗口 Elastic Stack Kibana 让您可以可视化 Elasticsearch 中的数据并操做 Elastic Stack,所以您能够在这里解开任何疑问:例如,为什么会在凌晨 2:00 被传呼,雨水会对季度数据形成怎样的影响。 1.2 kibana下载安装文件 下载地址:https://www.elastic.co/cn/downloads
1.3 kibana 解压、配置shell
1.3.1 上传安装文件,解压数据库
1.3.2 重命名json
[Shell] 纯文本查看 复制代码
?
1
[es@node01 ~]$ mv kibana-6.4.0-linux-x86_64 kibana
1.3.3 配置vim
进入到kibana安装目录下的config文件夹中,修改kibana.yml 文件ruby
1.3.4 启动服务器
1.3.5 访问运维
启动成功工具
2、logstash 安装和配置
2.1 logstash简介 英文官网:https://www.elastic.co/products/logstash 中文官网:https://www.elastic.co/cn/products/logstash Logstash 是一个开源的数据收集引擎,它具备备实时数据传输能力。它能够统一过滤来自不一样源的数据,并按照开发者的制定的规范输出到目的地。 顾名思义,Logstash 收集数据对象就是日志文件。因为日志文件来源多(如:系统日志、服务器日志等),且内容杂乱,不便于人类进行观察。所以,咱们可使用 Logstash 对日志文件进行收集和统一过滤,变成可读性高的内容,方便开发者或运维人员观察,从而有效的分析系统/项目运行的性能,作好监控和预警的准备工做等。 2.2下载安装文件(6.4.0版本) 2.3 上传安装文件到指定目录 2.4 解压文件,重命名文件夹,删除安装压缩包
[Shell] 纯文本查看 复制代码
?
1
2
3
4
5
6
/size$ tar -zxvf logstash-6.4.0.tar.gz
[es@node01 ~]$ mv logstash-6.4.0 logstash
[es@node01 ~]$ rm -rf logstash-6.4.0.tar.gz
2.5 Logstash的组成结构
Logstash 经过管道进行运做,管道有两个必需的元素,输入(input)和输出(output),还有一个可选的元素-过滤器(filter)。输入插件从数据源获取数据,过滤器插件根据用户指定的数据格式修改数据,输出插件则将数据写入到目的地。以下图:
2.6 lostarsh 入门
Logstash 提供了一个 shell 脚本叫 logstash 方便快速运行,-e意指执行Logstash 提供了一个 shell 脚本叫 logstash 方便快速运行,-e意指执行。
[Shell] 纯文本查看 复制代码
?
1
[es@node01 bin]$ ./logstash -e 'input{ stdin{} } output{ stdout{} }'
Hello logstash(输入)通过 Logstash 管道(过滤)变成:
[Shell] 纯文本查看 复制代码
?
{
"@version" => "1", "message" => "Hello logstash", "@timestamp" => 2018-11-17T10:11:40.501Z, "host" => "node01"
}
【命令行中经常使用的命令(了解)
-e:后面跟着字符串,该字符串能够被当作logstash的配置(若是是“” 则默认使用stdin做为输入,stdout做为输出) -f:经过这个命令能够指定Logstash的配置文件,根据配置文件配置logstash -l:日志输出的地址(默认就是stdout直接在控制台中输出) -t:测试配置文件是否正确,而后退出。】
2.7 Logstash的插件介绍
在生产环境中,Logstash 的管道要复杂不少,可能须要配置多个输入、过滤器和输出插件。Logstash配置文件定义了Logstash 管道,当你使用-f <path/to/file>启动一个Logstash实例,其实使用了一个配置文件定义了管道实例。 一个Logstash管道有两个必备元素,输入和输出,一个可选元素,过滤器。input插件从一个源摄取数据,filter插件按照你指定的方式修改数据,output插件写出数据到一个目标数据库。所以,须要一个配置文件管理输入、过滤器和输出相关的配置。配置文件内容格式以下:
[Shell] 纯文本查看 复制代码
?
1
2
3
4
5
6
7
input {[/align]}
output {
}
在使用插件以前,咱们先了解一个概念:事件。Logstash 每读取一次数据的行为叫作事件。在 Logstach 目录中建立一个配置文件,名为 logstash.conf(名字任意)。
2.8 输入插件
输入插件容许一个特定的事件源能够读取到 Logstash 管道中,配置在 input {} 中,且能够设置多个。
修改配置文件:vim demo1.conf
[Shell] 纯文本查看 复制代码
?
input { /size[/size]# 从文件读取日志信息
file {
path => "/root/accounts.json"
start_position => "beginning" }
}
output {
stdout { codec => rubydebug }
}
[Shell] 纯文本查看 复制代码
?
1
2
[root@node01 logstash]# bin/logstash -f config/demo1.conf
Codec 是 logstash 从 1.3.0 版开始新引入的概念(Codec 来自 Coder/decoder 两个单词的首字母缩写)。 在此以前,logstash 只支持纯文本形式输入,而后以过滤器处理它。 但如今,咱们能够在输入 期处理不一样类型的数据,这全是由于有了 codec 设置。因此,这里须要纠正以前的一个概念。Logstash 不仅是一个 input | filter | output 的数据流,而是一个 input | decode |filter | encode | output 的数据流!codec 就是用来 decode、encode 事件的。codec 的引入,使得 logstash 能够更好更方便的与其余有自定义数据格式的运维产品共存,。事实上,咱们在第一个 "hello world" 用例中就已经用过 codec 了 —— rubydebug 就是一种 codec!虽然它通常只会用在stdout 插件中,做为配置测试或者调试的工具。