使用Docker搭建Flink集群

本文介绍了如何使用docker-compose便捷地搭建Flink集群。通过安装docker和docker-compose,下载指定版本的Flink镜像,编写docker-compose.yml文件,即可实现一键搭建。此外,文中还提及后续计划加入kafka和zookeeper,丰富集群功能。
摘要由CSDN通过智能技术生成

使用Docker搭建Flink集群

在学习大数据框架的时候,需要一个真实的环境。我们知道,像spark、flink这些计算框架都有多种运行模式:

  • 在本地使用多线程模拟集群
  • 真正的分布式集群

如果直接在IDE(Intellj)里面编译和运行写好的程序,实际上是用的前一种运行模式;如果想尝试真正的生产环境中任务的提交和管理,则需要搭建一个Flink集群。

很多教程在搭建集群的时候使用的是虚拟机(Ubuntu或者CentOS),这样开销比较大,因此选择docker容器化部署的方式搭建。

docker-compose一键搭建

在参考了网上的资料以及走了很多弯路之后(用docker一个个自己搭建,出了很多问题;以及用homebrew安装失败;docker开一个centos,里面套娃安装docker也不行),发现目前最简单的方式应该就是docker-compose了,步骤如下:

步骤

(1)安装docker(如果是PC,可以直接安装桌面版docker,省事;如果是服务器,根据系统不同用yum或者apt)

# example: CentOS
yum install docker-ce docker-ce-cli containerd.io
systemctl start docker

(2)安装docker-compose,我安装的是桌面版的,这个一起安装了

(3)使用docker pull下载镜像,镜像名是flink,tag是1.14.4-scala_2.12-java8,镜像可以去docker hub上直接搜索

docker pull flink:1.14.4-scala_2.12-java8

(4) -compos编写dockere.yml

version: "3.7"
services:
  FlinkJobManager:  # define the job manager service
    image: flink:1.14.4-scala_2.12-java8
    container_name: FlinkJobManager
    hostname: FlinkJobManager
    expose:
      - "6123"
    ports:
      - "8081:8081"  # map port 8081 of container to port 8081 of localhost 
    command: jobmanager
    
要在Docker中安装Flink,可以按照以下步骤进行操作: 1. 首先,确定你已经安装了DockerDocker Compose。如果没有安装,请根据你的操作系统进行安装。 2. 下载Flink的安装文件(例如flink-1.10.0.tar.gz)和相关依赖(例如jdk1.8.0_251.tar.gz)。 3. 在你的项目目录中创建一个新的文件夹,用于存放Flink的配置文件、日志和临时文件。在这个文件夹中,你可以包含一个docker-compose.yml文件来定义Flink容器的配置。 4. 在docker-compose.yml文件中,配置Flink容器的相关参数,包括挂载卷、环境变量、端口映射等。你可以参考引用中的示例来进行配置。 5. 编写一个启动脚本(例如run.sh),用于构建Flink镜像并启动容器。你可以使用Dockerfile来构建镜像,然后使用docker-compose命令来启动容器。在启动脚本中,你需要将Flink的安装文件和相关依赖复制到容器内部。 6. 运行启动脚本,等待Docker构建Flink镜像并启动容器。你可以根据需要查看日志文件,以确保容器正常运行。 总结起来,安装Docker并在其中运行Flink需要以下步骤: - 确保DockerDocker Compose已安装; - 下载Flink安装文件和相关依赖; - 创建一个文件夹并编写docker-compose.yml文件来配置Flink容器; - 编写一个启动脚本,并在其中构建Flink镜像并启动容器。 请注意,具体的步骤可能因个人需求和系统环境而有所不同。你可以根据自己的情况进行适当的调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [flink集群(docker版)配置及使用](https://blog.csdn.net/zxj19880502/article/details/129578158)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [大数据应用技术 | 使用 Docker搭建 Flink 集群 | FlinkStreaming实时数据流处理程序实现词频统计](https://blog.csdn.net/Unirithe/article/details/122115286)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值