Maxwell安装部署消费到kafka集群

news2024/10/7 9:19:32

1.上传安装包到linux系统上面

在这里插入图片描述

2.解压安装包到安装目录下,并且重命名

[root@VM-4-10-centos package]# tar -zxvf maxwell-1.29.2.tar.gz -C /opt/software/

在这里插入图片描述

3.配置mysql

增加以下配置

#数据库id
server-id = 1
#启动binlog,该参数的值会作为binlog的文件名
log-bin=mysql-bin
#binlog类型,maxwell要求为row类型
binlog_format=row
#启用binlog的数据库,需根据实际情况作出修改
binlog-do-db= financial_lease

查看binlog是否开启:

show variables like 'log_%';

在这里插入图片描述

我们需要关注的是输出结果的第一行,可以看到log_bin对应的值是ON,所以binlog已经开启。

4. 创建Maxwell所需数据库和用户

Maxwell需要在MySQL中存储其运行过程中的所需的一些数据,包括binlog同步的断点位置(Maxwell支持断点续传)等等,故需要在MySQL为Maxwell创建数据库及用户。

注意创建的Maxwell数据库为maxwell元数据库,maxwell不会监测元数据库数据变化,所以业务数据不要创建在元数据库内,不然不会监测到数据变化,maxwell也不会报错

创建数据库

msyql> CREATE DATABASE maxwell;

创建Maxwell用户并赋予其必要权限

mysql> CREATE USER 'maxwell'@'%' IDENTIFIED BY 'maxwell';
mysql> GRANT ALL ON maxwell.* TO 'maxwell'@'%';
mysql> GRANT SELECT, REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO 'maxwell'@'%';

5.配置Maxwell

修改Maxwell配置文件名称

[root@VM-4-10-centos software]# cd maxwell/
[root@VM-4-10-centos maxwell]# cp config.properties.example config.properties

修改Maxwell配置文件

#Maxwell数据发送目的地,可选配置有stdout|file|kafka|kinesis|pubsub|sqs|rabbitmq|redis
producer=kafka
# 目标Kafka集群地址
kafka.bootstrap.servers=101.91.153.39:9092,61.171.111.6:9092,61.171.100.138:9092
#目标Kafka topic,可静态配置,例如:maxwell,也可动态配置,例如:%{database}_%{table}
kafka_topic=maxWellData

# MySQL相关配置
host=10.0.4.10
user=maxwell
password=maxwell
jdbc_options=useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true

# 指定数据按照主键分组进入Kafka不同分区,避免数据倾斜
producer_partition_by=primary_key

6.启动Kafka集群

7.启动Maxwell

先把采集到的数据打印到控制台测试maxwell应用是否正常

[root@VM-4-10-centos maxwell]# bin/maxwell --user='maxwell'  \
> --password='maxwell' \
> --host='10.0.4.10' \
> --producer=stdout

在这里插入图片描述
打印正常后重新启动打印到kafka

[root@VM-4-10-centos maxwell]# bin/maxwell --config config.properties --daemon

消费kafka对应topic发现正常

[zhangflink@9wmwtivvjuibcd2e kafka]$ bin/kafka-console-consumer.sh --bootstrap-server flinkv1:9092 --from-beginning --topic maxWellData

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1247108.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JavaEE】认识多线程

作者主页:paper jie_博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文录入于《vaEE》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造&am…

葡萄采收时节分类,其中大有学问

葡萄在酿造葡萄酒的时候有一个关键的因素那就是葡萄的采收期,符合采收时节的葡萄大部分属于成熟好的葡萄,那么,云仓酒庄的品牌雷盛红酒分享这样的葡萄酿出来的酒自然优质。正是因为采收时分不同,根据采摘的不同,给不同…

Elasticsearch知识

