最详细且简单的Flink集群搭建教程(1.14.2)

184 阅读2分钟

环境准备

需要有三台 Centos7 服务器,并都需要完成下面的配置要求:

  • 关闭防火墙
  • 新建普通用户me
  • 阿里云时钟同步服务器
  • 配置免密登陆
  • 关闭selinux
  • 配置xsyncxcall同步脚本
  • 配置jdk8环境
  • 确保端口8081,8082端口没有被占用
  • hadoop高可用集群安装配置完毕

环境准备可以参考我下面的博文:

centos防火墙常用命令

centos新建普通用户

centos系统时间同步

centos配置免密登录

centos关闭SElinux

centos配置xsync和xcall同步脚本

centos安装jdk8

centos安装hadoop集群

集群规划

说明:

  1. 除特别说明外,本文的所有操作均在master节点、使用me这个非root用户执行
  2. 命令中出现的IP,均需要替换为自己集群中的IP【必须】
  3. 命令中出现的/home/lbs/software路径,可选择替换为自定义路径【可选】
hostnameIP角色
mastermasterJobManager + TaskManager
node1node1TaskManager
node2node2TaskManager

正式安装

  1. 下载资源包flink-1.14.2-bin-scala_2.12.tgz

    https://pan.baidu.com/s/17s6WdDoxAf0gMVcYiIuIjw?pwd=49kv
    
  2. 上传资源包到master节点,并解压到指定路径

    tar -zxvf flink-1.14.2-bin-scala_2.12.tgz -C /home/lbs/software
    mv /home/lbs/software/flink-1.14.2 /home/lbs/software/flink
    
  3. 配置HADOOP_CLASSPATH环境变量

    sudo vim /etc/profile
    # 内容最后,追加下面内容
    export HADOOP_CLASSPATH=`hadoop classpath`
    
  4. 修改flink-conf.yaml文件

    vim /home/lbs/software/flink/conf/flink-conf.yaml
    
    # jobmanager地址
    jobmanager.rpc.address: master
    ......
    # jobmanager 内存(可选)
    jobmanager.memory.process.size: 2048m
    # taskmanager 内存(可选,要小于物理内存)
    taskmanager.memory.process.size: 16384m
    # 槽、并行度
    taskmanager.numberOfTaskSlots: 3
    parallelism.default: 1
    ......
    # 类加载机制
    classloader.resolve-order: parent-first
    classloader.check-leaked-classloader: false
    ......
    # 开启火焰图(新增)
    rest.flamegraph.enabled: true
    
  5. 配置workers文件

    echo 'master
    node1
    node2' > /home/lbs/software/flink/conf/workers
    
  6. 配置masters文件

    echo 'master:8081' > /home/lbs/software/flink/conf/masters
    
  7. 分发/home/lbs/software/flink目录到集群中的其他两台机器

    xsync /home/lbs/software/flink
    

启动集群

/home/lbs/software/flink/bin/start-cluster.sh

验证集群

  1. jps查询三台服务器的进程情况如下:

    =============== master ===============
    4453 StandaloneSessionClusterEntrypoint
    4458 TaskManagerRunner
    4533 Jps
    
    =============== node1 ===============
    2872 TaskManagerRunner
    2941 Jps
    
    =============== node2 ===============
    2948 Jps
    2876 TaskManagerRunner
    
  2. 访问flinkWeb UI页面http://master:8081.

    image.png

关闭集群

/home/lbs/software/flink/bin/stop-cluster.sh