ELK+filebeat+kafka部署 (2)filebeat部署

目录

部署filebeat

安装nginx

安装nginx

启动nginx 

​编辑 安装filebeat

1)上传软件包

2)解压缩软件 

3)修改配置文件

4)启动服务

 设置开机自启

logstash配置

1)配置 logstash文件

2)启动logstash

3)开机自启

 Kibana配置

1)创建索引

2)添加时间过滤器 

3)查看日志

​编辑 4)添加过滤器

1.添加类型为 log.file.path 的过滤器

 2.过滤cong12这台主机的nginx错误日志


1.部署filebeat

我们在主机(cong12)上部署nginx服务,然后安装filebeat,使用filebeat收集nginx日志文件

把收集的日志文件发送给 logstash 过滤日志,过滤完的日志保存到 elasticsearch,最终通过kibnan展示

点击可查看:ELK部署

安装nginx

可选rpm包安装和源码包的方式

Nginx官网下载地址:

http://nginx.org/en/download.html

安装nginx

上传软件包

安装依赖包:

yum install -y gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel  pcre pcre-devel

 预编译:

 groupadd www
 useradd -g www www -s /sbin/nologin
 tar zxf nginx-1.10.3.tar.gz 
 cd nginx-1.10.3
[root@cong12 nginx-1.10.3]# ./configure --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-pcre --with-http_ssl_module --with-http_gzip_static_module --user=www --group=www
[root@cong12 nginx-1.10.3]# make && make install
 ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

启动nginx 

 nginx

查看端口:

访问nginx默认测试页

 安装filebeat

直接下载官方发布的二进制包的,可以访问 Download Logstash Free | Get Started Now | Elastic 页面找对应操作系统和版本,点击下载即可

1)上传软件包

2)解压缩软件 

 tar -zxvf filebeat-7.3.0-linux-x86_64.tar.gz -C /usr/local/

重命名:

mv /usr/local/filebeat-7.3.0-linux-x86_64 /usr/local/filebeat

3)修改配置文件

filebeat.yml配置主要有两个部分,一个是日志收集,一个是日志输出的配置

如想收集某些日志文件在 paths 下写日志存放的决定路径

vim /usr/local/filebeat/filebeat.yml
- type: log                  # type: log 读取日志文件的每一行(默认)
  enabled: true             #enabled: true 该配置是否生效,如果改为false,将不收集该配置的日志
  paths:                   # paths: 要抓取日志的全路径
    - /usr/local/nginx/logs/*.log    #添加收集httpd服务日志
    #- /var/log/*          #将该行注释掉
#-------------------------- Elasticsearch output ------------------------------
#output.elasticsearch:        # Elasticsearch这部分全部注释掉,不直接把日志文件传输到ES
  # Array of hosts to connect to.
  #hosts: ["localhost:9200"]
#----------------------------- Logstash output --------------------------------
output.logstash:              #取消注释,把日志放到logstash中
  # The Logstash hosts
  hosts: ["192.168.30.11:5044"]  #取消注释,输出到Logstash的地址和端口
#logging.level: warning          #调整日志级别

注:把日志传输到 logstash 需让 logstash 监听 filebeat 5044端口

4)启动服务

cd /usr/local/filebeat/

[root@cong12 filebeat]# ./filebeat &  #后台运行

./filebeat -e -c filebeat.yml &

-e: 记录到stderr(标准输出(设备)文件,对应终端的屏幕),并禁用syslog 文件输出
-c: 指定用于Filebeat的配置文件, 如果未指定-c标志,则使用默认配置文件filebeat.yml

查看服务进程

ps -ef | grep filebeat

 设置开机自启

echo "cd /usr/local/filebeat/ && ./filebeat -e -c filebeat.yml & " >> /etc/rc.local
chmod +x /etc/rc.local 

logstash配置

logstash有三个插件:input (接收)、filter(过滤)、output(传输)

1)配置 logstash文件

input{
    beats {    #从Elastic beats接收事件
        codec => plain{charset => "UTF-8"} #设置编解码器为utf8
        port => "5044"   #要监听的端口  
    }
}
output {
  stdout { #标准输出,把收集的日志在当前终端显示,方便测试服务连通性
      codec => "rubydebug"    #编解码器为rubydebug
  }
  elasticsearch {                #把收集的日志发送给elasticsearch
      hosts => [ "192.168.30.11:9200" ]  # elasticsearch的服务器地址
      index => "nginx-logs-%{+YYYY.MM.dd}" #创建索引
  }
}

2)启动logstash

logstash  -f /usr/local/logstash-7.3.0/config/http_logstash.conf

如果报错:

这是因为我这台主机已经启动了 logstash实例使用的数据目录,有两种方式解决:

1.杀死之前运行的进程,将 /etc/rc.local 文件下设置的开机自启删除。

2.如要运行多个实例 ,使用选项 --path.data=/dir为要启动的logstash实例指定一个路径

我采用的第二种方法:

logstash  -f /usr/local/logstash-7.3.0/config/http_logstash.conf --path.data=/tmp

后台运行:

nohup logstash  -f /usr/local/logstash-7.3.0/config/http_logstash.conf --path.data=/tmp &

3)开机自启

 echo "nohup logstash -f /usr/local/logstash-7.3.0/config/http_logstash.conf &" >> /etc/rc.local

 Kibana配置

1)创建索引

访问 Kibana: 192.168.30.11:5601

 

2)添加时间过滤器 

3)查看日志

 打开新建的索引去查看收集到的日志,可以通过刚才添加的时间过滤器查看你想要的看到的日志

 4)添加过滤器

我们可以在搜到的日志添加过滤器,过滤出我们想要的内容,比如,我想看下nginx的错误日志,那么添加一个log.file.path为/usr/local/nginx/logs/error.log的过滤器,如果我们监控的服务器比较多,我可以查看特定的主机的nginx错误日志。

1.添加类型为 log.file.path 的过滤器

 

 2.过滤cong12这台主机的nginx错误日志

按照主机名做过滤,过滤主机的字段名称叫agent.hostname,添加agent.hostname为cong12的过滤器,所有的过滤器字段在显示的日志上面可以看到。

 

 

到此 ELK+filebeat 部署完成 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

蟹黄堡!

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

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

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

打赏作者

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

抵扣说明:

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

余额充值