如何快速的投入到Flink的学习当中,很多人在搭建环境过程中浪费了太多的时间。一套一劳永逸的本机Flink开发环境可以让我们快速的投入到Flink的学习中去,将精力用在Flink的原理,实战。这也对于工作和面试有着巨大帮助。
本文将利用Flink的官方练习环境,在本地Windows系统中快速的搭建Flink环境,并详细的记录整个搭建过程。
文中所有的安装包可以在后台回复 “flink0907” 获取
Flink的环境搭建需要一定的时间,有多种方法可以在各种环境中部署和操作Apache Flink。不管这种多样性如何,Flink群集的基本组成都相同,并且适用类似的操作原理。
如何快速的搭建一套Flink与Kafka的本地环境,供我们开发学习使用呢?
Flink官网提供了一个环境,在这个环境中可以学习如何管理和运行Flink Jobs。可以学习如何部署和监视应用程序,体验Flink如何从作业失败中恢复,以及执行日常操作任务,例如升级和缩放。
Flink官方提供了一套学习环境,本文将详细介绍这套环境的搭建与使用过程。
此环境由一个Flink 集群和一个Kafka群集组成。
Flink群集始终由一个Flink Master 和一个或多个 Flink TaskManager 组成。Flink Master负责处理作业提交,作业的监督以及资源管理。Flink TaskManager是工作进程,负责执行构成Flink作业的实际任务执行。
启动时,名为Flink Event Count的Flink作业将提交给JobManager。此外,还将创建两个Kafka Topics 输入和输出。
git
初始化
git config user.name "jack"(配置用户名)
(查看用户名命令git config user.name)
git config user.email "8888888@qq.com"(配置邮箱)
(查看邮箱命令git config user.email)
docker
首先登陆docker官网,下载相应的docker安装包。
https://www.docker.com/get-st...
大概300多M,耐心等待~
首先,在本机安装git环境。
下载flink-playgrounds源代码。
git clone --branch release-1.11 https://github.com/apache/flink-playgrounds.git
进行安装
Docker可以帮我们开启Hyper-V
等待安装成功
cd flink-playgrounds/operations-playground
docker-compose build
开始构建环境,需要下载的内容较多,耐心等待~
最终下载成功
启动环境
docker-compose up -d
也需要下载一会~等待启动成功~
查看正在运行的docker容器
docker-compose ps
请注意flink webUI监听的端口,我的为8081
查看管理页面
通过http://localhost:8081访问Flink管理页面
大功告成了~ 下次开机的时候,
cd flink-playgrounds/operations-playground
docker-compose up -d
docker-compose ps
就可以非常方便的开启Flink的研发环境了~
下面列举一些简单的操作。
常见操作
如果需要停止开发环境
docker-compose down -v
查看日志
JobManager日志可以通过添加docker-compose
查看
docker-compose logs -f jobmanager
TaskManager日志也可以
docker-compose logs -f taskmanager
Flink CLi
docker-compose run --no-deps client flink --help
Flink RestAPI
curl localhost:8081/jobs
Kafka 操作命令
//input topic (1000 records/s)
docker-compose exec kafka kafka-console-consumer.sh \
--bootstrap-server localhost:9092 --topic input
//output topic (24 records/min)
docker-compose exec kafka kafka-console-consumer.sh \
--bootstrap-server localhost:9092 --topic output
具体操作
列出正在运行的作业
docker-compose run --no-deps client flink list
观察故障与恢复
1、观察输出
docker-compose exec kafka kafka-console-consumer.sh \
--bootstrap-server localhost:9092 --topic output
2、模拟故障
这里模拟TaskManager进程的丢失
docker-compose kill taskmanager
几秒钟后,JobManager将注意到TaskManager丢失,取消受影响的Job,然后立即重新提交以进行恢复。
3、恢复
docker-compose up -d taskmanager
重新启动TaskManager后,它将重新连接到JobManager
更多Flink,Kafka,Spark等相关技术博文,科技资讯,欢迎关注实时流式计算 公众号后台回复 “电子书” 下载300页Flink实战电子书
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。