目录 Elasticsearch逻辑设计和物理设计 逻辑设计物理设计Elasticsearch原理 倒排索引文档的分析过程保存文档搜索文档写数据的底层原理 数据刷新(fresh)事务日志的写入ES在大数据量下的性能优化 文件系统缓存优化数据预热文档(Document&…

Java计算两个时间的相差年,日,小时,分,秒

主函数 public static int dateDiff(char flag, Calendar calSrc, Calendar calDes) {long millisDiff getMillis(calSrc) - getMillis(calDes);if (flag y) {return (calSrc.get(Calendar.YEAR) - calDes.get(Calendar.YEAR));}if (flag d) {return (int) (millisDiff / D…

FANUC机器人到达某个点位时,为什么不显示@符号?

FANUC机器人到达某个点位时,为什么不显示@符号? 该功能由变量$MNDSP_POSCF = 0(不显示)/1(显示)/2(光标移动该行显示) 控制,该变量设置为不同的值,则启用对应的功能。 如下图所示,为该变量设置不同的值时的对比, 其他常用的系统变量可参考以下内容: 在R寄存器指定速度…

NX二次开发UF_CSYS_map_point 函数介绍

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan UF_CSYS_map_point Defined in: uf_csys.h int UF_CSYS_map_point(int input_csys, double input_point [ 3 ] , int output_csys, double output_point [ 3 ] ) overview 概述 Ma…

小白一文搞懂正则表达式

大学的时候学过,没搞明白,工作的时候学了几次,还是懵逼的状态,写篇入门文字记录下如何快速搞懂正则表达式 首先写几个常用的正则表达式: 1.匹配手机号 1[34578]\d{9} 2.QQ号,第一位不能是0,5位…

如何用Python+Appium实现精准元素定位?教你拥有高效自动化测试技能!

在使用appium做app自动化测试的过程中,可能会遇到元素的属性值不是唯一的情况,导致不能通过find_element_bi_xx()方法定位元素,这个时候我们就可以通过坐标来定位元素。 1,通过绝对坐标定位(不推荐) 在手…

【数据分享】2023年我国省市县三级的瞪羚企业数量(免费获取/Excel/Shp格式)

企业是经济活动的参与主体。一个城市的企业数量决定了这个城市的经济发展水平!比如一个城市的金融企业较多,那这个城市的金融产业肯定比较发达;一个城市的制造业企业较多,那这个城市的制造业肯定比较发达。 之前我们给大家分享了…

【采坑分享】导出文件流responseType:“blob“如何提示报错信息

目录 前言: 采坑之路 总结: 前言: 近日,项目中踩了一个坑分享一下经验,也避免下次遇到方便解决。项目基于vue2axioselement-ui,业务中导出按钮需要直接下载接口中的文件流。正常是没有问题,但…

【分布式】分布式中的时钟

一、物理时钟 vs 逻辑时钟 时钟的存在主要是为了标识事件的发生顺序。 分布式系统不使用物理时钟记录事件,分布式系统中每个节点记录的时间并不一样,即使设置了 NTP 时间同步节点间也存在毫秒级别的偏差 所以需要有另外的方法记录事件顺序关系&#x…

Spring Web MVC

目录 一.简介 二.建立连接(客户端和服务器) 三.请求 1.传递单个参数 2.传递多个参数 3.对象 4.数组/集合 5.JSON 6.URL参数 7.上传文件 8.获取cookie和session (1)获取cookie (2)获取session …

【学习笔记】GameFramework的非官方实例TowerDefense-GameFramework-Demo的流程

一、从游戏开始到打开一个Menu GameStart.unity GameEntry.Builtin.cs ProcedureComponent.cs GameStart.unity->GameFramework->Builtin->Procedure ProcedureLaunch.cs ProcedureSplash.cs ProcedurePreload.cs ProcedureLoadingScene.cs DataTables/Scene.txt Pro…

Table和HashBasedTable的使用案例

------------------- 1.普通使用 package org.example.testhashbasedtable;import com.google.common.collect.HashBasedTable; import com.google.common.collect.Table;import java.util.Map;public class TestHashBasedTable {public static void main(String[] args) {Ta…

17 redis集群方案

1、RedisCluster分布式集群解决方案 为了解决单机内存,并发等瓶颈,可使用此方案解决问题. Redis-cluster是一种服务器Sharding技术,Redis3.0以后版本正式提供支持。 这里的集群是指多主多从,不是一主多从。 2、redis集群的目标…

2023年APMCM亚太杯数学建模竞赛A题思路解析

2023年APMCM亚太赛 A 题: 果实采摘机器人的图像识别 Image Recognition for Fruit-Picking Robots 【请电脑打开本文链接,扫描下方名片中二维码,获取更多资料】 翻译 中国是世界上最大的苹果生产国,年产量约为3500万吨。与此同…

vscode项目推送到git

1、打开项目文件 打开文件后点击vs code左侧工具栏中第三个源代码管理图标,点击初始化仓库,此时会创建一个本地仓库会检查该项目中的文件变更 2、创建远程仓库 点击克隆/下载,复制HTTPS地址 3、添加远程地址 1)图形化操作 2…

【Clang Static Analyzer 代码静态检测工具详细使用教程】

Clang Static Analyzer sudo apt-get install clang-tools scan-build cmake .. scan-build make -j4 编译完成之后会在终端提示在哪里查看报错文档: scan-build: 55 bugs found. scan-build: Run scan-view /tmp/scan-build-2023-11-24-150637-6472-1 to examine bug report…

【Python接口自动化测试】HTTP协议基础详解

前言 了解HTTP协议是做好接口测试的前提与基础。 其中,HTTP与HTTPS有什么区别,HTTP协议与TCP/IP协议分别属于OSI七层模型中的哪一层,这在面试过程中也会经常问到。 HTTP简介 HTTP 即 HyperText Transfer Protocol(超文本传输协…

vue中下载文件后无法打开的坑

今天在项目开发的时候临时要添加个导出功能我就写了一份请求加导出得代码, 代码: //导出按钮放开exportDutySummarizing (dataRangeInfo) {const params {departmentName: dataRangeInfo.name,departmentQode: dataRangeInfo.qode}//拼接所需得urlcons…