centos kafka单机离线安装kafka服务化kafka tool连接kafka
a.版本&环境
linux版本:centos7.6
kafka: kafka_2.12
zookeeper:zookeeper_3.6.3(之前已经安装:linux zookeeper安装并服务化-CSDN博客)
java:1.8(之前已经安装)
windows kafka tool: 2.1
b.kafka单机安装
1.切换目录 cd downloads/,利用rz命令,上传kafka 及kafka eagle压缩包至服务器
2.解压文件:tar -zxvf kafka_2.12-2.6.2.tgz
创建文件夹:mdkir -p /opt/tool/kafka
创建文件夹:mdkir -p /home/kafka/log
剪切文件至指定目录:mv kafka_2.12-2.6.2 /opt/tool/kafka/
切换目录:cd /opt/tool/kafka/kafka_2.12-2.6.2/
3.修改配置并开放9092端口
执行:vim config/server.properties,修改以下配置
#机器在集群中的唯一标识, 和zookeeper的myid性质一样,每台服务器的broker.id都不能相同
broker.id=151
#kafka对外提供服务的端口默认是9092 这个IP不能用0.0.0.0这种
listeners=PLAINTEXT://192.168.42.151:9092 advertised.listeners=PLAINTEXT://192.168.42.151:9092
消息存放的目录, 这个目录可以配置为", "逗号分割的表达式, 上面的num.io.threads要大于这个
目录的个数, 如果配置多个目录, 新创建的topic将消息持久化的地方是, 当前以逗号分割的目录中,
哪个分区数最少就放那一个
log.dirs=/home/kafka/log
#每个日志文件删除之前保存的时间, 默认168小时(7天)
#发送到Queue中的消息, 在被消费之后, 不会马上被删掉, 而是有后台进程在4天后去删除
log.retention.hours=96
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
zookeeper.connect=192.168.42.151:2181
#Timeout in ms for connecting to zookeeper, 默认6秒, 改成60秒, 因为systemd文件自启动
kafka时候需要等待zookeeper先启动完毕
zookeeper.connection.timeout.ms=60000
c.kafka测试及常用指令
- 切换目录:cd/opt/tool/kafka/kafka_2.12-2.6.2/bin
2.创建my-test1,my-test topic
./kafka-topics.sh --bootstrap-server 192.168.42.151:9092 --create --topic my-test topic --replication-factor 1 --partitions 3
./kafka-topics.sh --bootstrap-server 192.168.42.151:9092 --create --topic my-test1 topic --replication-factor 1 --partitions 3
3.修改topic分区数
./kafka-topics.sh --bootstrap-server 192.168.42.151:9092 --alter --topic my-test1 topic --partitions 5
4.查看topic列表
./kafka-topics.sh --list --bootstrap-server 192.168.42.151:9092
5.删除topic
./kafka-topics.sh --bootstrap-server 192.168.42.151:9092 --delete --topic my-test topic
6.发布消息
./kafka-console-producer.sh --bootstrap-server 192.168.42.151:9092 --topic my-test1
7.消费消息
./kafka-console-consumer.sh --bootstrap-server 192.168.42.151:9092 --topic my-test1 --group group-test
8.查看消费组列表
./kafka-consumer-groups.sh --bootstrap-server 192.168.42.151:9092 --list
9.查看消费者组偏移量
./kafka-consumer-groups.sh --bootstrap-server 192.168.42.151:9092 --describe --group group-test
10.查看消费组members
./kafka-consumer-groups.sh --bootstrap-server 192.168.42.151:9092 --describe --group group-test --members
./kafka-consumer-groups.sh --bootstrap-server 192.168.42.151:9092 --describe --group group-test --state
./kafka-consumer-groups.sh --bootstrap-server 192.168.42.151:9092 --describe --group group-test --members --verbose
11.指定内容查看消息
./kafka-console-consumer.sh --zookeeper 127.0.0.1:2181 --topic paymentmgt_download_asyn_deal --from-beginning | grep "1291248658964021250"
d.kafka服务化
切换目录:cd /usr/lib/systemd/system
创建文件:cd /usr/lib/systemd/system
打开文件并新增如下内容:vim kafka.service
[Uint]
Description=Apache Kafka server (broker)
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=/opt/tool/java/jdk1.8.0_311
ExecStart=/opt/tool/kafka/kafka_2.12-2.6.2/bin/kafka-server-start.sh -daemon /opt/tool/kafka/kafka_2.12-2.6.2/config/server.properties
ExecStop=/opt/tool/kafka/kafka_2.12-2.6.2/bin//kafka-server-stop.sh
Restart=always
StartLimitInterval=60
StartLimitBurst=86400
[Install]
WantedBy=multi-user.target
使kafka.service立即生效执行命令:systemctl daemon-reload
e.kafka tool连接kafka
开放zookeeper端口:firewall-cmd --zone=public --add-port=2181/tcp --permanent
开放kafka端口:firewall-cmd --zone=public --add-port=2181/tcp --permanent
使增加的端口立即生效:systemctl daemon-reload
如果连接不成功,可以通过查看端口是否被用,来判断zookeeper及kafka是否启动成功:netstat -tunlp |grep 2181
netstat -tunlp |grep 9092
相关文章:
centos kafka单机离线安装kafka服务化kafka tool连接kafka
a.版本&环境 linux版本:centos7.6 kafka: kafka_2.12 zookeeper:zookeeper_3.6.3(之前已经安装:linux zookeeper安装并服务化-CSDN博客) java:1.8(之前已经安装) windows kafka tool: 2.1 b.kafka单机安装 1.切换目录 cd downloads/,利用rz命令࿰…...
QT JSON文件解析
参考博客 https://blog.csdn.net/cpp_learner/article/details/118421096 1 打开文件,读取全部内容 QFile file("../Json/js.json"); if (!file.open(QFile::ReadOnly | QFile::Text)) {qDebug() << "cant open error!";return; }// 读…...
[小白系列]GPU-nvidia-smi指令
nvidia-smi(NVIDIA System Management Interface)是一种命令行实用程序,用于监控和管理NVIDIA GPU(图形处理器)的状态和性能。它提供了一种简单而强大的方式来获取有关GPU的实时信息,并且可以用于诊断、…...
在SQL Server中使用hash join来提高表连接的性能
在SQL Server中使用hash join来提高表连接性能时,需要考虑数据集的大小、索引情况以及查询的具体需求。 在SQL Server中使用hash join来提高表连接性能的情况主要包括以下几种: • 两个表都没有合适的索引:Hash join通常适合当两个表都没有索…...
《Django 5 By Example》阅读笔记:p493-p520
《Django 5 By Example》学习第 17 天,p493-p520 总结,总计 28 页。 一、技术总结 1.internationalization(国际化) vs localization(本地化) (1)18n,L10n,g11n 以前总觉得这两个缩写好难记,今天仔细看了下维基百科…...
【开源】基于SpringBoot框架的网上订餐系统 (计算机毕业设计)+万字毕业论文 T018
系统合集跳转 源码获取链接 一、系统环境 运行环境: 最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 IDE环境: Eclipse,Myeclipse,IDEA或者Spring Tool Suite都可以 tomcat环境: Tomcat 7.x,8.x,9.x版本均可 操作系统…...
数据湖治理最佳实践
如果没有最佳实践,存储可能会变得无法维护。自动化数据质量、生命周期和隐私功能可持续清理/移动数据湖中的数据。数据湖正成为企业从大数据中提取价值的一种日益可行的解决方案,对于早期采用者和新用户来说都是合理的下一步。在独立的逻辑区域中随时可用…...
基于php求职招聘系统设计
摘要 随着社会信息化时代的到来,如今人们社会的生活节奏普遍加快,人们对于工作效率的要求也越来越高,企业 举办招聘会耗时耗财,个人参加招聘会漫无目的寻找不到“方向”,网络搜索工作量目的性不强,信息量繁…...
ensp实验-vrrp多网关配置
一、交换机与路由的配置区别 1. 角色定义交换机: Master 或 Backup: 交换机通常作为 Master 或 Backup 设备参与 VRRP,负责在主设备故障时接替其工作。路由器: Master 或 Backup: 路由器同样可以作为 Master 或 Backup 设备…...
Ajax--实现检测用户名是否存在功能
目录 (一)什么是Ajax (二)同步交互与异步交互 (三)AJAX常见应用情景 (四)AJAX的优缺点 (五)使用jQuery实现AJAX 1.使用JQuery中的ajax方法实现步骤…...
【代码pycharm】动手学深度学习v2-09 Softmax 回归 + 损失函数 + 图片分类数据集
课程链接 1.读取图像分类数据集 import matplotlib.pyplot as plt import torch import torchvision from torch.utils import data from torchvision import transforms from d2l import torch as d2l d2l.use_svg_display() #读取数据集 transtransforms.ToTensor() mnist_…...
设计模式:24、访问者模式
目录 0、定义 1、访问者模式的五种角色 2、访问者模式的UML类图 3、示例代码 0、定义 表示一个作用于某对象结构中的各个元素的操作。它可以在不改变各个元素的类的前提下,定义作用于这些元素的新操作。 1、访问者模式的五种角色 抽象元素(Element…...
基于JAVA的旅游网站系统设计
摘要 随着信息技术和网络技术的迅速发展,人们的生活质量和观念也在发生着改变,各地争相发展旅游业,传统的 旅游社已经无法满足人们的需求,旅游网站将突破传统在时间和地域的限制,成为方便、快捷、安全、可靠的旅游 方…...
网络安全产品之认识防火墙
防火墙是一种网络安全产品,它设置在不同网络(如可信任的企业内部网和不可信的公共网)或网络安全域之间,通过监测、限制、更改跨越防火墙的数据流,尽可能地对外部屏蔽网络内部的信息、结构和运行状况,以此来…...
nginx反向代理(负载均衡)和tomcat介绍
nginx的代理 负载均衡 负载均衡的算法 负载均衡的架构 基于ip的七层代理 upstream模块要写在http模块中 七层代理的调用要写在location模块中 轮询 加权轮询 最小连接数 ip_Hash URL_HASH 基于域名的七层代理 配置主机 给其余客户机配置域名 给所有机器做域名映射 四层代理…...
Microsoft Azure 在线技术公开课:生成式 AI 基础知识
课程介绍 参加我们的生成式 AI 基础知识公开课,了解如何将最新 AI 进展应用到你的工作中。你将了解有关语言模型和生成式 AI 应用程序的基础知识。此外,你还将了解 Azure OpenAI 服务如何通过文本、代码、图像生成、自然语言摘要和语义搜索助你实现成果…...
lnmp+discuz论坛 附实验:搭建discuz论坛
Inmpdiscuz论坛 Inmp: t: linux操作系统 nr: nginx前端页面 me: mysql数据库 账号密码,等等都是保存在这个数据库里面 p: php——nginx擅长处理的是静态页面,页面登录账户,需要请求到数据库,通过php把动态请求转发到数据库 n…...
谷粒商城—分布式高级①.md
1. ELASTICSEARCH 1、安装elastic search dokcer中安装elastic search (1)下载ealastic search和kibana docker pull elasticsearch:7.6.2 docker pull kibana:7.6.2(2)配置 mkdir -p /mydata/elasticsearch/config mkdir -p /mydata/elasticsearch/data echo "h…...
Unity开发配置不足,卡顿崩溃怎么办?
在游戏开发和虚拟现实等领域,Unity 软件以其强大的功能和广泛的适用性成为了众多开发者的首选。然而,要充分发挥 Unity 的性能,一台高性能的电脑设备是必不可少的。今天,我要向大家介绍川翔云电脑,它为 Unity 开发者提…...
在 Linux 上以 All-in-One 模式安装 kubernetes v1.22.12 kubesphere v3.4.1
KubeSphere4.1安装文档 在 Kubernetes 上快速安装 KubeSphere 在 Linux 上以 All-in-One 模式安装 kubernetes v1.22.12 kubesphere v3.4.1 官方文档:在 Linux 上以 All-in-One 模式安装 KubeSphere 下载文件 KubeKey git地址Releases kubesphere/kubekey 或 …...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
线程与协程
1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指:像函数调用/返回一样轻量地完成任务切换。 举例说明: 当你在程序中写一个函数调用: funcA() 然后 funcA 执行完后返回&…...
基于服务器使用 apt 安装、配置 Nginx
🧾 一、查看可安装的 Nginx 版本 首先,你可以运行以下命令查看可用版本: apt-cache madison nginx-core输出示例: nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...
什么是Ansible Jinja2
理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具,可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板,允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板,并通…...
AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...
Java + Spring Boot + Mybatis 实现批量插入
在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法:使用 MyBatis 的 <foreach> 标签和批处理模式(ExecutorType.BATCH)。 方法一:使用 XML 的 <foreach> 标签ÿ…...
