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

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
Elasticsearch Serverless检索通用型,资源抵扣包 100CU*H
简介: 【日志审计】极易上手搭建自己日志采集服务器分析日志(winlogbeat+Elasticsearch+Kibana)

00前言:


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

首先说下什么是ELK呢?


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


Logstash 和 Kibana。


  • Elasticsearch 是一个搜索和分析引擎。
  • Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等存储库中。
  • Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化。

640.png

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

640.png

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

01准备工作:


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

640.png


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


02关闭selinux:


临时关闭selinux:

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

640.png

临时关闭:setenforce 0

640.png

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

SELINUX=enforcing 替换为SELINUX=disabled

640.png

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

SELinux status :  disabled

640.png



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

640.png

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

640.png

这样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/

640.png

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

640.png


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

添加


* soft nofile 65536* hard nofile 65536

640.png


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

添加


soft  nproc  2048

640.png


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

添加

640.png


[root@localhost /]# sysctl –p

640.png

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


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

640.png

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


[root@localhost config]# vim elasticsearch.yml

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

640.png

改成

640.png

2.开启监听的端口

640.png

去掉#

640.png

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

640.png640.png


文件夹如果没有需要自己创建。注意文件夹创建好后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

640.png

或看端口 9200  9300 是否启动了


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

640.png

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


640.png

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

640.png

改成

640.png

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

640.png

2.开启监听的端口

640.png

640.png


[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"

640.png

浏览器http://192.168.125.139:5601

640.png

至此服务端搭建完毕。


06部署Winlogbeat客户端:


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

640.png

2.解压到C:\Program Files

640.png

3.安装winlogbeat服务

640.png

重新命名文件夹为winlogbeat

用管理员身份打开windows的 powershell

640.png

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


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

640.png

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


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

640.png

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

640.png

然后启动服务

640.png

4.配置winlogbeat.yml文件

用winlogbeat收集日志,发送到elasticsearch
修改配置文件 :winlogbeat.yml
修改tags信息,因为winlogbeat没有ip自带,查看日志时不方便区分,顾在此字段中添加ip+mac

640.png

填写要输出到es的地址

640.png

修改此处即可

640.png

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

5.重启服务

640.png

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

640.png

640.png

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

640.png

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

640.png

至此实验完成。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
14天前
|
存储 运维 监控
SelectDB 实现日志高效存储与实时分析,完成任务可领取积分、餐具套装/水杯/帆布包!
SelectDB 实现日志高效存储与实时分析,完成任务可领取积分、餐具套装/水杯/帆布包!
|
28天前
|
SQL 监控 数据挖掘
SLS 重磅升级:超大规模数据实现完全精确分析
SLS 全新推出的「SQL 完全精确」模式,通过“限”与“换”的策略切换,在快速分析与精确计算之间实现平衡,满足用户对于超大数据规模分析结果精确的刚性需求。标志着其在超大规模日志数据分析领域再次迈出了重要的一步。
291 117
|
22天前
|
存储 监控 API
【Azure App Service】分享使用Python Code获取App Service的服务器日志记录管理配置信息
本文介绍了如何通过Python代码获取App Service中“Web服务器日志记录”的配置状态。借助`azure-mgmt-web` SDK,可通过初始化`WebSiteManagementClient`对象、调用`get_configuration`方法来查看`http_logging_enabled`的值,从而判断日志记录是否启用及存储方式(关闭、存储或文件系统)。示例代码详细展示了实现步骤,并附有执行结果与官方文档参考链接,帮助开发者快速定位和解决问题。
75 24
|
1月前
|
存储 消息中间件 缓存
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
基于阿里云SelectDB,MiniMax构建了覆盖国内及海外业务的日志可观测中台,总体数据规模超过数PB,日均新增日志写入量达数百TB。系统在P95分位查询场景下的响应时间小于3秒,峰值时刻实现了超过10GB/s的读写吞吐。通过存算分离、高压缩比算法和单副本热缓存等技术手段,MiniMax在优化性能的同时显著降低了建设成本,计算资源用量降低40%,热数据存储用量降低50%,为未来业务的高速发展和技术演进奠定了坚实基础。
MiniMax GenAI 可观测性分析 :基于阿里云 SelectDB 构建 PB 级别日志系统
|
18天前
|
安全 Java Linux
Linux安装Elasticsearch详细教程
Linux安装Elasticsearch详细教程
57 1
|
5月前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
204 5
|
6月前
|
存储 JSON Java
elasticsearch学习一:了解 ES,版本之间的对应。安装elasticsearch,kibana,head插件、elasticsearch-ik分词器。
这篇文章是关于Elasticsearch的学习指南,包括了解Elasticsearch、版本对应、安装运行Elasticsearch和Kibana、安装head插件和elasticsearch-ik分词器的步骤。
563 0
elasticsearch学习一:了解 ES,版本之间的对应。安装elasticsearch,kibana,head插件、elasticsearch-ik分词器。
|
7月前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
8月前
|
数据可视化 Docker 容器
一文教会你如何通过Docker安装elasticsearch和kibana 【详细过程+图解】
这篇文章提供了通过Docker安装Elasticsearch和Kibana的详细过程和图解,包括下载镜像、创建和启动容器、处理可能遇到的启动失败情况(如权限不足和配置文件错误)、测试Elasticsearch和Kibana的连接,以及解决空间不足的问题。文章还特别指出了配置文件中空格的重要性以及环境变量中字母大小写的问题。
一文教会你如何通过Docker安装elasticsearch和kibana 【详细过程+图解】
|
9月前
|
Docker 容器
docker desktop安装es并连接elasticsearch-head:5
以上就是在Docker Desktop上安装Elasticsearch并连接Elasticsearch-head:5的步骤。
358 2

热门文章

最新文章

下一篇
oss创建bucket