Kafka集群部署
文章目录
- 一、实例配置
- 二 、zookeeper集群安装
- 三、kafka集群安装
- 四、验证
没有提示,所有机器都执行
在kafka集群中引入zookeeper,主要是为了管理kafka集群的broker。负责管理集群的元数据信息,确保 Kafka 集群的高可用性、高性能和高可靠性。
一、实例配置
| IP | 用途 |
|---|---|
| 192.168.0.217 | kafka、zk |
| 192.168.0.218 | kafka、zk |
| 192.168.0.219 | kafka、zk |
二 、zookeeper集群安装
- 解压zk安装包
$ tar xf apache-zookeeper-3.6.2-bin.tar.gz
$ mv apache-zookeeper-3.6.2-bin /data/zookeeper
- 修改zookeeper配置文件
$ vim /data/zookeeper/conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/data
clientPort=2181
maxClientCnxns=512
server.217=192.168.0.217:2888:3888
server.218=192.168.0.218:2888:3888
server.219=192.168.0.219:2888:3888$ mkdir /data/zookeeper/data
#根据实例自行修改
$ echo 217 > /data/zookeeper/data/myid
- 托管到systemd
$ vim /usr/lib/systemd/system/zookeeper.service
[Unit]
Description=Apache Zookeeper service
Requires=network.target
After=network.target[Service]
Type=forking
Environment=JAVA_HOME=/usr/local/java
ExecStart=/data/zookeeper/bin/zkServer.sh start
ExecStop=/data/zookeeper/bin/zkServer.sh stop
Restart=on-failure
RestartSec=10s[Install]
WantedBy=multi-user.target$ systemctl daemon-reload
- 启动zk
$ systemctl start zookeeper
三、kafka集群安装
- 解压kafka安装包
$ tar xf kafka_2.12-2.6.0.tgz
$ mv kafka_2.12-2.6.0 /data/kafka
- 修改kafka配置
$ vim /data/kafka/config/server.properties
# 每个实例不同
broker.id=217
listeners=PLAINTEXT://192.168.0.217:9092 #
advertised.listeners=PLAINTEXT://192.168.0.217:9092 #
# kafka存储日志文件的目录
log.dirs=/data/kafka/kafka-logs
# 存储消费者偏移量的主题的副本因子
offsets.topic.replication.factor=3
# 设置事务日志主题的副本因子
transaction.state.log.replication.factor=3
log.retention.hours=48 # 数据保留48小时
zookeeper.connect=192.168.0.217:2181,192.168.0.218:2181,192.168.0.219:2181 #$ mkdir /data/kafka/kafka-logs
- 托管到systemd
$ vim /usr/lib/systemd/system/kafka.service
[Unit]
Description=Apache Kafka server
Documentation=http://kafka.apache.org/documentation.html
Requires=network.target remote-fs.target
After=network.target remote-fs.target zookeeper.service[Service]
Type=forking
Environment=JAVA_HOME=/usr/local/java
ExecStart=/data/kafka/bin/kafka-server-start.sh -daemon /data/kafka/config/server.properties
ExecStop=/data/kafka/bin/kafka-server-stop.sh /data/kafka/config/server.properties
Restart=on-failure
RestartSec=10s[Install]
WantedBy=multi-user.target$ systemctl daemon-reload
- 启动kafka
$ systemctl start kafka
四、验证
- 登录zookeeper查看kafka信息
/data/zookeeper/bin/zkCli.sh
> ls /brokers/ids
[217, 218, 219]
> get /brokers/ids/217
可以看到kafka已经注册到zookeeper
相关文章:
Kafka集群部署
文章目录 一、实例配置二 、zookeeper集群安装三、kafka集群安装四、验证 没有提示,所有机器都执行 在kafka集群中引入zookeeper,主要是为了管理kafka集群的broker。负责管理集群的元数据信息,确保 Kafka 集群的高可用性、高性能和高可靠性。…...
软件测试|深入理解SQL CROSS JOIN:交叉连接
简介 在SQL查询中,CROSS JOIN是一种用于从两个或多个表中获取所有可能组合的连接方式。它不依赖于任何关联条件,而是返回两个表中的每一行与另一个表中的每一行的所有组合。CROSS JOIN可以用于生成笛卡尔积,它在某些情况下非常有用ÿ…...
数据权限-模型简要分析
权限管控可以通俗的理解为权力限制,即不同的人由于拥有不同权力,他所看到的、能使用的可能不一样。对应到一个应用系统,其实就是一个用户可能拥有不同的数据权限(看到的)和操作权限(使用的)。 …...
echarts柱状图加单位,底部文本溢出展示
刚开始设置了半天都不展示单位,后来发现是被挡住了,需要调高top值 // 基于准备好的dom,初始化echarts实例var myChart echarts.init(document.getElementById("echartD"));rankOption {// backgroundColor: #00265f,tooltip: {…...
x-cmd pkg | gh - GitHub 官方 CLI
目录 简介首次用户功能特点与 x-cmd gh 模块的关系相关作品进一步探索 简介 gh,是由 GitHub 官方使用 Go 语言开发和维护的命令行工具,旨在脚本或是命令行中便捷管理和操作 GitHub 的工作流程。 注意: 由于 x-cmd 提供了同名模块,因此使用官…...
Python解析XML,简化复杂数据操作的最佳工具!
更多Python学习内容:ipengtao.com XML(可扩展标记语言)是一种常见的文本文件格式,用于存储和交换数据。Python提供了多种库和模块,用于解析和操作XML文件。本文将深入探讨如何使用Python操作XML文件,包括XM…...
rpm数据库被破坏,无法使用yum
转载说明:如果您喜欢这篇文章并打算转载它,请私信作者取得授权。感谢您喜爱本文,请文明转载,谢谢。 问题描述: 云服务器在安装了开源的HIDS插件后,发现安装了插件的服务器全部突然无法正常使用yum安装软件…...
国标GB28181视频监控EasyCVR平台:视频集中录制存储/云端录像功能及操作介绍
安防视频监控系统EasyCVR视频综合管理平台,采用了开放式的网络结构,可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力,同时还具备权限管理、设…...
Wargames与bash知识11
Wargames与bash知识11 bandit19 关卡提示: 要获得对下一级别的访问权限,您应该使用家目录中的setuid二进制文件。在不带参数的情况下执行它,以了解如何使用。在使用setuid二进制文件后,可以在通常的位置(/etc/bandit…...
Python 基础(一):基本语句
目录 1 条件语句2 循环语句2.1 for 循环2.2 while 循环2.3 break2.4 continue 3 pass 语句 1 条件语句 在进行逻辑判断时,我们需要用到条件语句,Python 提供了 if、elif、else 来进行逻辑判断。格式如下所示: if 判断条件1:执行语句1... el…...
Hibernate实战之操作MySQL数据库(2024-1-8)
Hibernate实战之操作MySQL数据库 2024.1.8 前提环境(JavaMySQLNavicatVS Code)1、Hibernate简介1.1 了解HQL 2、MySQL数据库建表2.1 编写SQL脚本2.2 MySQL执行脚本 3、Java操作MySQL实例(Hibernate)3.1 准备依赖的第三方jar包3.2 …...
【Spring Boot 3】【数据源】自定义JDBC多数据源
【Spring Boot 3】【数据源】自定义JDBC多数据源 背景介绍开发环境开发步骤及源码工程目录结构总结背景 软件开发是一门实践性科学,对大多数人来说,学习一种新技术不是一开始就去深究其原理,而是先从做出一个可工作的DEMO入手。但在我个人学习和工作经历中,每次学习新技术…...
番茄工作法
番茄工作法是一种时间管理方法,主要适用于专注工作。它的基本步骤包括: 设定一个25分钟的闹钟。默念三二一(321法则),开始全身心投入工作。用专注的状态高效工作25分钟,不允许走神。如果做到了步骤3&#…...
【uniapp】调用阿里云OCR图片识别文字:
文章目录 一、效果:二、实现: 一、效果: 二、实现: 【阿里官方】高精版OCR文字识别【最新版】-云市场-阿里云 <template><view class"container"><!-- 选择图片 --><button click"imageO…...
软考高级选择考哪个好?
📒软考高级总共5个科目,同样是高级证书,认可度也有区别! 大家一般在「信息系统项目管理师」✔️和「系统架构设计师」✔️二选一 1️⃣信息系统项目管理师 ❤️信息系统项目管理师也叫「高项」,考试内容主要是「项目管理」相关&am…...
在云服务器ECS上用Python写一个搜索引擎
在云服务器ECS上用Python写一个搜索引擎 一、场景介绍二、搜索引擎的组成2.1 网页的爬取及排序2.2 用户使用搜索引擎进行搜索 三、操作步骤3.1 环境准备3.2 安装Anaconda3.3 安装Streamlit3.4 下载搜索引擎代码3.5 运行搜索引擎 四、常见问题4.1 运行setup.py时可能的问题4.2 如…...
Python在智能手机芯片研发
Python在智能手机芯片研发中扮演着重要的角色。以下是几个方面的重要性: 快速原型设计:Python具有简洁易读的语法和丰富的第三方库,使工程师能够快速构建原型和进行快速迭代。这对于芯片研发来说,可以加快开发速度,减少…...
K8S学习指南(70)-K8S中的informa机制
引言 在 Kubernetes 集群中,Informer 是一种重要的机制,用于监控和处理集群中资源对象的变化。它是基于观察者模式设计的,允许开发者注册对某类资源对象的关注,并在对象发生变化时得到通知。本文将深入介绍 Kubernetes 中的 Info…...
「MCU」SD NAND芯片之国产新选择优秀
文章目录 前言 传统SD卡和可贴片SD卡 传统SD卡 可贴片SD卡 实际使用 总结 前言 随着目前时代的快速发展,即使是使用MCU的项目上也经常有大数据存储的需求。可以看到经常有小伙伴这样提问: 大家好,请问有没有SD卡芯片,可以…...
【QML COOK】- 002-添加一个图片
1. 编辑main.qml import QtQuickWindow {width: 800height: 800visible: truetitle: qsTr("Hello World")Image {anchors.fill: parentsource: "qrc:/Resources/Images/arrow.png"} }将Window的width和height都改成800,因为我们要添加的图片大…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存
文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...
宇树科技,改名了!
提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...
BLEU评分:机器翻译质量评估的黄金标准
BLEU评分:机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域,衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标,自2002年由IBM的Kishore Papineni等人提出以来,…...
GraphQL 实战篇:Apollo Client 配置与缓存
GraphQL 实战篇:Apollo Client 配置与缓存 上一篇:GraphQL 入门篇:基础查询语法 依旧和上一篇的笔记一样,主实操,没啥过多的细节讲解,代码具体在: https://github.com/GoldenaArcher/graphql…...
aardio 自动识别验证码输入
技术尝试 上周在发学习日志时有网友提议“在网页上识别验证码”,于是尝试整合图像识别与网页自动化技术,完成了这套模拟登录流程。核心思路是:截图验证码→OCR识别→自动填充表单→提交并验证结果。 代码在这里 import soImage; import we…...
