zoukankan      html  css  js  c++  java
  • ELK:使用docker搭建elk平台

    1.安装ElasticSearch

    1.docker pull elasticsearch  //拉取镜像

    2.find /var/lib/docker/overlay2/ -name jvm.options  //找到es启动时的jvm配置

    3.vim /var/lib/docker/overlay2/988da6b3d15ba2cd936752ad4b4f624b45107b34bbb5b2e76f1dc64c4a1dd172/diff/etc/elasticsearch/jvm.options

      说明:es5.0以后默认启动时会使用2G内存,所以会导致启动失败,这里我们修改为512m或者更低

      参考:https://blog.csdn.net/qq_35022052/article/details/81584014

    4.docker run -d -p 9200:9200 -p 9300:9300 --name myelasticsearch -e "discovery.type=single-node"   elasticsearch  //启动es

    ps:当然也可以使用参数限制

    docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name myelasticsearch  elasticsearch

    2.安装Kibana

    1.docker pull kibana  //拉取镜像

    2.docker run -d -p 5601:5601 --name mykibana --link myelasticsearch -e ELASTICSEARCH_URL=tanghu.tk:9200 kibana

      使用link参数,会在kibana容器hosts文件中加入elasticsearch ip地址,这样我们就直接通过定义的name来访问es服务了。

      link后面的参数名是我们刚刚启动es时自定义的名称

    3.安装Logstash

    1.docker pull logstash

    2.新建一个配置文件

    input {
      beats {
        host => "http://tanghu.tk"
        port => "5044"
      }
    }
    filter {
       if [fields][doc_type] == 'order' {
        grok {
                match => { "message" => "%{TIMESTAMP_ISO8601:timestamp} %{LOGLEVEL:level} %{JAVALOGMESSAGE:msg}" }
            }
       }
    
       if [fields][doc_type] == 'customer' { # 这里写两个一样的grok,实际上可能出现多种不同的日志格式,这里做个提示而已,当然如果是相同的格式,这里可以不写的
        grok {
                match => { "message" => "%{TIMESTAMP_ISO8601:timestamp} %{LOGLEVEL:level} %{JAVALOGMESSAGE:msg}" }
            }
       }
    }
    
    output {
      stdout { codec => rubydebug }
      elasticsearch {
            hosts => [ "http://tanghu.tk:9200" ]
            index => "%{[fields][doc_type]}-%{+YYYY.MM.dd}"
        }
    }

    关于logstash的数据来源有多种beats 是自身,通过logback传输到节点上

    还有file直接拉去本地文件,以及redis、es等等

    详见:https://www.elastic.co/guide/en/logstash/current/input-plugins.html

    3.docker run --rm -it --name mylogstash --link myelasticsearch -d -v /myfile/config/logstash.conf:/usr/share/logstash/pipeline/logstash.conf logstash

  • 相关阅读:
    (离线算法 LCA) hdu 2874
    (树形DP) hdu 4118
    (树的重心) poj 1655
    (线性基) bzoj 2115
    (线性基) bzoj 2460
    (边双联通+树直径) hdu 4612
    (拓扑图+DP) poj 3249
    (求割点和除去割点后的联通块数目) poj 1523
    (边双联通) poj 3352
    (DP求最长路) hdu 4607
  • 原文地址:https://www.cnblogs.com/fdzang/p/10407357.html
Copyright © 2011-2022 走看看