当前位置: 首页 > news >正文

搭建ELK+Filebead+zookeeper+kafka实验

文章目录

  • 一、ELK+Filebeat+kafka+zookeeper架构
  • 二、搭建ELFK+zookeeper+kafka
    • 1、安装kafka+zookeeper集群(20.0.0.55、20.0.0.56、20.0.0.57)
      • 2、安装zookeeper服务
      • 3、安装kafka服务
        • 3.1 kafka命令行操作
        • 3.2 创建topic进行测试(任意主机上均可操作)
    • 3、配置数据采集层filebead(20.0.0.58)
    • 4、部署ES服务(20.0.0.60、20.0.0.61)
      • 4.1 安装ES服务
      • 4.2 安装node插件
      • 4.3 安装phantomjs插件
      • 4.4 安装ES-head
      • 4.5 修改ES配置文件
      • 4.6 启动ES服务
      • 4.7 启动ES-head服务
    • 5、部署logstash(20.0.0.59)
    • 6、使用ES-head接口访问
    • 7、安装kibana指向可视化

一、ELK+Filebeat+kafka+zookeeper架构

在这里插入图片描述

架构图分别演示

第一层:数据采集层

  • 数据采集层位于最左边的业务服务集群上,在每个业务服务器上面安装了filebead做日志收集,然后把采集到的原始日志发送到kafka+zookeeper集群上。

第二层:消息队列层

  • 原始日志发送到kafka+zookeeper集群上后,会进行集中存储,此时filebead是消息的生产者,存储的消息可以随时被消费。

第三层:数据分析层

  • logstash作为消费者,回去kafka+zookeeper集群节点时实拉去原始日志,然后将获取到的原始日志根据规则进行分析、格式化处理,最后将格式化的日志转发至Elasticsearch集群中。

第四层:数据持久化存储

  • Elasticsearch集群接收到logstash发送过来的数据后,执行写入磁盘,建立索引等操作,最后将结构化数据存储到Elasticsearch集群上。

第五层:数据查询,展示层

  • kibana是一个可视化的数据展示平台,当有数据检索请求时,它从Elasticsearch集群上读取数据,然后进行可视化出图和多维度分析.

二、搭建ELFK+zookeeper+kafka

主机名ip地址所属集群安装软件包
filebead20.0.0.55数据层级层filebead+apache
kafka120.0.0.56kafka+zookeeper集群kafka+zookeeper
kafka220.0.0.57kafka+zookeeper集群kafka+zookeeper
kafka320.0.0.58kafka+zookeeper集群kafka+zookeeper
logstash20.0.0.59数据处理层logstash
node120.0.0.60ES集群Eslasticsearch+node+phantomis+head
node220.0.0.61ES集群+kibana展示Elasticsearch+node+phantomis+head+kibana

1、安装kafka+zookeeper集群(20.0.0.55、20.0.0.56、20.0.0.57)

2、安装zookeeper服务

关闭防火墙,核心防护,修改主机名

在这里插入图片描述

安装环境,解压软件
在这里插入图片描述

修改配置文件
在这里插入图片描述

创建数据目录、日志目录
在这里插入图片描述

设置三台机器的myid

在这里插入图片描述

设置三台机器的执行脚本

在这里插入图片描述

将三台机器的启动脚本放入到系统管理中
在这里插入图片描述

分别启动三台启动的zookeeper
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、安装kafka服务

将三台机器都上传安装包,并解压到指定目录

在这里插入图片描述

备份配置文件
在这里插入图片描述

修改配置文件

  • 20.0.0.55主机的配置文件

在这里插入图片描述

  • 20.0.0.56的配置文件
    在这里插入图片描述

  • 20.0.0.57配置文件
    在这里插入图片描述

将kafka添加到环境变量中

在这里插入图片描述

配置kafka 的启动脚本

在这里插入图片描述

设置开机自动
在这里插入图片描述

分别启动kafka

在这里插入图片描述

3.1 kafka命令行操作

创建topic

kafka-topics.sh --create --zookeeper 20.0.0.55:2181,20.0.0.56:2181,20.0.0.57:2181 --replication-factor 2 --partitions 3 --topic test

#--zookeeper:定义zookeeper集群服务器地址,如果有多个ip以逗号分隔。
#--replication-factor:定义分区副本,1代表但副本,建议为2
#--partitions: 定义分区数
#--topic :定义topic名称

查看当前服务器中的所有topic

kafka-topics.sh --list --zookeeper 20.0.0.55:2181,20.0.0.56:2181,20.0.0.57:2181

查看某个topic的详情

kafka-topics.sh --describe --zookeeper 20.0.0.55:2181,20.0.0.56:2181,20.0.0.57:2181

发布消息

