
架构图分别演示
第一层:数据采集层
第二层:消息队列层
第三层:数据分析层
第四层:数据持久化存储
第五层:数据查询,展示层
| 主机名 | ip地址 | 所属集群 | 安装软件包 |
|---|---|---|---|
| filebead | 20.0.0.55 | 数据层级层 | filebead+apache |
| kafka1 | 20.0.0.56 | kafka+zookeeper集群 | kafka+zookeeper |
| kafka2 | 20.0.0.57 | kafka+zookeeper集群 | kafka+zookeeper |
| kafka3 | 20.0.0.58 | kafka+zookeeper集群 | kafka+zookeeper |
| logstash | 20.0.0.59 | 数据处理层 | logstash |
| node1 | 20.0.0.60 | ES集群 | Eslasticsearch+node+phantomis+head |
| node2 | 20.0.0.61 | ES集群+kibana展示 | Elasticsearch+node+phantomis+head+kibana |
关闭防火墙,核心防护,修改主机名

安装环境,解压软件

修改配置文件

创建数据目录、日志目录

设置三台机器的myid

设置三台机器的执行脚本

将三台机器的启动脚本放入到系统管理中

分别启动三台启动的zookeeper



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

备份配置文件

修改配置文件

20.0.0.56的配置文件

20.0.0.57配置文件

将kafka添加到环境变量中

配置kafka 的启动脚本

设置开机自动

分别启动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
创建topic

发布消息、消费消息

关闭防火墙、修改主机名
安装httpd服务,并启动

安装filebead,并剪切到指定目录

修改配置文件

启动filebeat服务

安装JDK

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

修改配置文件



查看配置文件,创建数据目录

安装运行环境

编译

安装

上传压缩包解压

将执行文件加入到环境变量

上传压缩包,解压

安装




安装java环境

安装logstash

创建软链接

创建执行对接文件

启动服务


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