Elk接入Kafka数据线上实战


此篇文章记录个人使用大数据开源框架ELk,实际应用于公司日志处理项目

概念详细介绍

logstash

logstash是数据收集系统。主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。可以部署成C/S架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。

elasticsearch

elasticsearch是数据搜索系统。提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

kibana

kibana是数据展示系统。为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助汇总、分析和搜索重要数据日志。

线上部署配置

依赖环境

  1. 系统:centos 6.9
  2. 软件版本:elk-6.4.2

单节点服务配置

  1. elasticsearch部署
  • 新建elk用户:sudo useradd elk
  • 修改 elasticsearch/config/elasticsearch.yml 文件,添加如下内容
    在这里插入图片描述
  • 启动服务:su elk ./bin/elasticsearch -d
  • 服务测试:浏览器输入 http://ip:9200,成功进入则安装成功
  1. logstash部署
  • 添加配置文件,将kafka数据作为输入源:vi logstash/config/ kafka_to_es.conf
    在这里插入图片描述
  • 启动服务:./logstash -f …/config/kafka_to_es.conf
  1. kibina部署
  • 修改 kibana/config/kibana 文件,添加如下内容
    在这里插入图片描述
  • 启动服务:./kibana
  • 服务测试:浏览器输入 http://ip:5601,成功进入则安装成功
  1. 上线使用
  • 通过kafka producer 生产进指定topic的消息,会实时的展示在kibana上提供查看分析

多节点服务配置

  1. 服务部署节点
  2. 上线使用

问题和错误

已解决

  1. ERROR: bootstrap checks failed

max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]

切换到root用户,编辑limits.conf 添加类似如下内容:
在这里插入图片描述

  1. max_map_count不够大

max virtual memory areas vm.max_map_count [65536] likely too low, increase to at least [262144]

echo 262144 >> /proc/sys/vm/max_map_count
重定向修改文件的值

未解决

  1. 暂时没有

猜你喜欢

转载自blog.csdn.net/qq_35521501/article/details/83041643