Apache Flink 2.1.1与StreamX(StreamPark 2.1.7) 整合

  • StreamPark 2.1.7 以及之前的版本,进队Apache Flinl 1.x 支持,2.x无法配置Flink Home,用此方法先Flink Home配置1.x 属性,集群挂载指定版本,这里用的配置Flink Home版本 Apache Flink 1.19.3版本,实际运行Flink 集群版本 Apache Flink 2.1.1版本;
  • flink.1.19.3文件包 下载地址 csdn下载

方法1、已经拥有StreamPark 环境

  • StreamX(StreamPark 2.1.7) 挂载,(StreamPark 2.1.7部署参考

    bash 复制代码
    tar -zxvf flink-1.19.3-bin-scala_2.12.tgz
    • 如果已经完成StreamPark 2.1.7部署,增加挂载目录、环境变量即可,注意宿主机挂载地址(/opt/flink-1.19.3)

      bash 复制代码
      docker run -d --name streampark \
        -p 10000:10000 \
        -v /tmp/streampark:/tmp/streampark \
        -v /opt/flink-1.19.3:/opt/flink-1.19.3 \
        -e FLINK_HOME=/opt/flink-1.19.3 \
        streampark:2.1.7-kes

方法2、构建镜像

  • 构建StreamPark镜像是加入Apache Flink 1.19.3

  • 在构建目录下解压文件

    bash 复制代码
    /opt/streampark/apache-streampark_2.12-2.1.7-bin
    
    tar -zxvf flink-1.19.3-bin-scala_2.12.tgz
  • Dockerfile

    bash 复制代码
    FROM openjdk:11-jre-slim
    
    WORKDIR /streampark
    
    RUN mkdir -p /tmp/streampark && chmod 777 /tmp/streampark
    
    COPY . .
    
    COPY flink-1.19.3 /opt/flink-1.19.3
    
    ENV FLINK_HOME=/opt/flink-1.19.3
    ENV PATH="${FLINK_HOME}/bin:${PATH}"
    
    EXPOSE 10000
    
    ENTRYPOINT ["/streampark/bin/streampark.sh", "start_docker"]
  • 构建镜像

    bash 复制代码
    docker build -t streampark:2.1.7-kes-flink1.19.3 .
  • 启动实例

    bash 复制代码
    docker run -d --name streampark \
      -p 10000:10000 \
      -v /tmp/streampark:/tmp/streampark \
      streampark:2.1.7-kes-flink1.19.3
  • 以上两种方法配置的flink目录是一样的,在实例/opt/flink-1.19.3目录下


方案1、程序包部署

  • flink.2.1.1文件包 下载地址 csdn下载地址

  • 解压

    bash 复制代码
    tar -zxvf flink-2.1.1.tgz
  • 启动Flink 2.1.1集群,默认端口8081

    bash 复制代码
    cd cd flink-2.1.1/bin/
    
    ./start-cluster.sh


  • 配置Flink Cluster

方案2、Docker 部署

  • docker 拉取镜像更为方便(docker pull flink:2.1.1)

  • 启动 jobmanager

    bash 复制代码
    docker run -d \
      --name flink-jobmanager \
      --hostname flink-jobmanager \
      -p 8081:8081 \
      -e FLINK_PROPERTIES="jobmanager.rpc.address: flink-jobmanager" \
      flink:2.1.1 \
      jobmanager
  • 启动 taskmanager

    bash 复制代码
    docker run -d \
      --name flink-taskmanager \
      --link flink-jobmanager:flink-jobmanager \
      -e FLINK_PROPERTIES="jobmanager.rpc.address: flink-jobmanager" \
      flink:2.1.1 \
      taskmanager

注意:

  • flink 1.19.3 不需要启动,SteamPark只是借用环境,实际做fink集群管理的是 flink2.1.1;
  • fink 2.1.1 必须启动;
相关推荐
TDengine (老段)12 小时前
# TDengine TMQ 最佳实践 — 可靠消费、容错与监控
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
会周易的程序员1 天前
microLog 的本地日志读取接口 log_reader — 本地日志文件读取工具开发指南
linux·物联网·架构·嵌入式·日志·iot·aiot
会周易的程序员1 天前
microLog 后端开发指南
开发语言·c++·物联网·设计模式·日志·iot·aiot
xuruilll2 天前
数据中台开发 - (一)概述
大数据·数据库·数据仓库·flink
董可伦2 天前
Flink CDC2Kafka 总结
大数据·flink·cdc
会周易的程序员3 天前
microLog:专为嵌入式与高可靠场景打造的高性能日志库
c++·物联网·日志·iot·aiot
[J] 一坚3 天前
ThingsBoard 物联网服务器搭建
运维·服务器·iot
大大大大晴天3 天前
Flink JDBC Connector 深度解析:从原理到最佳实践
flink
一条鱼丶4 天前
深入理解 Flink Watermark——流数据处理中的乱序问题解决方案
flink
大大大大晴天5 天前
Flink SQL 从编写到提交运行的全过程解析
flink