0


FLINK的部署

1、服务器部署

主机名配置(集群服务器,执行相同操作)

登录root用户

执行

vi /etc/hosts

将集群服务器中所有的IP地址进行配置,例如:

192.168.0.1 appserver1

192.168.0.2 appserver2

备注:部署集群时一定注意集群服务器的IP顺序一定是:

192.168.0.1 appserver1 在前

192.168.0.2 appserver2 在后

不然配置完成后,只能启动顺序正确的服务器。

执行

vi /etc.sysconfig/network

将当前主机名进行配置,例如:

当前主机名是:appserver1

HOSTNAME=appserver1

2、创建flink用户

groupadd -g 500 flink

useradd -d /home/flink -s /bin/bash -g flink -u 500 -m flink

passswd flink

创建一个用户名密码都为flink的用户。

3、将集群服务器进行SSH免密配置

登录flink用户

ssh-keygen -t rsa (回车四次)

cd ~/.ssh 查看id_rsa(私钥)和id_pub(公钥)

上述操作,在每一个flink集群服务器全部操作一遍

每一台服务器,执行:

ssh-copy-id 192.168.0.2 (集群内其他服务器的IP地址)

尝试免密登录 ssh 目标IP地址

4、部署安装包

可以在flink官网上下载

在Apache Flink: Downloadshttps://flink.apache.org/downloads.html

下载spring、ojdbc、durid、mysql-connector所需要的第三方扩展jar

将下载的flink-1.11.6-bin-scala_2.12.tar文件上传至服务器

通过FTP工具上传文件

上传至/home/flink文件夹下

解压下载的flink压缩包解压命令

tar -zxvf flink-1.11.6-bin-scala_2.12.tar

创建临时目录

登录flink用户后,创建存放JOB的临时文件目录和临时文件目录tmp

mkidr jobs

mkdir tmp

4、standlone部署

修改flink-conf.yaml

路径:/home/flink/flinkflink-1.11.6-bin-scala_2.12/conf

打开配置文件

vi flink-conf.yaml

按照下面参数进行配置:

#配置主机名(JOBMANAGER的主机名,例如:appserver1,即appserver1 为主节点)
    jobmanager.rpc.address: appserver1
#RPC端口(默认不改变)
    jobmanager.rpc.port: 6123
#REST端口(console控制台与微服务调用时访问的端口)
    rest.port:8081
#taskmanager所能提供的slots数量,一般设置成和机器逻辑CPU核数一致
#供参考:cat /proc/cpuinfo|grep "processor"| wc -1
    taskmanager.number0fTaskSlots: 16
#默认任务并行度
    parallelism.default: 4
#上传jar文件所在临时目录 默认在/tmp会被系统定时清理    
    io.tmp.dirs: /home/flink/flinkflink-1.11.6-bin-scala_2.12/jobs
#参数调度,调度Task时均匀调度内个 TaskManager 中,这有利于使用所有的资源
    cluster.evenly-spread-out-slots:true
#默认全局重试,需打开region 重试才能enable 单点的failover
    jobmanager.execution.failover-strategy:region
#重试策略需要手动设置,默认是不重试的
    restar-startegay:fixed-delay
#Shuffle read 使用 mmap 的方式,直接靠系统来管理内存,是比较方便的形式
    taskmanager.network.blocking-shffle.type: mmap
#使用压缩,这个参数是批流复用的,强烈建议给批作业开启压缩,不然瓶颈就会在磁盘上
    taskmanager.network.blocking-shffle.comression.enabled: true
#JOB管理JVM堆内存 jobmanager.heap.size: 4096m (1.11版本后已经废弃,需要删除或者注释)
    jobmanager.memory.flink.size: 2048m(standlone模式启用)    
#TASK管理器JVM堆内存的总大小(包括堆内内存与托管内存)flink总内存
    taskmanager.memory.flink.size: 4096m(standlone模式启用) 
#托管内存(批处理排序需要使用,size与fraction二选一)
    taskmanager.memory.managed.size:2024m(明确托管内存大小)
    taskmanager.memory.managed.fraction: 0.4(托管内存占flink总内存数量)
#Task点到点的通信需要4个Buffers,根据并发大概计算得出需要2GB
    taskmanager.memory.network.max: 2000m

    

修改masters

    配置Jobmanager服务器

如果appserver1 服务器作为flink的Jobmanager服务器,配置如下:

   路径:/home/flink/flinkflink-1.11.6-bin-scala_2.12/conf

vi masters

#添加一下内容:

appserver1

修改slaves

配置taskmanager服务器列表

路径:/home/flink/flinkflink-1.11.6-bin-scala_2.12/conf

vi slaves

#添加一下内容:

appserver1

appserver2

工程复制

Standlone集群下,为保证所有的节点下flink配置相同,采用复制的方式,从已经配置好的服务器,向其他集群服务器进行复制同步。

例如:appserver1 向appserver2 服务器同步

scp -r /home/flink/flinkflink-1.11.6-bin-scala_2.12 appserver2:/home/flink

启动flink

可以在集群下任意系统上启动

在/home/flink/flinkflink-1.11.6-bin-scala_2.12/bin

./start-cluster.sh

检查启动情况

jps

检查是否存在StandaloneSessionClusterEntrypoint和TaskManagerRunner

在其他服务器上

jps

检查是否存在TaskManagerRunner

停止flink

可以在任意系统上启动

./stop-cluster.sh

标签: flink 服务器 p2p

本文转载自: https://blog.csdn.net/m0_46579128/article/details/123186077
版权归原作者 是谁在轮椅上飞行?是我! 所有, 如有侵权,请联系我们删除。

“FLINK的部署”的评论:

还没有评论