Docker 部署 elk + filebeat

Docker 部署 elk + filebeat

kibana 开源的分析与可视化平台
logstash 日志收集工具 logstash-forwarder(原名lubmberjack)
elasticsearch 查询  + filebeat 日志收集

环境:

  • docker 版本 :20.10.2
  • 主机地址:192.168.0.220
  • filebeat:6.5.4

一、部署elk

1、修改系统内存内核参数

[root@server01 filebeat]# cat /etc/sysctl.conf 
vm.max_map_count=262144
[root@server01 filebeat]# sysctl -p
vm.max_map_count = 262144

2、下载elk镜像

docker pull sebp/elk

3、运行elk服务

docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -itd --name elk sebp/elk

4、修改logstash关闭ssl

复制代码
# 1、进入elk容器
docker exec -it elk /bin/bash
# 2、修改配置文件 改为如下
vi /etc/logstash/conf.d/02-beats-input.conf

input {
  beats {
    port => 5044
  }
}
复制代码

5、重启elk

docker restart elk

二、部署filebeat(本地安装)

  • filebeat压缩包
  • 下载地址:https://pan.baidu.com/s/1fx12E7N_O2a6CHIBmQV6Ig
  • 密码:osxk

1、安装filebeat

rpm -ivh filebeat-6.5.4-x86_64.rpm

2、修改配置文件

复制代码
[root@server01 ~]# cd /etc/filebeat/
[root@server01 filebeat]# ls
fields.yml  filebeat.reference.yml  filebeat.yml  modules.d
[root@server01 filebeat]# cp filebeat.yml filebeat.yml.bak
[root@server01 filebeat]# echo 0 > filebeat.yml
[root@server01 filebeat]# vi fi
fields.yml              filebeat.reference.yml  filebeat.yml            filebeat.yml.bak        
[root@server01 filebeat]# cat filebeat.yml
filebeat.prospectors:
- type: log
  enabled: true
  paths:
    - /docker/service/zs/java/javalog/*.log
  tags: ["java"]

- type: log
  enabled: true
  paths:
    - /docker/service/zs/nginx/log/*.log
  tags: ["nginx"]

- type: log
  enabled: true
  paths:
    - /docker/service/zs/redis/log/*.log
  tags: ["redis"]

filebeat.config.modules:
  path: ${path.config}/modules.d/*.yml
  reload.enabled: false

setup.template.settings:
  index.number_of_shards: 3

setup.kibana:
  host: "192.168.1.220:5601"

output.logstash:
  hosts: ["192.168.1.220:5044"]
[root@server01 filebeat]# 
复制代码
复制代码
filebeat.prospectors:
# 指定收集的日志路径
- type: log
  enabled: true
  paths:
# 指定路径
    - /docker/service/zs/java/javalog/*.log
  tags: ["java"]

# 指定收集的日志路径
- type: log
  enabled: true
  paths:
# 指定路径
    - /docker/service/zs/nginx/log/*.log
# 自定义名称
  tags: ["nginx"]

# 指定收集的日志路径
- type: log
  enabled: true
  paths:
# 指定路径
    - /docker/service/zs/redis/log/*.log
# 自定义名称
  tags: ["redis"]

filebeat.config.modules:
  path: ${path.config}/modules.d/*.yml
  reload.enabled: false

setup.template.settings:
  index.number_of_shards: 3

# 指定kibana主机地址
setup.kibana:
  host: "192.168.1.81:5601"

# 指定logstash地址
output.logstash:
  hosts: ["192.168.0.220:5044"]

文件注释
复制代码

浏览器访问

192.168.0.220:5601

posted @   星火撩原  阅读(395)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示