当前位置: 首页 > news >正文

docker compose部署flink集群

本次部署2个jobmanager和3个taskmanager

一、部署zookeeper集群

flink使用zookeeper用作高可用

部署集群参考:docker compose部署zookeeper集群-CSDN博客

二、创建目录及配置文件

创建timezone文件,内容填写Asia/Shanghai

手动创建目录:data、conf、tmp、log

conf文件夹内容如下:

需要为每个节点单独准备配置文件,log4j和logback配置可以共用

这些配置文件,可以从官网下载flink包解压后获取,或启动flink容器后docker cp复制出来

逐个修改flink-conf-xxx.yaml配置

以flink-conf-jobmanager1.yaml举例:配置如下

其他配置文件,根据各配置项的备注描述进行对应修改

三、创建docker compose文件

vim docker-compose.yaml

networks:
  net:
    external: true

services:
  jobmanager1:
    restart: always
    image: apache/flink:1.16.3
    container_name: jobmanager1
    hostname: jobmanager1
    ports:
     - '8081:8081'
    volumes:
      - /etc/localtime:/etc/localtime
      - /home/sumengnan/apache/flink/timezone:/etc/timezone
      - /home/sumengnan/apache/flink/conf/flink-conf-jobmanager1.yaml:/opt/flink/conf/flink-conf.yaml
      - /home/sumengnan/apache/flink/conf/log4j.properties:/opt/flink/conf/log4j.properties
      - /home/sumengnan/apache/flink/conf/logback.xml:/opt/flink/conf/logback.xml
      - /home/sumengnan/apache/flink/conf/log4j-console.properties:/opt/flink/conf/log4j-console.properties
      - /home/sumengnan/apache/flink/conf/logback-console.xml:/opt/flink/conf/logback-console.xml
      - /home/sumengnan/apache/flink/data:/opt/flink/data
      - /home/sumengnan/apache/flink/log:/opt/flink/log
      - /home/sumengnan/apache/flink/tmp:/opt/flink/tmp
    networks:
      - net
  jobmanager2:
    restart: always
    image: apache/flink:1.16.3
    container_name: jobmanager2
    hostname: jobmanager2
    ports:
     - '8082:8081'
    volumes:
      - /etc/localtime:/etc/localtime
      - /home/sumengnan/apache/flink/timezone:/etc/timezone
      - /home/sumengnan/apache/flink/conf/flink-conf-jobmanager2.yaml:/opt/flink/conf/flink-conf.yaml
      - /home/sumengnan/apache/flink/conf/log4j.properties:/opt/flink/conf/log4j.properties
      - /home/sumengnan/apache/flink/conf/logback.xml:/opt/flink/conf/logback.xml
      - /home/sumengnan/apache/flink/conf/log4j-console.properties:/opt/flink/conf/log4j-console.properties
      - /home/sumengnan/apache/flink/conf/logback-console.xml:/opt/flink/conf/logback-console.xml
      - /home/sumengnan/apache/flink/data:/opt/flink/data
      - /home/sumengnan/apache/flink/log:/opt/flink/log
      - /home/sumengnan/apache/flink/tmp:/opt/flink/tmp
    networks:
      - net
    depenes_on:
      - jobmanager1


  taskmanager1:
    restart: always
    image: apache/flink:1.16.3
    container_name: taskmanager1
    hostname: taskmanager1
    command: taskmanager
    volumes:
      - /etc/localtime:/etc/localtime
      - /home/sumengnan/apache/flink/timezone:/etc/timezone
      - /home/sumengnan/apache/flink/conf/flink-conf-taskmanager1.yaml:/opt/flink/conf/flink-conf.yaml
      - /home/sumengnan/apache/flink/conf/log4j.properties:/opt/flink/conf/log4j.properties
      - /home/sumengnan/apache/flink/conf/logback.xml:/opt/flink/conf/logback.xml
      - /home/sumengnan/apache/flink/conf/log4j-console.properties:/opt/flink/conf/log4j-console.properties
      - /home/sumengnan/apache/flink/conf/logback-console.xml:/opt/flink/conf/logback-console.xml
      - /home/sumengnan/apache/flink/data:/opt/flink/data
      - /home/sumengnan/apache/flink/log:/opt/flink/log
      - /home/sumengnan/apache/flink/tmp:/opt/flink/tmp
    networks:
      - net
    depenes_on:
      - jobmanager1
      - jobmanager2
  taskmanager2:
    restart: always
    image: apache/flink:1.16.3
    container_name: taskmanager2
    hostname: taskmanager2
    command: taskmanager
    volumes:
      - /etc/localtime:/etc/localtime
      - /home/sumengnan/apache/flink/timezone:/etc/timezone
      - /home/sumengnan/apache/flink/conf/flink-conf-taskmanager2.yaml:/opt/flink/conf/flink-conf.yaml
      - /home/sumengnan/apache/flink/conf/log4j.properties:/opt/flink/conf/log4j.properties
      - /home/sumengnan/apache/flink/conf/logback.xml:/opt/flink/conf/logback.xml
      - /home/sumengnan/apache/flink/conf/log4j-console.properties:/opt/flink/conf/log4j-console.properties
      - /home/sumengnan/apache/flink/conf/logback-console.xml:/opt/flink/conf/logback-console.xml
      - /home/sumengnan/apache/flink/data:/opt/flink/data
      - /home/sumengnan/apache/flink/log:/opt/flink/log
      - /home/sumengnan/apache/flink/tmp:/opt/flink/tmp
    networks:
      - net
    depenes_on:
      - jobmanager1
      - jobmanager2
  taskmanager3:
    restart: always
    image: apache/flink:1.16.3
    container_name: taskmanager3
    hostname: taskmanager3
    command: taskmanager
    volumes:
      - /etc/localtime:/etc/localtime
      - /home/sumengnan/apache/flink/timezone:/etc/timezone
      - /home/sumengnan/apache/flink/conf/flink-conf-taskmanager3.yaml:/opt/flink/conf/flink-conf.yaml
      - /home/sumengnan/apache/flink/conf/log4j.properties:/opt/flink/conf/log4j.properties
      - /home/sumengnan/apache/flink/conf/logback.xml:/opt/flink/conf/logback.xml
      - /home/sumengnan/apache/flink/conf/log4j-console.properties:/opt/flink/conf/log4j-console.properties
      - /home/sumengnan/apache/flink/conf/logback-console.xml:/opt/flink/conf/logback-console.xml
      - /home/sumengnan/apache/flink/data:/opt/flink/data
      - /home/sumengnan/apache/flink/log:/opt/flink/log
      - /home/sumengnan/apache/flink/tmp:/opt/flink/tmp
    networks:
      - net
    depenes_on:
      - jobmanager1
      - jobmanager2


 

 四、启动

