环境:Centos7
Elasricsearch版本:6.3.2 ,下载地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.2.zip
Kibana版本:6.3.2 ,下载地址:https://artifacts.elastic.co/downloads/kibana/kibana-6.3.2-linux-x86_64.tar.gz
Logstash版本:6.3.2,下载地址:https://artifacts.elastic.co/downloads/logstash/logstash-6.3.2.tar.gz
上面三款软件都是解压修改配置文件运行即可;
ES常有Head可视化插件、IK中文分词器等插件可用,在config目录下有elasticsearch.yml文件,常有配置如下:
# 地址
network.host: 0.0.0.0
# 端口
http.port: 9200
# 允许访问的IP地址段,* 为所有IP都可以访问
http.cors.allow-origin: "*"ES启动方式:
./elasticsearch/bin/elasticsearch 前台启动
./elasticsearch/bin/elasticsearch -d 后台启动 Kibana在config目录下有一个kibana.yml的配置文件,主要配置如下:
# 端口号
server.port: 5601
# 访问地址
server.host: "0.0.0.0"
# ES地址
elasticsearch.url: "http://localhost:9200"Kibana启动方式
cd /kibana/bin
nohup ./kibana & 后台启动 Logstash在config目录下新建一个logstash.conf文件,添加配置:
vim logstash.conf
input {
file {
# type字段,可表明导入的日志类型,这里的type,对应了ES中index中的type,即如果输入ES时,没有指定type,那么这里的type将作为ES中index的type。
type => "emps_log"
# 要导入的文件的位置,可以使用*,例如/var/log/nginx/*.log
path => "/htdocs/emps-8018/logs/catalina.out"
#start_position可以设置为beginning或者end,beginning表示从头开始读取文件,end表示读取最新的,这个也要和ignore_older一起使用。
start_position => "end"
# ignore_older表示了针对多久的文件进行监控,默认一天,单位为秒,可以自己定制,比如默认只读取一天内被修改的文件,0为无限制,单位为秒
ignore_older => 0
}
}
output {
#可以同时输出到多个终端
#筛选过滤后的内容输出到终端显示
stdout {
codec => rubydebug { }
}
elasticsearch {
# 导出格式为json
codec => "json"
# ES地址
hosts => "192.168.88.131"
# 索引
index => "emps_log-%{+YYYY.MM.dd}"
}
}Logstash启动方式
cd logstash
./bin/logstash -f config/logstash.conf
# -f :指定logstash的配置文件如上所示即可快速建立一个日志收集,访问ip:5601端口即可进入kibana页面做相关配置即可图形化展示日志信息;
Kibana参考视频教程:
https://www.elastic.co/cn/webinars/getting-started-kibana?elektra=home&storm=sub2
logstash的配置文件结构描述
# 日志导入
input {
}
# 日志筛选匹配处理
filter {
}
# 日志匹配输出
output {
}
Logstash 通过管道进行运作,管道有两个必需的元素,输入和输出,还有一个可选的元素,过滤器;输入插件从数据源获取数据,过滤器插件根据用户指定的数据格式修改数据,输出插件则将数据写入到目的地。
input模块
input模块下可以使用多个插件:如syslog、file、redis、beats等插件:
file #从文件系统上的文件读取,非常类似于UNIX命令tail -F
syslog #在众所周知的端口514上侦听系统日志消息,并根据RFC3164格式进行解析
redis #用redis通道和redis列表从redis服务器读取数据。 Redis经常用作集中式Logstash安装中的“broker”,它将来自远程Logstash“shippers”的Logstash事件排队。
beats #处理由Filebeat发送的事件。更多插件及详解请参考
ELK学习1.3 Logstash(6.3.2)搭建及配置

错误日志邮件提醒:
-------------------------待续---------------------------
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31509949/viewspace-3148890/ ,如需转载,请注明出处,否则将追究法律责任。