手把手教你搭建Kafka(带SASL认证)+ELK集群 - 五 Kibana+Filebeat安装

接上一篇

手把手教你搭建Kafka(带SASL认证)+ELK集群 - 四

https://blog.csdn.net/lwlfox/article/details/119803107

部署Kibana

  • 创建kibana账号
    useradd kibana
  • 将kibana-7.14.0-linux-x86_64.tar.gz 文件上传到服务器并解压到/data目录
    tar -zxvf kibana-7.14.0-linux-x86_64.tar.gz -C /data/ 
    chown -R kibana:kibana /data/kibana-7.14.0-linux-x86_64
  • 用以下内容覆盖/data/kibana-7.14.0-linux-x86_64/config/kibana.yml文件,其中elasticsearch-ca.pem是安装elasticsearch时生成的证书文件,直接拷贝到kibana的服务器上
    server.port: 5601
    server.host: "0.0.0.0"
    elasticsearch.hosts: ["https://10.228.82.9:9200","https://10.228.82.232:9200","https://10.228.82.36:9200" ]
    elasticsearch.ssl.certificateAuthorities: [ "config/elasticsearch-ca.pem" ]
    
  • 将kibana安装成为服务, 将以下内容写入文件: /etc/systemd/system/kibana.service
    [Unit]
    Description=kibana
    After=network.target
    
    [Service]
    Type=simple
    User=kibana
    ExecStart=/data/kibana-7.14.0-linux-x86_64/bin/kibana
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target
    
  • 启动kibana
    systemctl daemon-reload && systemctl start kibana

部署Filebeat 

filebeat部署到需要采集日志的服务器上

  • 创建filebeat 用户
    useradd filebeat
  • 将文件filebeat-7.14.0-linux-x86_64.tar.gz上传到服务器并解压到/data/目录
    tar -zxvf filebeat-7.14.0-linux-x86_64.tar.gz -C /data/
    chown -R filebeat:filebeat /data/filebeat-7.14.0-linux-x86_64
  • 将以下内容写入文件: /data/filebeat-7.14.0-linux-x86_64/filebeat.yml ,其中的inputs部分,根据实际的业务日志进行调整,outputs部分是输出到kafka中
    filebeat.inputs:
    - type: log
      enabled: true
      paths:
        - /data/service/open/open-api/logs/info/*.log
      multiline:  
        pattern: '^\{\"'
        negate: true 
        match: after  
      fields:
        app.name: "openapi"
        log.level: "info"     
      json.keys_under_root: true
      json.add_error_key: true
      json.message_key: message
      json.overwrite_keys: true
    output.kafka:
      enabled: true
      hosts: ["10.228.82.156:9092","10.228.82.214:9092","10.228.82.57:9092"]
      username: "beats"
      password: "123456"
      sasl.mechanism: "SCRAM-SHA-256"
      topic: "Test"
      client_id: "filebeat-node-1"
    
  • 将filebeat安装为服务 , /etc/systemd/system/filebeat.service 内容如下:
    [Unit]
    Description=filebeat
    Wants=network-online.target
    After=network-online.target
    
    [Service]
    User=filebeat
    Group=filebeat
    ExecStart=/data/filebeat-7.14.0-linux-x86_64/filebeat -e -c /data/filebeat-7.14.0-linux-x86_64/filebeat.yml
    Restart=always
    [Install]
    WantedBy=multi-user.target
    
  • 启动filebeat服务
    systemctl daemon-reload && systemctl start filebeat

验证测试 

在kibana中查看filebeat采集的日志文件已经成功的上传到elasticsearch中了

 写在最后

 整体系统部署完成后可以将服务器上的日志文件收录到ES集群中,由于Kafka的存在,可以很好的起到保护后端服务的作用,在日志量猛增的时候也可以平稳的过渡。

整体系统各个组件的参数配置,只进行了必要的设置,需要根据实际的业务情况调整比如JVM相关的,是否开启SSL等。不同系统,不同业务的日志可以通过独立的Topic来进行区分,logstash可以配置多条流水线,大家自由发挥吧。整篇文章为ELK集群的部署起一个抛砖引玉的作用,如果有问题请大家留言反馈。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值