(四)ELK系列之Logstash搭建

(一)ELK系列之ELK介绍

(二)ELK系列之Elasticsearch搭建

(三)ELK系列之Kibana搭建

截至目前ELK已完成es、kibana的搭建,详情点击上方参考

现在开始搭建可以进行日志收集和过滤的logstash

环境准备

Centos7 1810

Kibana  6.6.1

10.9.8.97 data-node2

资源准备

1、Logstash包准备

去到es官网,找到需要的版本(本人使用6.6.1版本),根据需求下载,我这里下载rpm包,之后直接导进Linux

https://www.elastic.co/cn/downloads/past-releases/logstash-6-6-1

(此处下载缓慢,原因你懂的,可以直接从我百度盘里获取)

链接:https://pan.baidu.com/s/1WhF2oBvbU4SqJHmBTeBMcQ
提取码:fbjo

当然也可以直接用wget在linux里面获取

[root@es1_master_node_test ~]# wget https://artifacts.elastic.co/downloads/logstash/logstash-6.6.1.rpm

正式安装

[root@es3_data_node2_test ~]# rpm -ivh logstash-6.6.1.rpm

安装成功后先不要启动服务,先配置收集日志syslog

[root@es3_data_node2_test bin]# vim /etc/logstash/conf.d/syslog.conf

配置好后,检测配置的是否错误

[root@es3_data_node2_test bin]# cd /usr/share/logstash/bin

[root@es3_data_node2_test bin]# ./logstash --path.settings /etc/logstash/ -f /etc/logstash/conf.d/syslog.conf --config.test_and_exit

命令说明:

--path.settings 用于指定logstash的配置文件所在的目录

-f 指定需要被检测的配置文件的路径

--config.test_and_exit 指定检测完之后就退出

看到下图的提示就证明配置没有问题

接下来配置kibana的服务器ip以及监听端口

[root@es3_data_node2_test logstash]# vim /etc/rsyslog.conf

添加下面这一行

*.* @@10.9.8.97:10514   # 此ip为logstash服务器IP以及使用的端口(随意设置,只要不冲突就行,建议在1024之后,因为1024之内的端口都只能用root用户去监听)

保存配置后后重启rsyslog

[root@es3_data_node2_test ~]#  systemctl restart rsyslog

此时用另外一台机器ssh登陆此机器,测试是否会有日志输出

[root@es3_data_node2_test bin]# ./logstash --path.settings /etc/logstash/ -f /etc/logstash/conf.d/syslog.conf # syslog.conf配置文件已经配置为将日志输出到当前的终端上显示

测试结果如上图,登陆日志已经以JSON的格式打印到当前终端屏幕,测试成功

接下来修改配置文件,将收集到的日志输出到es服务器中

input {

  syslog {

    type => "system-syslog"

    port => 10514

  }

}

output {

  elasticsearch {

    hosts => ["10.9.8.93:9200","10.9.8.215:9200"] # 定义es服务器的ip

    index => "system-syslog-%{+YYYY.MM}" # 定义索引

  }

}

配置好后,接下来可能会出现进程正常启动,但是却找不到端口的情况,查看保存在/var/log/logstash/logstash-plain.log和/var/log/messages的日志发现是权限不够,我们启动logstash都是用的logstash用户起的,那么久需要给对应的文件logstash的组权限

需要赋权限的文件夹一:/var/log/logstash

[root@es3_data_node2_test log]# chown -R logstash. /var/log/logstash

需要赋权限的文件夹二:/var/lib/logstash

[root@es3_data_node2_test log]# chown -R logstash. /var/lib/logstash

搞定之后重启logstash,过一会就能发现设置的端口已经被监控了

此处可能出现下面这种情况,

[root@es3-logstash-test logstash]# systemctl restart logstash
Failed to restart logstash.service: Unit not found.

莫慌,问题不大,只是可能rpm安装的时候没有配置启动文件,执行下面这个即可

[root@es3-logstash-test logstash]#  /usr/share/logstash/bin/system-install /etc/logstash/startup.options systemd

此时在master-node节点测试,

[root@es1_master_node_test ~]# curl '10.9.8.93:9200/system-syslog-2019.12?pretty'

获取到如下图所示的JSON格式的指定索引详细信息

此时在服务器端的配置已经完成,接下来需要去kibana的web端进行配置

在Management ==> Index Patterns添加索引

创建完成后在Discover就能看到收集到的日志,至此logstash基础搭建已经完成。


后续可以选择使用logstash继续对nginx的日志进行收集,但是由于logstash比较庞大,所以我选择更为轻量的filebeat来进行日志采集,详情配置点击这里查看(五)ELK系列之Filebeat搭建

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hobby云说

你的鼓励将是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值