五、访问

访问8081或8082jobmanager

 可以看出jobmanager与3个taskmanager工作正常

相关文章:

docker compose部署flink集群

本次部署2个jobmanager和3个taskmanager 一、部署zookeeper集群 flink使用zookeeper用作高可用 部署集群参考:docker compose部署zookeeper集群-CSDN博客 二、创建目录及配置文件 创建timezone文件,内容填写Asia/Shanghai 手动创建目录&#xff1a…...

docker compose快速部署kafka-connect集群

先部署kafka集群,启动 参考:docker compose部署kafka集群-CSDN博客 创建timezone文件,内容填写Asia/Shanghai 再部署kafka-connect集群 networks: net: external: true services: kafka-connect1: restart: always image:…...

【核心特性】Go 模块化开发入门(go mod 深度解析)

Go 模块化开发入门(go mod 深度解析) 一、引言 在 Go 语言的开发过程中,随着项目规模的不断扩大,依赖管理变得愈发重要。Go Modules 作为 Go 语言官方的依赖管理工具,自 Go 1.11 版本引入后,极大地简化了项…...

国产ARM处理器工控机如何助力企业实现自主可控?

选择国产ARM处理器工控机的原因可以从多个角度来考虑,包括技术、经济、安全和政策等方面。以下是一些关键理由: 技术优势 低功耗高效能:ARM架构以其出色的能效比著称,适合需要长时间运行的工业控制应用。适应性强:国…...

dns功能及工作原理是什么?

在互联网的浩瀚海洋中,域名系统(DNS)扮演着至关重要的角色。它就像一个巨大的地址簿,将用户友好的域名转换为机器可识别的IP地址,确保用户能够访问到正确的服务器。本文将深入探讨DNS的功能和工作原理,揭示这一互联网基础设施的奥…...

Java中的Map集合与文件操作详解

1. Map集合概述 Map是一种键值对(key-value)的集合,常用于存储具有映射关系的数据。与List和Set不同,Map的键(key)是唯一的,而值(value)可以重复。Map集合的主要实现类有…...

SAP-ABAP:dialog界面中的数据块Event Block详解举例

在SAP的Dialog程序开发中,Event Block(事件块)是屏幕流逻辑(Flow Logic)中的关键部分,用于定义屏幕在特定事件触发时执行的逻辑。Event Block通常与ABAP模块(Module)结合使用&#x…...

PostgreSQL 开发利器:Navicat 核心功能与资源攻略

