zoukankan      html  css  js  c++  java
  • ELK+Kafka部署指南 (二)

    四、安装logstash

    安装启动

    步骤1、解压安装包、修改配置####

    解压安装包:tar -zxvf logstash-7.0.0.tar.gz

    进入到解压后的目录:cd logstash-7.0.0

    进入到config文件夹:cd config

    由于logstash的配置文件在启动的时候指定,编辑创建配置文件:vi springboot_kafka.conf

    开发环境修改后的配置如下:

    springboot_kafka.conf

    input {
    kafka{
    bootstrap_servers => ["172.18.5.47:9092"]
    #消费者分组
    group_id => "logstash"
    #数组类型,可配置多个topic
    topics => ["kafka-log"]
    #所有插件通用属性,尤其在input里面配置多个数据源时很有用
    type => "kafka"
    consumer_threads => 5
    decorate_events => false
    codec => "json"
    }
    }
    output {
    elasticsearch {
    # ES地址
    hosts => ["http://172.18.5.47:9200"]
    # document_type => "applog"
    # template_name => "app-biz-*"
    # template_overwrite => true
    # manage_template => true
    # 指定索引名字,logType为log4j2.xml指定的应用名称
    index => "wojiacloud-%{logType}-%{+YYYY.MM.dd}"
    codec => json
    }
    # stdout {}
    }
    

    步骤2、启动logstash####

    启动logstash:bin/logstash -f config/springboot_kafka.conf 1>/dev/null 2>&1 &

    出现下图中日志则说明启动成功了

    logstash配置多入多出并互相隔离,主要需要解决如下两个问题:####

    1、如何加载多个配置文件?
    普通启动方式:nohup bin/logstash -f /etc/logstash/conf.d/logstash.conf &

    多配置文件启动方式:nohup bin/logstash -f /etc/logstash/conf.d &

    注意:/etc/logstash/conf.d为目录,将加载该目录下所有配置文件;不要使用/etc/logstash/conf.d/*.conf

    2、问题:配置不当,各输入输出会存在交叉,如何隔离各输入输出?
    解决办法:利用type,对输入输出进行筛选,配置参考:

    logstash-47-demo.conf

    
    input {
    kafka{
    bootstrap_servers => ["172.18.5.47:9092"]
    #消费者分组
    group_id => "logstashDemo"
    #当Input有多个输入源的时候,需要配置client_id并且必须唯一
    client_id => "logstash-demo"
    #数组类型,可配置多个topic
    topics => ["demo-log"]
    #从最新的偏移量开始消费
    auto_offset_reset => "latest"
    #所有插件通用属性,尤其在input里面配置多个数据源时很有用
    type => "demo"
    consumer_threads => 2
    decorate_events => false
    codec => "json"
    }
    }
    output {
    if [type] == "demo" {
    elasticsearch {
    # ES地址
    hosts => ["http://172.18.5.47:9200"]
    # document_type => "applog" 
    # template_name => "app-biz-*"
    # template_overwrite => true
    # manage_template => true
    
    # 指定索引名字,logType为log4j2.xml指定的应用名称
    index => "demo-log-%{logType}"
    #
    codec => json
    }
    }
    }
    

    logstash-47-ownercloud.conf

    input {
    kafka{
    bootstrap_servers => ["172.18.5.47:9092"]
    #消费者分组
    group_id => "logstash"
    #当Input有多个输入源的时候,需要配置client_id并且必须唯一
    client_id => "logstash-ownercloud"
    #数组类型,可配置多个topic
    topics => ["kafka-log"]
    #从最新的偏移量开始消费
    auto_offset_reset => "latest"
    #所有插件通用属性,尤其在input里面配置多个数据源时很有用
    type => "ownercloud"
    consumer_threads => 2
    decorate_events => false
    codec => "json"
    }
    }
    output {
    # 判断进行隔离
    if [type] == "ownercloud" {
    elasticsearch {
    # ES地址
    hosts => ["http://172.18.5.47:9200"]
    # document_type => "applog" 
    # template_name => "app-biz-*"
    # template_overwrite => true
    # manage_template => true
    
    # 指定索引名字,logType为log4j2.xml指定的应用名称
    index => "wojiacloud-%{logType}"
    #
    codec => json
    }
    }
    }
    
  • 相关阅读:
    文章预告的自我挖坑系列——时尚与深度学习
    文章预告的自我挖坑系列——D3.js 系列之星光闪烁
    时尚与深度学习系列:Fashion forward: Forecasting visual style in fashion
    D3.JS V4 绘制中国地图
    mysql 数据库电脑间迁移
    (QA-LSTM)自然语言处理:智能问答 IBM 保险QA QA-LSTM 实现笔记.md
    博客园里输入latex公式
    理解pytorch中的softmax中的dim参数
    numpy中的广播
    美团餐饮娱乐知识图谱——美团大脑揭秘
  • 原文地址:https://www.cnblogs.com/gloria-liu/p/12201965.html
Copyright © 2011-2022 走看看