docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > Docker安装logstash

Docker安装logstash的详细过程

作者:momingliu11

这篇文章主要介绍了Docker安装logstash的详细过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

编辑docker-compose.yml,内容如下:

version: '3'
services:
  logstash02:
    image: logstash:6.4.1
    hostname: logstash02
    container_name: logstash02
    ports:
      - "5045:5045" #设置端口
    environment:
      XPACK_MONITORING_ENABLED: "false"
      pipeline.batch.size: 10
    volumes:
      - ./logstash/logstash.conf:/usr/share/logstash/pipeline/logstash.conf
    network_mode: "host"
    restart: always

./logstash/logstash.conf文件内容如下:

version: '3'
services:
  logstash02:
    image: logstash:6.4.1
    hostname: logstash02
    container_name: logstash02
    ports:
      - "5045:5045" #设置端口
    environment:
      XPACK_MONITORING_ENABLED: "false"
      pipeline.batch.size: 10
    volumes:
      - ./logstash/logstash.conf:/usr/share/logstash/pipeline/logstash.conf
    network_mode: "host"
    restart: always

然后运行docker-compose up启动logstash容器,在进行logstash测试的时候,

/usr/share/logstash/bin/logstash  -e 'input { stdin{} } output { stdout{ codec => rubydebug }}'

会提示 logstash实例已存在,如果要运行多个logstash实例,则需要通过命令定义path.data,如下:

bin/logstash -f <config_file.conf> --path.data PATH
/usr/share/logstash/bin/logstash --path.data /usr/share/logstash/data02 -e 'input { stdin{} } output { stdout{ codec => rubydebug }}'

输出如下:

输出到ES、文件:

/usr/share/logstash/bin/logstash --path.data /usr/share/logstash/data02  -e 'input { stdin{} } output { elasticsearch {hosts => ["127.0.0.1:9200"] index => "logstashtest_%{+YYYY.MM.dd}" }}'

/usr/share/logstash/bin/logstash -e 'input { stdin{} } output { file { path => "/tmp/test_%{+YYYY.MM.dd}.log"}}'

到此这篇关于Docker安装logstash的文章就介绍到这了,更多相关Docker安装logstash内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文