当前位置: 首页 > 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; 等待程序安装完成之…...

scss(sass)中 的使用说明

在 SCSS&#xff08;Sass&#xff09;中&#xff0c;& 符号是一个父选择器引用&#xff0c;它代表当前嵌套规则的外层选择器。主要用途如下&#xff1a; 1. 连接伪类/伪元素 scss 复制 下载 .button {background: blue;&:hover { // 相当于 .button:hoverbackgrou…...

使用Conda管理服务器多版本Python环境的完整指南

在服务器环境中管理多个Python版本是开发者和系统管理员常见的需求&#xff0c;尤其是当不同项目依赖特定版本的Python时。本文将重点介绍如何通过Conda实现多版本Python的隔离与管理&#xff0c;确保服务器环境的稳定性和灵活性。 为什么需要多版本Python管理&#xff1f; 服…...

SQL Server 日期时间类型全解析:从精确存储到灵活转换

SQL Server 日期时间类型全解析&#xff1a;从精确存储到灵活转换 一、引言&#xff1a;日期时间处理的核心挑战 在数据管理中&#xff0c;日期时间类型是最常用却最容易出错的数据类型之一。不同业务场景对时间精度、时区感知、存储效率的需求差异极大&#xff1a; 金融交易…...

【PDF PicKiller】PDF批量删除固定位置图片工具,默认解密,可去一般图、背景图、水印图!

PDF批量删除固定位置图片工具 PDF PicKiller <center>PDF PicKiller [Download](https://github.com/Peaceful-World-X/PDF-PicKiller)&#x1f929; 工具介绍&#x1f973; 主要功能&#x1f92a; 软件使用&#x1f92a; 参数解释&#x1f92a; 关键代码&#x1f929; 项…...

数据库管理-第334期 Oracle Database 23ai测试版RAC部署文档(20250607)

数据库管理334期 2024-06-07 数据库管理-第334期 Oracle Database 23ai测试版RAC部署文档&#xff08;20240607&#xff09;1 环境与安装介质2 操作标准系统配置2.1 关闭防火墙2.2 关闭SELinux2.3 关闭avahi-daemon2.4 时间同步配置 3 存储服务器配置3.1 配置本地yum源3.2 安装…...

JAVA获取ES连接并查询所有数据

我们的项目要获取es连接&#xff0c;新版本和旧版本有不小的区别&#xff0c;在8.17.0版本使用的是 ElasticsearchClient <dependency><groupId>co.elastic.clients</groupId><artifactId>elasticsearch-java</artifactId><version>8.17…...

【Android基础回顾】五:AMS(Activity Manager Service)

Android 的 AMS&#xff08;Activity Manager Service&#xff09;是 Android 系统中的核心服务之一&#xff0c;负责管理整个应用生命周期、任务栈、进程和四大组件&#xff08;Activity、Service、BroadcastReceiver、ContentProvider&#xff09;的运行。它运行在系统进程 s…...

关键字--sizeof

sizeof 是 C 中的一个编译时运算符&#xff0c;用于获取一个类型或对象在内存中所占的字节数&#xff08;单位&#xff1a;字节&#xff0c;byte&#xff09;。 用法 获取类型的大小&#xff1a; std::cout << sizeof(int) << std::endl; // 输出int类型的字节数…...

华为云Flexus+DeepSeek征文| 华为云Flexus X实例单机部署Dify-LLM应用开发平台全流程指南

华为云FlexusDeepSeek征文&#xff5c; 华为云Flexus X实例单机部署Dify-LLM应用开发平台全流程指南 前言一、相关名词介绍1.1 华为云Flexus X实例介绍1.2 Dify介绍1.3 DeepSeek介绍1.4 华为云ModelArts Studio介绍 二、部署方案介绍2.1 方案介绍2.2 方案架构2.3 需要资源2.4 本…...

AI大数据模型如何与thingsboard物联网结合

一、 AI大数据与ThingsBoard物联网的结合可以从以下几个方面实现&#xff1a; 1. 数据采集与集成 设备接入&#xff1a;ThingsBoard支持多种通信协议&#xff08;如MQTT、CoAP、HTTP、Modbus、OPC-UA等&#xff09;&#xff0c;可以方便地接入各种物联网设备。通过这些协议&am…...