超詳細,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

https://git-scm.com/downloads

初始化

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實戰電子書


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM