基于kafka、logstash、elasticsearch车辆轨迹存储查询方案

在这里插入图片描述

一、搭建zookeeper:
1,zookeeper镜像采用wurstmeister/zookeeper:latest拉取zookeeper镜像
docker pull wurstmeister/zookeeper
在这里插入图片描述

2,启动zookeeper
docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper
在这里插入图片描述

3,查看zookeeper启动日志
docker logs -f zookeeper
在这里插入图片描述

4,查看zookeeper安装路径
docker exec zookeeper pwd
在这里插入图片描述

5,查看zookeeper运行状态
docker exec zookeeper bin/zkServer.sh status
在这里插入图片描述

6,zookeeper搭建完成
二、搭建kafka:
1,kafka镜像采用wurstmeister/kafka:latest 拉取kafka镜像
docker pull wurstmeister/kafka
在这里插入图片描述

2,启动kafka
docker run -d --name kafka
–env KAFKA_ADVERTISED_HOST_NAME=localhost
–env KAFKA_ZOOKEEPER_CONNECT=172.21.0.11:2181
–env KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.21.0.11:9092
–env KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092
–env KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"
–net=host wurstmeister/kafka
在这里插入图片描述

3,查看kafka启动日志
docker logs -f kafka
在这里插入图片描述

4,查看kafka版本
docker exec kafka find / -name *kafka_* | head -1 | grep -o ‘\kafka[^\n]*’
在这里插入图片描述

5,kafka搭建完成
三、搭建logstash
1,logstash镜像采用logstash:7.9.1拉取logstash镜像
docker pull logstash:7.9.1
在这里插入图片描述2,启动logstash
docker run -d --restart=always --privileged=true
-p 5044:5044 --name logstash
-v /root/elk/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml
-v /data/elk/logstash/conf.d/:/usr/share/logstash/conf.d/
logstash:7.9.1
在这里插入图片描述3,查看启动日志
docker exec -it logstash /bin/bash
4,进入容器
docker exec -it -u root logstash /bin/bash
5,找到配置文件修改
在这里插入图片描述input{
kafka{
bootstrap_servers => “172.21.0.11:9092” #kafka地址
auto_offset_reset => “earliest” #消息读取位置
topics => [“oracle_test”] #kafka中topic名称,记得创建该topic
group_id => “logstash” #默认为“logstash”
codec => “json” #与Shipper端output配置项一致
consumer_threads => 3 #消费的线程数
max_poll_records => “2000”
decorate_events => true #在输出消息的时候回输出自身的信息,包括:消费消息的大小、topic来源以及consumer的group信息。
}
}
output {
kafka {
topic_id => “elk”
bootstrap_servers => “172.21.0.11:9092”
}
elasticsearch {
user => elastic
password => zOhEjICix5EQBw1Jaxlkcw9i
hosts => [“https://aws.found.io:9243”]
index => “logstash-%{+YYYY.MM.dd}”
}
}

6.重启logstash
docker restart logstash
四、搭建elasticsearch
在这里插入图片描述本次elasticsearch采用的是云端官方的服务elasticsearch cloud集群配置是三个节点
节点1:4 GB RAM
节点2:1 GB RAM
节点3:4 GB RAM

1,集群环境健康检查
在这里插入图片描述2,查询全部索引
在这里插入图片描述五、模拟业务环境
1,进入kafka
docker exec -it kafka /bin/bash
2,打开生产者console
./kafka-console-producer.sh --broker-list 172.21.0.11:9092 --topic oracle_test
3,测试数据是从生产库上下载了一会定位数据
在这里插入图片描述4,logstash的out我配置了个两个通道一个是到elasticsearch,一个是到kafka的另一个topic
查询测试topic是否接受到数据
docker exec kafka kafka-console-consumer.sh --bootstrap-server 172.21.0.11:9092 --from-beginning --topic elk
在这里插入图片描述
5,查看elasticsearch是否接受到数据
在这里插入图片描述在这里插入图片描述
数据都已经上来本次模拟了2万条数据 一会测试下1000千万数据下的查询
六、后续
整体的业务流程是定位数据采集程序采集进入围栏内的车辆定位数据实时传递至kafka集群通过管道进入elasticsearch然后供实时查询分析

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值