工作随笔-docker快速安装配置elk/filebeat

非生产环境,经常需要快速搭建一套ELK,选用docker版本最方便,记录以供以后参考

  1. 安装Docker(步骤省略)
  2. 下载elk/filebeat镜像
# 默认获取最新版本
docker pull sebp/elk
docker pull prima/filebeat
  1. 安装配置elk
# 创建存放elk配置以及es数据的目录
mkdir -pv /opt/elk/es_data
# /opt/elk/beats-input.conf 配置内容如下
input {
  beats {
    host => "0.0.0.0"
    port => 5044
  }
}
# 启动 elk,配置挂载出来,es数据挂载出来,端口号适当修改避免冲突
docker run -p 19200:9200 -p 15044:5044 -p 15601:5601 \
     -v /opt/elk/beats-input.conf:/etc/logstash/conf.d/02-beats-input.conf \
     -v /opt/elk/es_data:/var/lib/elasticsearch \
     -it -d --name elk sebp/elk



  1. 在应用服务器安装配置filebeat来采集日志
# 创建filebeat配置目录
mkdir -pv /opt/filebeat/
# 配置/opt/filebeat/filebeat.yml内容如下
filebeat.prospectors:
# 指定文件的输入类型log(默认)或者stdin
- input_type: log
  # 指定要监控的日志,可以指定具体得文件或者目录
  paths:
    - /slogs/*.51ima.lo/*.log
  fields:
    ip: 10.247.121.7
  enabled: true
  document_type: "app"
  tail_files: true
  # 匹配多行放置于一个message
  multiline.pattern: "^[0-9]{4}-[0-9]{2}-[0-9]{2}"
  multiline.negate: true
  multiline.match: after
  # 如果设置为0s,则Filebeat会尽可能快地感知更新(占用的CPU会变高)。默认是10s
  scan_frequency: 10s

output.logstash:
  hosts: ['elk.51ima.lo:15044']
  enabled: true
  index: filebeat
  compression: gzip

processors:
- drop_fields:
    fields: ["beat.hostname", "beat.name", "beat.version"]


# 启动filebeat,配置挂载出来,采集日志slogs挂载为应用日志
docker run -d --name filebeat  \
    --add-host elk.51ima.lo:10.247.121.6 \
    -v /opt/filebeat/filebeat.yml:/filebeat.yml \
    -v /home/finance/Logs:/slogs \
    prima/filebeat:latest
  1. 登陆kibana,配置index,展示日志
# kibana地址
http://10.247.121.6:15601
# 配置index
Management -> stack management -> index patterns -> create index pattern -> input "filebeat-*"  -> next -> save
# 查看日志
discovery页面

你可能感兴趣的:(工作随笔-docker快速安装配置elk/filebeat)