超详细,Windows系统搭建Flink官方练习环境

如何快速的投入到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-started

大概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实战电子书

超详细,Windows系统搭建Flink官方练习环境的更多相关文章
- 史上最详细Windows版本搭建安装React Native环境配置 转载,比官网的靠谱亲测可用
史上最详细Windows版本搭建安装React Native环境配置 2016/01/29 | React Native技术文章 | Sky丶清| 95条评论 | 33530 views ...
- 史上最详细Windows版本搭建安装React Native环境配置
说在前面的话: 感谢同事金晓冰倾情奉献本环境搭建教程 之前我们已经讲解了React Native的OS X系统的环境搭建以及配置,鉴于各大群里有很多人反应在Windows环境搭建出现各种问题,今天就特 ...
- react-native学习笔记--史上最详细Windows版本搭建安装React Native环境配置
参考:http://www.lcode.org/react-native/ React native中文网:http://reactnative.cn/docs/0.23/android-setup. ...
- 在windows系统搭建并运行一个Flutter项目
搭建Flutter之前需要已经安装好相应的Flutter开发环境,如果没安装好相应环境的可以查看在windows系统搭建Flutter开发环境 搭建Flutter项目可以通过命令行搭建,或者通过and ...
- 史上最全Windows版本搭建安装React Native环境配置
史上最全Windows版本搭建安装React Native环境配置 配置过React Native 环境的都知道,在Windows React Native环境配置有很多坑要跳,为了帮助新手快速无误的 ...
- Windows下搭建objective C开发环境
摘自:http://blog.csdn.net/zhanghefu/article/details/18320827 最近打算针对iPhone.iPod touch和iPad开发一些应用,所以,需要开 ...
- 「C语言」在Windows平台搭建C语言开发环境的多种方式
新接触C语言,如何在Windows下进行C语言开发环境的搭建值得思考并整理. 以下多种开发方式择一即可(DEV C++无须环境准备). 注:本文知识来源于 Windows 平台搭建C语言集成开发环境 ...
- 在Windows平台搭建C语言开发环境
一.在Windows平台搭建DEV C++集成开发环境 官网 https://sourceforge.net/projects/orwelldevcpp/ 中下载Dev C++运行即可 环境准 ...
- Windows下搭建Spark+Hadoop开发环境
Windows下搭建Spark+Hadoop开发环境需要一些工具支持. 只需要确保您的电脑已装好Java环境,那么就可以开始了. 一. 准备工作 1. 下载Hadoop2.7.1版本(写Spark和H ...
随机推荐
- kubernetes 中安装 heapster 问题
step1: 在官网下载部署文件 https://github.com/kubernetes-retired/heapster/tree/master/deploy/kube-config/influ ...
- Socket 由浅入深,开发一个真正的通信应用
在说socket之前.我们先了解下相关的网络知识: 端口 在Internet上有很多这样的主机,这些主机一般运行了多个服务软件,同时提供几种服务.每种服务都打开一个Socket,并绑定到一个端口上, ...
- java 基本类型包装类
一 基本类型包装类 1.包装类概述 Java中提供了相应的对象来解决实现字符串与基本数据之间转换问题,基本数据类 型对象包装类:java将基本数据类型值封装成了对象. 8种基本类型对应的包装类如下: ...
- C#LeetCode刷题之#706-设计哈希映射(Design HashMap)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/4116 访问. 不使用任何内建的哈希表库设计一个哈希映射 具体地说 ...
- 【期外】(三)Linux下集成开发环境Geany
今天小编发现了一个很好的软件,它的名字就叫做Geany. 这是Linux系统中的开发工具,相当的好用. Linux与windows最大的不同正是不是集成开发环境,所以写起代码来总是用文档写好后,然后再 ...
- 幂次方的四种快速取法(不使用pow函数)
Pow(x, n) 方法一:暴力法 方法二:递归快速幂算法 方法三:迭代快速幂算法 方法四:位运算法 方法一:暴力法 思路 只需模拟将 x 相乘 n 次的过程. 如果 \(n < 0\),我们可 ...
- 谈谈BUG严重级别(severity)管理
在软件工程理论中,BUG严重级别(severity)是用于指示软件质量问题导致的负面影响的程度.但在大部分实际的软件开发组织中,对BUG严重级别(severity)的定义和使用常常充斥着大量的争议和分 ...
- 3.MongoDB恢复探究:为什么oplogReplay参数只设置了日志应用结束时间oplogLimit,而没有设置开始时间?
(一)问题 在使用MySQL数据库binlog日志基于时间点恢复数据库时,我们必须要指定binlog的开始位置和结束位置,而在MongoDB里面,如果使用oplog进行恢复,只有oplogLimit参 ...
- golang并发
1.goroutine goroutine是Go并行设计的核心.goroutine说到底其实就是线程,但是它比线程更小,十几个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现了这些 ...
- qemu-img check命令详解
1.问题现象 生产环境上,对计算节点文件系统修复,导致某些虚机的镜像文件数据丢失,出现异常,最终造成虚机无法启动,查看对应计算节点的nova日志,报如下错误 nova-compute: File &q ...