zoukankan      html  css  js  c++  java
  • filebeat+elk 在docker下的简单部署和使用

    描述

    本文中主要是filebeat和elk在docker下的部署实践。各个服务之间大概的关系如下

    搭建Elasticsearch服务

    编写配置文件

    拉取镜像elasticsearch:6.62并运行

    docker pull elasticsearch:6.62
    docker run elasticsearchtest -p 9200:9200 elasticsearch:6.62

    搭建kibana服务

    docker pull kibana:6.62
    docker run --name kibana -p 5601:5601 kibana:6.62

    制作logstash镜像

    logstash.conf配置如下

    input {
      beats {
        port => 5044
      }
    }
    
    output {
      elasticsearch {
        hosts => ["192.168.2.29:9200"]
      }
      stdout {
        codec => rubydebug
      }
    }

    logstash.yml配置如下

    xpack.monitoring.elasticsearch.url: http://192.168.2.29:9200

    192.168.2.29是本机IP地址 如果这些服务都是放在同一个network环境中的 可以用network替代

    Dockerfile如下

    From logstash:6.6.2
    COPY logstash.conf  /usr/share/logstash/pipeline/logstash.conf
    COPY logstash.yml  /usr/share/logstash/config/logstash.yml

    制作镜像并运行

    docker build -t logstashtest .
    docker run --name mylogstash -p 5044:5044 logstashtest

    制作filebeat镜像并运行

     filebeat.yml的配置如下

    filebeat.inputs:
    - type: log
      enabled: true
      paths:
        - /usr/share/filebeat/logs/*.log
    
    #============================= 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
    
    output.logstash:
      # The Logstash hosts
        hosts: ["192.168.2.29:5044"]

    Dockerfile如下

    From store/elastic/filebeat:6.6.2
    COPY filebeat.yml /usr/share/filebeat/filebeat.yml
    USER root
    RUN chown root:filebeat /usr/share/filebeat/filebeat.yml
    RUN filebeat modules enable logstash

    制作镜像并运行

    docker build -t filebeattest .
    docker run --name filebeat -v /e/log/:/user/share/filebeat/logs/ filebeattest

    挂在卷在windows和linux下会有所区别。完成这一步所有的服务就已经搭配完成 ,然后再e:/logs文件下添加一个日志文件。

    查看logstash的日志

     docker logs -f -t --tail 1000 mylogstash

    显示的日志如下

    在kibana中查看日志

     

    第一次进入时需要创建索引,如果在Elasticsearch 中定义了index,就使用该index,否则logstash-* 来命名index,用来做index匹配

    --------行千里路,看万卷书
  • 相关阅读:
    leetcode--95. Unique Binary Search Trees II
    leetcode--96. Unique Binary Search Trees
    leetcode分类总结
    leetcode-115. Distinct Subsequences
    tcpdump安装配置及抓包分析
    dp经典案例
    tree的各种问题
    大数的阶乘算法
    由mmap引发的SIGBUS
    win10系统下如何查看端口被哪个进程占用
  • 原文地址:https://www.cnblogs.com/galen-huang/p/10669208.html
Copyright © 2011-2022 走看看