极易上手搭建自己日志采集服务器分析日志(winlogbeat+Elasticsearch+Kibana)

 

前言:

 

需求是小编需要采集windows 上面的系统日志,所以要搭建个日志采集系统

首先说下什么是ELK呢?

ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。

  • Elasticsearch 是一个搜索和分析引擎。

  • Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等存储库中。

  • Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化。

不过小编采用的是winlogbeat + ES + Kibina的组合进行日志收集,优点就是轻量级,因为去掉了笨重的logstash, 占用资源更少。

如上图所示,该ELK框架由beats(这里我们采用winlogbeat)+elasticsearch+kibana构成,这个框架比较简单,入门级的框架。

 

01

准备工作:

 

Centos7虚拟机一台作为服务端Windows 虚拟机一天作为客户端

各软件包下载好并上传到Centos7服务上/opt目录下

 

02

关闭selinux:

 

临时关闭selinux:

获取当前selinux状态  getenforce      Enforcing为开启,Permissive为关闭

临时关闭:setenforce 0

永久关闭selinux:vim /etc/sysconfig/selinux

SELINUX=enforcing 替换为SELINUX=disabled

重启机器后后,运行命令sestatus

SELinux status :  disabled

 

 

03

部署JDK:

 

首先进入/opt目录然后做如下操作

[root@localhost /]# tar zxvf jdk1.8.0_131.tar.gz[root@localhost /]# mv jdk1.8.0_131 /usr/[root@localhost /]# vim /etc/profile

添加

export JAVA_HOME=/usr/jdk1.8.0_131/export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin

[root@localhost /]# source /etc/profile[root@localhost /]#  java –version

这样JDK就安装好了

 

 

04

部署Elasticsearch:

 

[root@localhost /]# tar xzf elasticsearch-5.3.0.tar.gz[root@localhost /]# mv elasticsearch-5.3.0 /usr/local/elasticsearch[root@localhost /]#  ll /usr/local/elasticsearch/

[root@localhost /]#  useradd  elk     创建用户[root@localhost /]#  chown -R elk /usr/local/elasticsearch/[root@localhost /]#  ll /usr/local/elasticsearch/

[root@localhost /]# vim  /etc/security/limits.conf

添加

* soft nofile 65536* hard nofile 65536

 [root@localhost /]# vim /etc/security/limits.d/20-nproc.conf

添加

soft  nproc  2048

root@localhost /]# vi /etc/sysctl.conf

添加

[root@localhost /]# sysctl –p

注意:做完几步后 建议重启系统

[root@localhost /]# cd /usr/local/elasticsearch/config/[root@localhost config]# vim jvm.options

注释:如果你虚拟机是2G以上不需要改

 

[root@localhost config]# vim elasticsearch.yml

1.修改监听的网络地址为0.0.0.0

改成

2.开启监听的端口

去掉#

3. data,用于存放索引分片数据文件,logs,用于存放日志

文件夹如果没有需要自己创建。注意文件夹创建好后chown –R elk data和logs下。

[root@localhost /]# su - elk       进入elk用户启动[elk@localhost ~]$ /usr/local/elasticsearch/bin/elasticsearch -d    启动[elk@localhost ~]$ tail -fn 50 /usr/local/elasticsearch/logs/elasticsearch.log

或看端口 9200  9300 是否启动了

[root@localhost elk]# netstat -ntlp|grep -E "9200|9300"

浏览器中输入:http://IP:9200测试是否正常(以下为正常)

 

05

部署Kibana:

 

[root@localhost /]# tar xzf kibana-5.3.0-linux-x86_64.tar.gz[root@localhost /]# mv kibana-5.3.0-linux-x86_64 /usr/local/kibana[root@localhost /]#  cd /usr/local/kibana/config/[root@localhost config]# vim kibana.yml

1.修改监听的网络地址为0.0.0.0

改成

去掉#号(改成EC服务器的ip地址) 这台和EC在一起所以不用改 如果有对个分布式集群用,隔开

2.开启监听的端口

[root@localhost config]# cd ..[root@localhost kibana]# cd bin/  进入bin目录[root@localhost bin]#  nohup ./kibana &      后台启动 [root@localhost bin]# netstat -tnlp|grep -E "9200|9300|5601"

浏览器http://192.168.125.139:5601

至此服务端搭建完毕。

 

06

部署Winlogbeat客户端:

 

1.首先把下载好的文件上传的客户端机器上

2.解压到C:\Program Files

3.安装winlogbeat服务

重新命名文件夹为winlogbeat

用管理员身份打开windows的 powershell

  • 运行以下命令来安装服务

 

C:\Users\Administrator> cd 'C:\Program Files\Winlogbeat'C:\Program Files\Winlogbeat> .\install-service-winlogbeat.ps1

如果在系统上禁用了脚本执行,则需要为当前会话设置执行策略以允许脚本运行。

 

PowerShell.exe -ExecutionPolicy UnRestricted -File .\install-service-winlogbeat.ps1.

安装好后即可在系统服务中看到了

然后启动服务

4.配置winlogbeat.yml文件

用winlogbeat收集日志,发送到elasticsearch
修改配置文件 :winlogbeat.yml

修改tags信息,因为winlogbeat没有ip自带,查看日志时不方便区分,顾在此字段中添加ip+mac

填写要输出到es的地址

修改此处即可

这里是要采集的日志类型,默认已配置好无需修改

5.重启服务

最后登录kibana配置winlogbeat索引查看获取的日志

可以看到已经接收到刚才开启winlogbeat服务的日志信息了

Tags中也有所填信息方便以后索引查看

至此实验完成。

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值