大数据学习33:logstash 和 kibanba 安装以及ELK的联调记录
2017-12-03 16:12
1036 查看
logstash 和 kibanba 安装以及ELK的联调记录
1.Logstash安装
[root@hadoop001 elk]# tar -xzvf logstash-6.0.0.tar.gz
[root@hadoop001 elk]# cd logstash-6.0.0/
[root@hadoop001 logstash-6.0.0]# ll
total 100
drwxr-xr-x. 2 root root 4096 Nov 25 14:55 bin
drwxr-xr-x. 2 root root 4096 Nov 25 14:55 config
-rw-r--r--. 1 root root 2276 Nov 11 03:59 CONTRIBUTORS
drwxr-xr-x. 2 root root 4096 Nov 11 03:59 data
-rw-r--r--. 1 root root 3959 Nov 11 04:02 Gemfile
-rw-r--r--. 1 root root 21265 Nov 11 03:59 Gemfile.jruby-2.3.lock
drwxr-xr-x. 5 root root 4096 Nov 25 14:55 lib
-rw-r--r--. 1 root root 589 Nov 11 03:59 LICENSE
drwxr-xr-x. 4 root root 4096 Nov 25 14:55 logstash-core
drwxr-xr-x. 3 root root 4096 Nov 25 14:55 logstash-core-plugin-api
drwxr-xr-x. 4 root root 4096 Nov 25 14:55 modules
-rw-rw-r--. 1 root root 26953 Nov 11 04:02 NOTICE.TXT
drwxr-xr-x. 3 root root 4096 Nov 25 14:55 tools
drwxr-xr-x. 4 root root 4096 Nov 25 14:55 vendor
[root@hadoop001 logstash-6.0.0]#
#创建一个日志收集的规则
#input 的 file 的path 要和 nginx 产生日志的路径一致,否则无法读取到。
#filter 中为匹配规则
#output 中为输出到 elasticsearch 的位置,es中存储数据 index 相当于 rdbms 表空间,type相当于 rdbms 表
[root@hadoop001 logstash-6.0.0]# vi logstash-nginx-access-log.conf
input {
file {
path => ["/usr/local/nginx/logs/access.log"]
type => "nginx_access"
start_position => "beginning"
}
}
filter {
grok {
match => {
"message" => '%{IPORHOST:remote_ip} - %{DATA:user_name} \[%{HTTPDATE:time}\] "%{WORD:request_action} %{DATA:request} HTTP/%{NUMBER:http_version}" %{NUMBER:response} %{NUMBER:bytes} "%{DATA:referrer}" "%{DATA:agent}"'
}
}
date {
match => [ "time", "dd/MMM/YYYY:HH:mm:ss Z" ]
locale => en
}}
output {
elasticsearch {
hosts => ["192.168.137.11:9200"]
index => "logstash-nginx-access-log"
}
}
这篇文章详细说了如何使用 grok 去将日志匹配进es
https://www.cnblogs.com/Orgliny/p/5592186.html
注意:
如果logstash 和 nginx 配合的不好,比如生成日志和 match 后面的写的有问题,会在 es 中导入多条记录,比如刷新一次,会导入5次。
[root@hadoop001 logstash-6.0.0]# nohup bin/logstash -f logstash-nginx-access-log.conf &
[1] 3547
[root@hadoop001 logstash-6.0.0]# nohup: ignoring input and appending output to `nohup.out'
关闭logstash
[root@hadoop001 logstash-6.0.0]# kill -9 $(pgrep -f logstash)
查看日志
[root@hadoop001 logstash-6.0.0]# tail -f nohup.out
这时,我们没有访问nginx的主页,没有产生新记录,所有 es 上是没有任何 index 和数据的。
这里建议手动先创建一个index ,避免自动创建后 number_of_shards 不好修改
curl -XPUT 'http://192.168.137.11:9200/logstash-nginx-access-log' -d '
{
"settings" : {
"index" : {
"number_of_shards" : 3,
"number_of_replicas" : 1
}
}
}' -H 'Content-Type: application/json; charset=UTF-8'
刷新nginx网页,es中会产生新数据。
这时,我们就确认logstash 配置完成。
清理 es 数据,这里直接删 index
curl -XDELETE 'http://192.168.137.11:9200/logstash-nginx-access-log'
2.Kibana安装
[root@hadoop001 elk]# tar -xzvf kibana-6.0.0-linux-x86_64.tar.gz
[root@hadoop001 elk]# chown -R root.root kibana-6.0.0-linux-x86_64/
[root@hadoop001 elk]# cd kibana-6.0.0-linux-x86_64
[root@hadoop001 kibana-6.0.0-linux-x86_64]# ll
total 856
drwxr-xr-x. 2 root root 4096 Nov 11 02:50 bin
drwxrwxr-x. 2 root root 4096 Nov 11 02:50 config
drwxrwxr-x. 2 root root 4096 Nov 11 02:50 data
-rw-rw-r--. 1 root root 562 Nov 11 02:50 LICENSE.txt
drwxrwxr-x. 6 root root 4096 Nov 11 02:50 node
drwxrwxr-x. 620 root root 20480 Nov 11 02:50 node_modules
-rw-rw-r--. 1 root root 799543 Nov 11 02:50 NOTICE.txt
drwxrwxr-x. 3 root root 4096 Nov 11 02:50 optimize
-rw-rw-r--. 1 root root 721 Nov 11 02:50 package.json
drwxrwxr-x. 2 root root 4096 Nov 11 02:50 plugins
-rw-rw-r--. 1 root root 4654 Nov 11 02:50 README.txt
drwxr-xr-x. 14 root root 4096 Nov 11 02:50 src
drwxrwxr-x. 5 root root 4096 Nov 11 02:50 ui_framework
drwxr-xr-x. 2 root root 4096 Nov 11 02:50 webpackShims
[root@hadoop001 kibana-6.0.0-linux-x86_64]# cd config/
[root@hadoop001 config]# ll
total 8
-rw-r--r--. 1 root root 4649 Nov 11 02:50 kibana.yml
[root@hadoop001 config]# vi kibana.yml
server.host: "192.168.137.11"
elasticsearch.url: "http://192.168.137.11:9200"
[root@hadoop001 config]# cd ../
[root@hadoop001 kibana-6.0.0-linux-x86_64]# bin/kibana
log [06:14:46.050] [info][status][plugin:kibana@6.0.0] Status changed from uninitialized to green - Ready
log [06:14:46.095] [info][status][plugin:elasticsearch@6.0.0] Status changed from uninitialized to yellow - Waiting for Elasticsearch
log [06:14:46.168] [info][status][plugin:console@6.0.0] Status changed from uninitialized to green - Ready
log [06:14:46.209] [info][status][plugin:metrics@6.0.0] Status changed from uninitialized to green - Ready
log [06:14:46.407] [info][status][plugin:timelion@6.0.0] Status changed from uninitialized to green - Ready
log [06:14:46.413] [info][listening] Server running at http://192.168.137.11:5601
log [06:14:46.414] [info][status][ui settings] Status changed from uninitialized to yellow - Elasticsearch plugin is yellow
log [06:14:51.198] [info][status][plugin:elasticsearch@6.0.0] Status changed from yellow to yellow - No existing Kibana index found
log [06:14:52.409] [info][status][plugin:elasticsearch@6.0.0] Status changed from yellow to green - Kibana index ready
log [06:14:52.410] [info][status][ui settings] Status changed from yellow to green - Ready
这时候,可以打开 网页看下 kibana
第一次打开kibana需要创建一个默认的 index pattern
点击 create ,这时其实就是 kibana 去 es 中的索引,匹配索引中存储的记录建一个模板
刷新nginx 网页,会出现数据
一个基础的联调完成
1.Logstash安装
[root@hadoop001 elk]# tar -xzvf logstash-6.0.0.tar.gz
[root@hadoop001 elk]# cd logstash-6.0.0/
[root@hadoop001 logstash-6.0.0]# ll
total 100
drwxr-xr-x. 2 root root 4096 Nov 25 14:55 bin
drwxr-xr-x. 2 root root 4096 Nov 25 14:55 config
-rw-r--r--. 1 root root 2276 Nov 11 03:59 CONTRIBUTORS
drwxr-xr-x. 2 root root 4096 Nov 11 03:59 data
-rw-r--r--. 1 root root 3959 Nov 11 04:02 Gemfile
-rw-r--r--. 1 root root 21265 Nov 11 03:59 Gemfile.jruby-2.3.lock
drwxr-xr-x. 5 root root 4096 Nov 25 14:55 lib
-rw-r--r--. 1 root root 589 Nov 11 03:59 LICENSE
drwxr-xr-x. 4 root root 4096 Nov 25 14:55 logstash-core
drwxr-xr-x. 3 root root 4096 Nov 25 14:55 logstash-core-plugin-api
drwxr-xr-x. 4 root root 4096 Nov 25 14:55 modules
-rw-rw-r--. 1 root root 26953 Nov 11 04:02 NOTICE.TXT
drwxr-xr-x. 3 root root 4096 Nov 25 14:55 tools
drwxr-xr-x. 4 root root 4096 Nov 25 14:55 vendor
[root@hadoop001 logstash-6.0.0]#
#创建一个日志收集的规则
#input 的 file 的path 要和 nginx 产生日志的路径一致,否则无法读取到。
#filter 中为匹配规则
#output 中为输出到 elasticsearch 的位置,es中存储数据 index 相当于 rdbms 表空间,type相当于 rdbms 表
[root@hadoop001 logstash-6.0.0]# vi logstash-nginx-access-log.conf
input {
file {
path => ["/usr/local/nginx/logs/access.log"]
type => "nginx_access"
start_position => "beginning"
}
}
filter {
grok {
match => {
"message" => '%{IPORHOST:remote_ip} - %{DATA:user_name} \[%{HTTPDATE:time}\] "%{WORD:request_action} %{DATA:request} HTTP/%{NUMBER:http_version}" %{NUMBER:response} %{NUMBER:bytes} "%{DATA:referrer}" "%{DATA:agent}"'
}
}
date {
match => [ "time", "dd/MMM/YYYY:HH:mm:ss Z" ]
locale => en
}}
output {
elasticsearch {
hosts => ["192.168.137.11:9200"]
index => "logstash-nginx-access-log"
}
}
这篇文章详细说了如何使用 grok 去将日志匹配进es
https://www.cnblogs.com/Orgliny/p/5592186.html
注意:
如果logstash 和 nginx 配合的不好,比如生成日志和 match 后面的写的有问题,会在 es 中导入多条记录,比如刷新一次,会导入5次。
[root@hadoop001 logstash-6.0.0]# nohup bin/logstash -f logstash-nginx-access-log.conf &
[1] 3547
[root@hadoop001 logstash-6.0.0]# nohup: ignoring input and appending output to `nohup.out'
关闭logstash
[root@hadoop001 logstash-6.0.0]# kill -9 $(pgrep -f logstash)
查看日志
[root@hadoop001 logstash-6.0.0]# tail -f nohup.out
这时,我们没有访问nginx的主页,没有产生新记录,所有 es 上是没有任何 index 和数据的。
这里建议手动先创建一个index ,避免自动创建后 number_of_shards 不好修改
curl -XPUT 'http://192.168.137.11:9200/logstash-nginx-access-log' -d '
{
"settings" : {
"index" : {
"number_of_shards" : 3,
"number_of_replicas" : 1
}
}
}' -H 'Content-Type: application/json; charset=UTF-8'
刷新nginx网页,es中会产生新数据。
这时,我们就确认logstash 配置完成。
清理 es 数据,这里直接删 index
curl -XDELETE 'http://192.168.137.11:9200/logstash-nginx-access-log'
2.Kibana安装
[root@hadoop001 elk]# tar -xzvf kibana-6.0.0-linux-x86_64.tar.gz
[root@hadoop001 elk]# chown -R root.root kibana-6.0.0-linux-x86_64/
[root@hadoop001 elk]# cd kibana-6.0.0-linux-x86_64
[root@hadoop001 kibana-6.0.0-linux-x86_64]# ll
total 856
drwxr-xr-x. 2 root root 4096 Nov 11 02:50 bin
drwxrwxr-x. 2 root root 4096 Nov 11 02:50 config
drwxrwxr-x. 2 root root 4096 Nov 11 02:50 data
-rw-rw-r--. 1 root root 562 Nov 11 02:50 LICENSE.txt
drwxrwxr-x. 6 root root 4096 Nov 11 02:50 node
drwxrwxr-x. 620 root root 20480 Nov 11 02:50 node_modules
-rw-rw-r--. 1 root root 799543 Nov 11 02:50 NOTICE.txt
drwxrwxr-x. 3 root root 4096 Nov 11 02:50 optimize
-rw-rw-r--. 1 root root 721 Nov 11 02:50 package.json
drwxrwxr-x. 2 root root 4096 Nov 11 02:50 plugins
-rw-rw-r--. 1 root root 4654 Nov 11 02:50 README.txt
drwxr-xr-x. 14 root root 4096 Nov 11 02:50 src
drwxrwxr-x. 5 root root 4096 Nov 11 02:50 ui_framework
drwxr-xr-x. 2 root root 4096 Nov 11 02:50 webpackShims
[root@hadoop001 kibana-6.0.0-linux-x86_64]# cd config/
[root@hadoop001 config]# ll
total 8
-rw-r--r--. 1 root root 4649 Nov 11 02:50 kibana.yml
[root@hadoop001 config]# vi kibana.yml
server.host: "192.168.137.11"
elasticsearch.url: "http://192.168.137.11:9200"
[root@hadoop001 config]# cd ../
[root@hadoop001 kibana-6.0.0-linux-x86_64]# bin/kibana
log [06:14:46.050] [info][status][plugin:kibana@6.0.0] Status changed from uninitialized to green - Ready
log [06:14:46.095] [info][status][plugin:elasticsearch@6.0.0] Status changed from uninitialized to yellow - Waiting for Elasticsearch
log [06:14:46.168] [info][status][plugin:console@6.0.0] Status changed from uninitialized to green - Ready
log [06:14:46.209] [info][status][plugin:metrics@6.0.0] Status changed from uninitialized to green - Ready
log [06:14:46.407] [info][status][plugin:timelion@6.0.0] Status changed from uninitialized to green - Ready
log [06:14:46.413] [info][listening] Server running at http://192.168.137.11:5601
log [06:14:46.414] [info][status][ui settings] Status changed from uninitialized to yellow - Elasticsearch plugin is yellow
log [06:14:51.198] [info][status][plugin:elasticsearch@6.0.0] Status changed from yellow to yellow - No existing Kibana index found
log [06:14:52.409] [info][status][plugin:elasticsearch@6.0.0] Status changed from yellow to green - Kibana index ready
log [06:14:52.410] [info][status][ui settings] Status changed from yellow to green - Ready
这时候,可以打开 网页看下 kibana
第一次打开kibana需要创建一个默认的 index pattern
点击 create ,这时其实就是 kibana 去 es 中的索引,匹配索引中存储的记录建一个模板
刷新nginx 网页,会出现数据
一个基础的联调完成
相关文章推荐
- 【利用python进行数据分析-学习记录】python-matplotlib中Basemap插件的安装
- Asymptote 学习记录(1):基本的安装以及用批处理模式和交互模式绘图
- ELK学习4_Elasticsearch+Logstash+Kibana安装_简易版
- 小白学习大数据之路——Hadoop3.0.0-alpha2 安装以及测试程序wordcount实践
- Python数据挖掘学习--01基本模块介绍以及环境安装
- 大数据学习34:grafana 安装 和 Nginx 、EL 联调
- [Sqlite]-->嵌入式数据库的安装、建库、建表、更新表结构以及数据导入导出等等详细过程记录
- Centos7.2学习记录(2)——yum只下载不安装以及多rpm的安装
- React Native之学习ListView的单选以及记录数据
- Asymptote 学习记录(1):基本的安装以及用批处理模式和交互模式绘图
- JavaScript以及Jquery动态添加多选框值以及获取数据的学习记录
- Elasticsearch学习记录(1.安装,简单的查询,聚合,防止数据重复,冲突控制等)
- MySQL数据学习之路 之 MySQL安装以及MySQL概述
- 大数据学习31:Elasticsearch 6.0 和 Elasticsearch header 安装记录
- ELK学习4_Elasticsearch+Logstash+Kibana安装_简易版
- Linux学习记录(2)安装Linux系统以及VirtualBox增强工具
- 微软企业库5.0学习笔记(三十五)数据访问模块 DataSet以及数据库事务
- Delphi 2010学习笔记(11)---数据类型(记录类型)---2011-01-20
- 20100902 学习记录:GridView中的数据导出为Excel
- Ubuntu10.10配置以及软件安装记录