近几年,🐘 PostgreSQL 在全球数据库排名中表现优异。在 2025 年 2 月 DB-Engines 排名中 (如图),PostgreSQL 稳居第四名,并逐渐逼近第三名的 Microsoft SQL Server,其评分和受欢迎度持续增长,成为开源数据库…...

飞算 JavaAI:加速 AI + 行业趋势的智能化进程

在数字化浪潮奔涌的当下,“AI 行业” 已然成为不可逆的发展趋势,各行业都在积极探索 AI 技术与自身业务的融合,期望借此实现创新突破与转型升级。在这一进程中,飞算 JavaAI凭借其卓越的技术实力和独特的功能优势,为加…...

XZ_Mac电脑上本地化部署DeepSeek的详细步骤

根据您的需求,以下是Mac电脑上本地化部署DeepSeek的详细步骤: 一、下载并安装Ollama 访问Ollama官网: 打开浏览器,访问 Ollama官网。 下载Ollama: 在官网中找到并点击“Download”按钮,选择适合Mac系统的…...

Flink-DataStream API

一、什么样的数据可以用于流式传输 Flink的DataStream API 允许流式传输他们可以序列化的任何内容。Flink自己的序列化程序用于 基本类型:即字符串、长、整数、布尔值、数组复合类型:元组、POJO和Scala样例类 基本类型我们已经很熟悉了,下…...

2.4 构建模块化应用

第4章:构建模块化应用 模块化应用是 JDK 9 的核心特性之一,通过模块化系统(Project Jigsaw)实现代码的强封装和显式依赖管理。本章详细讲解如何从零构建一个模块化应用,包括模块定义、编译、打包、运行及调试。 4.1 模…...

DeepSeek:从入门到精通

在人工智能飞速发展的今天,DeepSeek作为一款备受瞩目的AI工具,正以其强大的功能和开源理念改变着我们的生活和工作方式。本文将带你深入了解DeepSeek,从基础入门到进阶应用,助你快速掌握这一前沿工具。 文末有详细资料可下载 文末…...

JAVA学习第二天

ArryList的构造方法和添加方法 01。构造方法的<>里面可以放数据类型 02. add&#xff08;&#xff09;可以直接在后面加入数据&#xff0c;也可以指定下标的插入元素。 ArrayList的常用方法 ArrayList存储对象 在Java中&#xff0c;System.out.println()可以打印基本数据…...

DevOps工具链概述

1. DevOps工具链概述 1.1 DevOps工具链的定义 DevOps工具链是支持DevOps实践的一系列工具的集合&#xff0c;这些工具覆盖了软件开发的整个生命周期&#xff0c;包括需求管理、开发、测试、部署和运维等各个环节。它旨在通过工具的集成和自动化&#xff0c;打破开发与运维之间…...

windows系统远程桌面连接ubuntu18.04

记录一下自己在配置过程中遇到的问题&#xff0c;记录遇到的两大坑&#xff1a; windows系统通过xrdp远程桌面连接ubuntu18.04的蓝屏问题。参考以下第一章解决。 同一局域网内网段不同的连接问题。参考以下第三章解决&#xff0c;前提是SSH可连。 1. 在ubuntu上安装xrdp 参考&…...

kafka动态监听主题

简单版本 import org.springframework.beans.factory.annotation.Autowired; import org.springframework.kafka.core.ConsumerFactory; import org.springframework.kafka.listener.ConcurrentMessageListenerContainer; import org.springframework.kafka.listener.Containe…...

Python虚拟环境管理工具 pyenv

情景 我现在在部署一个python 项目&#xff0c;需要用到Python 3.10。但是我本地已经有了一个3.12解释器&#xff0c;有没有一种方法&#xff0c;可以管理python 环境&#xff0c;还可以随意切换。怎么做&#xff1f; window 安装pyenv-win 使用 PowerShell&#xff08;以管…...

网络安全产品架构图 网络安全相关产品

一、信息安全产品分类 背景 美国将网络和信息安全产品分了9类&#xff1a;鉴别、访问控制、入侵检测、防火墙、公钥基础设施、恶意程序代码防护、漏洞扫描、取证、介质清理或擦除。中国公安部将网络和信息安全产品分了7类&#xff1a;操作系统安全、数据库安全、网络安全、病毒…...

C++ 实践扩展(Qt Creator 联动 Visual Studio 2022)

​ 这里我们将在 VS 上实现 QT 编程&#xff0c;实现如下&#xff1a; 一、Vs 2022 配置&#xff08;若已安装&#xff0c;可直接跳过&#xff09; 点击链接&#xff1a;​​​​​Visual Studio 2022 我们先去 Vs 官网下载&#xff0c;如下&#xff1a; 等待程序安装完成之…...

