- 1 环境
- 2 拉取镜像
- 3 创建自定义网络
- 4 启动容器
- 4.1 启动elasticsearch
- 5 kibana配置
- 5.1 配置kibana.yml文件
- 5.2 kibana启动
- 5.3 修改为中文
- 6 logstash配置
- 6.1 logstash.yml文件
- 6.2 my.conf文件
- 6.3 logstash启动
- 7 filebeat配置
- 7.1 创建测试目录
- 7.2 配置filebeat.yml文件
- 8 结语
CentOS Linux release 8.3.2011
2 拉取镜像docker pull elasticsearch:7.16.1 docker pull kibana:7.16.1 docker pull logstash:7.16.1 docker pull elastic/filebeat:7.16.13 创建自定义网络
docker network create somenetwork4 启动容器 4.1 启动elasticsearch
命令:
docker run -d --name elasticsearch --net somenetwork -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.16.15 kibana配置 5.1 配置kibana.yml文件
- docker exec -it 02dd46d2e7f9(镜像id) /bin/bash
- cd config/
- vi kibana.yml
命令:
docker run -d --name kibana --net somenetwork -p 5601:5601 kibana:7.16.1
- docker exec -it 02dd46d2e7f9(镜像id) /bin/bash
- cd config/
- vi kibana.yml
- 添加:i18n.locale: “zh-CN”
存放位置:自定义目录/mydata/docker/logstash/
配置内容:
http.host: "0.0.0.0" #配置elasticsearch集群地址 xpack.monitoring.elasticsearch.hosts: [ "http://192.168.226.132:9200" ] #允许监控 xpack.monitoring.enabled: true #目录为挂载目录,启动命令指定的 path.config: /usr/share/logstash/conf.d/my.conf6.2 my.conf文件
存放位置:自定义目录/mydata/docker/logstash/conf.d
配置内容:
input { beats { port => 5044 client_inactivity_timeout => 36000 } } output { elasticsearch { hosts => ["http://192.168.226.132:9200"] index => "myindex-%{+YYYY.MM}" } }6.3 logstash启动
docker run -it -d -p 5044:5044 --name logstash --net somenetwork -v /mydata/docker/logstash/logstash.yml:/usr/share/logstash/config/logstash.yml -v /mydata/docker/logstash/conf.d:/usr/share/logstash/conf.d logstash:7.16.17 filebeat配置 7.1 创建测试目录
项目日志目录:/var/log/logapp
放入日志文件:xx.log
存放位置:自定义目录/mydata/docker/filebeat
配置内容:
# 定义info1应用的input类型、以及存放的具体路径 filebeat.inputs: - type: log enabled: true paths: - /var/log/logapp/*.log tags: ["logapp"] fields: index: logapp #============================= Filebeat modules =============================== filebeat.config.modules: # Glob pattern for configuration loading path: ${path.config}/modules.d/*.yml # Set to true to enable config reloading reload.enabled: true # ============================== logstash ===================================== output.logstash: hosts: ["192.168.226.132:5044"] #192.168.226.132为logstash安装的服务器ip enabled: true #============================== Kibana ===================================== setup.kibana: host: "192.168.226.132:5601" #============================== elasticsearch ===================================== #output.elasticsearch: # hosts: ["192.168.226.132:9200"] # enabled: true
7.3 filebeat启动
启动命令:
docker run -d -u root --name filebeat --net somenetwork -v /var/log/logapp:/var/log/logapp:rw -v /mydata/docker/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro elastic/filebeat:7.16.1
7.4 测试
myindex-2021.12索引是 my.conf里index属性那里配置的
8 结语配置logstash.yml的path.config一定要注意其目录,之前我就是因为这个走了很多弯路,在网上看其他大佬的都没发现到这个问题
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)