从零开发flink-02: flink集群standalone部署wordcount

前言

1. 关于

官方文档
https://ci.apache.org/projects/flink/flink-docs-release-1.11/try-flink/local_installation.html
学习视频
https://www.bilibili.com/video/BV197411M7cQ?p=8

2. 说明

本文使用了上面的学习链接,因为版本使用最新的,所以在部署和编码上会有区别,所以踩坑记录下来,本文接上篇文章的wordcount,--> 从零开发flink-01: 编写wordcount

3 部署standalone集群

standalone 是flink自带的集群模式,不依赖hadoop或者k8s,所以方便入门
standalone 需要有masters和workers多台机器进行部署,本文直接使用一台机器,部署master和worker,(多台机器只是在配置文件中进行修改就好)

  • 下载flink-1.11.1-bin-scala_2.11.tgz
flink-1.11.1-bin-scala_2.11.tgz
  • 解压
tar -xzf flink-1.11.1-bin-scala_2.11.tgz
  • 目录
> ls
bin  conf  examples  lib  LICENSE  licenses  log  NOTICE  opt  plugins  README.txt
  • 修改conf/flink-conf.yaml 中的部分参数
  • 参数介绍(本文使用1.11.1 与1.10.1或者1.9.1 有部分参数区别)
jobmanager.rpc.address: localhost
jobmanager.rpc.port: 6123
jobmanager.memory.process.size: 1600m
taskmanager.memory.process.size: 1728m
taskmanager.numberOfTaskSlots: 3
parallelism.default: 1
  • 修改集群master信息(填入master的列表 这里只有一台主机localhost) 编辑masters文件
cat masters
localhost:8081
  • 修改集群workers信息(填入worker的列表 这里只有一台主机localhost)编辑workers文件
    多节点的话就填写多个主机名或者ip地址, 然后将整个flink文件夹上传到其他机器,确保文件夹内容和配置都一样
vim workers
localhost
  • 启动
> ./start-cluster.sh
Starting cluster.
Starting standalonesession daemon on host cowkeys(主机名).
Starting taskexecutor daemon on host cowkeys.
  • 打开nc监听端口8888 (上篇文章)
nc -lk 8888
  • 打开webUI
    localhost:8081


    image.png
  • 编译wordcount并且上传jar包
    在idea中 用maven编译出jar包 flink-test-1.0-SNAPSHOT.jar

  • 上传
    点击ui左侧菜单栏的submit new job 按钮
    点击 Add New,上传之后输入com.cowkeys.FlinkStreamWordCount类名


    submit界面

    job界面
  • 在nc终端输入文字

> nc -lk 8888
flink hello hello apache
  • 在日志界面能够看到输出


    log

结语

通过简单的流程 把flink standalone的集群部署模式已经打通, 之后的文章会继续进行flink的相关笔记记录

你可能感兴趣的:(从零开发flink-02: flink集群standalone部署wordcount)