kafka-console-producer.sh --broker-list 20.0.0.55:9092,20.0.0.56:9092,20.0.0.57:9092 --topic test

消费消息

kafka-console-consumer.sh --bootstrap-server 20.0.0.55:9092,20.0.0.56:9092,20.0.0.57:9092 --topic test --from-beginning

#--from-beginning:会把主题中以往所有的数据都读取出来

修改分区数

kafka-topics.sh --zookeeper 20.0.0.55:2181,20.0.0.56:2181,20.0.0.57:2181 --alter --topic test --partitions 6

删除topic

kafka-topics.sh --delete --zookeeper 20.0.0.55:2181,20.0.0.56:2181,20.0.0.57:2181 --topic test

3.2 创建topic进行测试(任意主机上均可操作)

创建topic
在这里插入图片描述

发布消息、消费消息

在这里插入图片描述

3、配置数据采集层filebead(20.0.0.58)

关闭防火墙、修改主机名

安装httpd服务,并启动

在这里插入图片描述

安装filebead,并剪切到指定目录
在这里插入图片描述

修改配置文件
在这里插入图片描述

启动filebeat服务
在这里插入图片描述

4、部署ES服务(20.0.0.60、20.0.0.61)

安装JDK
在这里插入图片描述

4.1 安装ES服务

配置本地解析,上传安装包安装并启动

在这里插入图片描述

修改配置文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查看配置文件,创建数据目录
在这里插入图片描述

4.2 安装node插件

安装运行环境
在这里插入图片描述

编译
在这里插入图片描述

安装
在这里插入图片描述

4.3 安装phantomjs插件

上传压缩包解压
在这里插入图片描述

将执行文件加入到环境变量
在这里插入图片描述

4.4 安装ES-head

上传压缩包,解压
在这里插入图片描述

安装
在这里插入图片描述

4.5 修改ES配置文件

在这里插入图片描述

4.6 启动ES服务

在这里插入图片描述

4.7 启动ES-head服务

在这里插入图片描述

5、部署logstash(20.0.0.59)

安装java环境
在这里插入图片描述

安装logstash
在这里插入图片描述

创建软链接
在这里插入图片描述

创建执行对接文件
在这里插入图片描述

启动服务
在这里插入图片描述

6、使用ES-head接口访问

在这里插入图片描述

7、安装kibana指向可视化

这边不演示了,参考前面的博客

相关文章:

  • DES、AES、IDEA —— 一文搞懂分组密码
  • 【贪心 || 动态规划】最长对数链
  • Java-基础语法
  • java医药配送服务系统ssm447
  • golang设计模式——创建模式
  • Java8中的函数式接口(你知道几个?)
  • JavaScript-jQuery
  • 十分钟学会动态路由
  • Docker高级-2.DockerFile与微服务打包案例
  • Django--ORM 常用字段及属性介绍
  • y122.第七章 服务网格与治理-Istio从入门到精通 -- 流量治理实战进阶(八)
  • 【Mysql】Mysql视图、触发器、存储过程、游标
  • 0902(045天 集合框架09 总结点 问)
  • 算法学习-贪心问题(持续更新中)
  • SpringBoot+Shiro+JWT实现授权
  • 2017前端实习生面试总结
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • CSS选择器——伪元素选择器之处理父元素高度及外边距溢出
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • Elasticsearch 参考指南(升级前重新索引)
  • gf框架之分页模块(五) - 自定义分页
  • jquery cookie
  • Linux中的硬链接与软链接
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • Spark学习笔记之相关记录
  • SpiderData 2019年2月25日 DApp数据排行榜
  • tensorflow学习笔记3——MNIST应用篇
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • Zsh 开发指南(第十四篇 文件读写)
  • 多线程事务回滚
  • 分类模型——Logistics Regression
  • 容器化应用: 在阿里云搭建多节点 Openshift 集群
  • 如何学习JavaEE,项目又该如何做?
  • 如何用vue打造一个移动端音乐播放器
  • NLPIR智能语义技术让大数据挖掘更简单
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • #HarmonyOS:Web组件的使用
  • #pragma 指令
  • (C)一些题4
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (Matlab)遗传算法优化的BP神经网络实现回归预测
  • (pytorch进阶之路)扩散概率模型
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)基于ssm的模具配件账单管理系统 毕业设计 081848
  • (每日持续更新)jdk api之FileFilter基础、应用、实战
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (学习日记)2024.04.10:UCOSIII第三十八节:事件实验
  • (一)Thymeleaf用法——Thymeleaf简介
  • .NET 4.0中的泛型协变和反变
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .net core 控制台应用程序读取配置文件app.config
  • .net core使用ef 6
  • .NET NPOI导出Excel详解