5个关键步骤掌握PyAEDT:从安装到高级仿真实战指南

5个关键步骤掌握PyAEDT&#xff1a;从安装到高级仿真实战指南 【免费下载链接】pyaedt AEDT Python Client Package 项目地址: https://gitcode.com/gh_mirrors/py/pyaedt PyAEDT作为Ansys Electronics Desktop的Python客户端库&#xff0c;为工程师提供了强大的电子设计…...

【译】《心悟内核:先懂设计,再读代码》—1、内核并非进程,而是整个系统本身

作者&#xff1a;Moon Hee Lee 原文&#xff1a; The Kernel in the Mind 心悟内核:先懂设计&#xff0c;再读代码——内核并非进程&#xff0c;而是整个系统本身Linux 内核既不是普通进程、守护进程&#xff0c;也不是应用程序。它是一套常驻内存的高特权运行环境&#xff0c…...

【必收藏】2026年大模型学习全指南|小白程序员入门捷径,抓住百万年薪红利

2026年的AI行业&#xff0c;机遇早已从风口走向实锤——应用层依旧是那片肉眼可见的黄金赛道&#xff01;从大厂技术布局到招聘市场风向标&#xff0c;所有信号都在一致指向&#xff1a;大模型应用开发&#xff0c;已然成为程序员突破职业瓶颈、实现薪资跃升的核心赛道。 字节跳…...

【典型电路设计】直流400V转24V电源设计,超宽输入高压非隔离Buck降压芯片XD308H,包含芯片介绍以及参考电路详细解读

一款工业场景中非常实用的高压降压芯片——XD308H&#xff0c;这款芯片主打超宽输入、外围极简、低成本&#xff0c;特别适合400VDC母线、220VAC整流后等高压场景&#xff0c;实现小功率非隔离降压&#xff08;如24V、12V&#xff09;&#xff0c;广泛应用于工业控制、BMS、智能…...

利用 JiuwenClaw AgentTeam 打造自动化研发团队

利用 JiuwenClaw AgentTeam 打造自动化研发团队 本文介绍如何通过 JiuwenClaw AgentTeam 构建自动化研发团队&#xff0c;实现字幕软件开发、AtomGit Issue/PR 智能处理与飞书文档同步。 目录 JiuwenClaw 平台概述 系统架构预置智能体类型 什么是 AgentTeams飞书群中添加机器人…...

短视频矩阵运营方法论——不同平台多账号协同的底层逻辑与避坑指南

短视频矩阵运营已成为品牌获取规模化流量的核心手段&#xff0c;但多账号协同背后的平台算法逻辑、账号关联风险、内容差异化策略等复杂问题&#xff0c;常常导致运营者踩入“雷区”。本文基于抖音、微信视频号、小红书三大主流平台官方规则与公开算法解读&#xff0c;系统梳理…...

基于LLM的智能体驱动文字冒险游戏引擎设计与实现

1. 项目概述&#xff1a;一个AI驱动的文字冒险游戏引擎最近在GitHub上闲逛&#xff0c;发现了一个挺有意思的项目&#xff0c;叫droxey/agentadventure。光看名字&#xff0c;大概能猜到它和“智能体”&#xff08;Agent&#xff09;以及“冒险”&#xff08;Adventure&#xf…...

迭代式代码进化:基于进化算法与LLM的自动化代码优化系统

1. 项目概述&#xff1a;当代码学会自我进化最近在GitHub上看到一个挺有意思的项目&#xff0c;叫aaronjmars/iterative-code-evolution。光看名字&#xff0c;你可能会觉得这又是一个关于“代码生成”或者“AI编程”的常规项目。但当我深入进去&#xff0c;把玩了一番之后&…...

恶意 Hugging Face 仓库 18 小时登顶热门榜,引发公共 AI 仓库安全担忧

【事件概述】一个伪装成 OpenAI 发布内容的恶意 Hugging Face 仓库&#xff0c;向 Windows 系统投放信息窃取恶意软件。该仓库在 18 小时内登上 Hugging Face 热门排行榜首位&#xff0c;被移除前下载量达 24.4 万次&#xff0c;引发人们对企业从公共仓库获取和验证 AI 模型的新…...

SMD电阻脉冲负载能力解析与工程实践

1. SMD电阻脉冲负载能力解析&#xff1a;工程师必须掌握的核心知识在工业控制板卡维修现场&#xff0c;我曾遇到一个令人费解的案例&#xff1a;某型号PLC的输入保护电路在雷雨季节频繁损坏&#xff0c;但检查发现所有元件参数都符合设计要求。最终用热成像仪捕捉到瞬间现象——…...