概述
本文主要是对[1]中内容的复现
环境
开源组件 | 版本 |
KAFKA | 2.5.0 |
Flink | 1.6.0 |
Zookeeper | 3.6.0 |
ElasticSearch | 7.10.1 |
KIBANA | 7.10.1 |
因为ElasticSearch7的写法似乎不兼容 ES6的,所以代码中依然是ES6的写法。
代码中依然是ElasticSearch6的驱动
这个实验注意,不要追求太新的版本,最新版本Flink1.12的kafka驱动依赖包都还没有开发出来。
流程图
lateLog用来保存侧边流输出的迟到的数据
ElasticSearch准备工作
KIBANA操作 | 讲人话 | 具体命令 |
删除原有的index索引 | 删除原有的数据库 | curl -XDELETE 'Desktop:9201/auditindex' |
新建index | 新建数据库 | curl -XPUT 'http://Desktop:9201/auditindex?pretty' |
创建type的mapping信息 | 新建表格的字段信息 | curl -H "Content-Type: application/json" -XPOST 'http://Desktop:9201/auditindex/audittype/_mapping?include_type_name=true' -d ' { "audittype":{ "properties":{ "area":{"type":"keyword"}, "type":{"type":"keyword"}, "count":{"type":"long"}, "time":{"type":"date","format": "yyyy-MM-dd HH:mm:ss"} } } } ' |
上述命令尤其是最后一个,不要直接粘贴到terminal中运行,而要写入一个bash脚本中再运行
代码与运行流程
https://gitee.com/appleyuchi/Flink_Code/tree/master/flink清洗数据案例/FlinkProj
ElasticSearch查看接收到的数据
http://desktop:9201/auditindex/_search?pretty=true
打开后可以看到一个大大的JSON
KIBANA设置时区
进入http://desktop:5601/app/management/kibana/settings
然后下面的dateFormat设置为
Etc/UTC
然后点击上图右下角的Save Changes
KIBANA可视化
可视化效果如下:
注意
[1]中的设置是area,这里复现的用的是_id
因为KIBANA操作的时候没有找到area,只有area.keyword
版本差异,暂时无法解决。
本实验相关的JPS进程
106851 TaskManagerRunner
85543 NailgunRunner
84330 ZooKeeperMain
81133 NameNode
87055 Kafka
106575 StandaloneSessionClusterEntrypoint
82193 NodeManager
81617 SecondaryNameNode
38320 RemoteMavenServer
81968 ResourceManager
36945 Main
83639 Elasticsearch
81078 QuorumPeerMain
89016 Launcher
89019 DataReport
126490 Jps
81341 DataNode
87391 kafkaProducerDataReport