基于Docker部署的EFK日志收集系统

EFK搭建手册

es-7.8.0

# 1、下载 elasticsearch:7.8.0 镜像
docker pull elasticsearch:7.8.0
##2、启动容器
docker run -d -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -e "discovery.type=single-node" --name es docker.io/elasticsearch:7.8.0
# 3、拷贝es文件到宿主机,然后删掉容器
docker cp es:/usr/share/elasticsearch .
mv elasticsearch es
docker stop es && docker rm es
# 4、重新创建容器并启动 内存限制
docker run -d -p 9200:9200 -p 9300:9300 --name es -e ES_JAVA_OPTS="-Xms1024m -Xmx1024m" -e "discovery.type=single-node" -v /data/efk/elasticsearch:/usr/share/elasticsearch  --privileged=true docker.io/elasticsearch:7.8.0 
#5、设置用户名密码(可选)
参考链接:https://cloud.tencent.com/developer/article/1537440

kibana-7.8.0

#1、下载 kibana:7.8.0 版本镜像
sudo docker pull kibana:7.8.0
#2、启动容器
docker run -d -p 5601:5601  -e ELASTICSEARCH_URL=http://127.0.0.1:9200 --name kibana docker.io/kibana:7.8.0
#3、拷贝容器到宿主机当前目录
docker cp kibana:/usr/share/kibana .
#4、停止并删除容器
docker stop kibana && docker rm kibana
#5、重启容器
docker run  -d  -p 5601:5601 -e ELASTICSEARCH_URL=http://172.17.0.2:9200 -v /data/kibana:/usr/share/kibana  --name kibana  --privileged=true docker.io/kibana:7.8.0
#6、修改配置文件 hosts 为es容器的ip和端口
elasticsearch.hosts: [ "http://172.39.0.8:9200" ]
monitoring.ui.container.elasticsearch.enabled: true
elasticsearch.username: "用户名"
elasticsearch.password: "密码"
#7、重启

filebeat-7.8.0

#1、下载 filebeat:7.8. 镜像
sudo docker pull elastic/filebeat:7.8.0
#2、启动容器
sudo docker run -d --name filebeat --user=root   elastic/filebeat:7.8.0
#3、拷贝容器文件到宿主机
sudo docker cp filebeat:/usr/share/filebeat/filebeat.yml  /data/efk/filebeat/
#4、删除容器
docker stop filebeat && docker rm filebeat
#5、重新创建并启动容器
sudo docker run -d  --user=root --name filebeat  -v /data/efk/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml  -v /data/efk/filebeat/logs:/usr/share/filebeat/logs   -v /data/tomcat_tkzf/logs:/data/tomcat_tkzf/logs   elastic/filebeat:7.8.0
## 我本次是收集宿主机 /data/tomcat_tkzf/logs 目录下的日志文件 所以需要将宿主机挂在到容器内部 ,--user=root 以root用户启动 防止没有权限读取配置文件或者日志文件
#6、修改filebeat.yml配置文件
filebeat.config:
  modules:
    path: ${path.config}/modules.d/*.yml
    reload.enabled: false
filebeat.inputs:
  - type: log
    paths:
      - /data/tomcat_tkzf/logs/winnjybpay.log
setup.ilm.enabled: false
setup.template.name: "tkzf"
setup.template.pattern: "tkzf-*"
output.elasticsearch:
  hosts: ["*******:19200"]
  index: "tkzf-%{+yyyy.MM.dd}"
  indices:
    - index: "tkzf-%{+yyyy.MM.dd}"
      when.equals:
        fields.type: "tkzf" 
  protocol: "http"
  username: 'elastic'
  password: 'hEyZOQAUtu0lEMBjW5zT'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值