前言

kafka 3.0之前的版本需要依赖zookeeper,3.0版本之后可不依赖zookeeper。

基于zookeeper的安装步骤

节点IP:172.50.13.103

kafka版本:2.7.0

  1. 下载安装包:
wget http://mirrors.ustc.edu.cn/apache/kafka/2.7.0/kafka_2.13-2.7.0.tgz
  1. 解压:
tar xf ./kafka_2.13-2.7.0.tgz
  1. 启动zookeeper:
/usr/local/kafka_2.13-2.7.0/bin/zookeeper-server-start.sh -daemon /usr/local/kafka_2.13-2.7.0/config/zookeeper.properties
  1. 启动kafka(注意修改IP
# 修改文件
sed -i "s@#listeners=PLAINTEXT://:9092@listeners=PLAINTEXT://172.50.13.103:9092@g" /usr/local/kafka_2.13-2.7.0/config/server.properties
# 启动
/usr/local/kafka_2.13-2.7.0/bin/kafka-server-start.sh -daemon /usr/local/kafka_2.13-2.7.0/config/server.properties
  1. 验证:(注意修改IP
# 启动消费者,消费名为test的topic
/usr/local/kafka_2.13-2.7.0/bin/kafka-console-consumer.sh --bootstrap-server 172.50.13.103:9092 --topic test --from-beginning # 启动生产者,向名为test的topic生产数据
/usr/local/kafka_2.13-2.7.0/bin/kafka-console-producer.sh --broker-list 172.50.13.103:9092 --topic test # 在生产者终端输入随意字符串,比如 `hello`,在消费者终端出现相应字符串,说明启动成功

基于kRaft的安装步骤

节点IP:192.168.3.23

kafka版本:3.4.0

  1. 下载安装包并解压,修改配置文件config/kraft/server.properties
  • node.id:默认为1,如果修改该值,需要同步修改controller.quorum.voters。例如node.id改为100,controller.quorum.voters需要改为100@xxx

  • advertised.listeners:默认为PLAINTEXT://locahost:9092,即只监听本机的9092端口,如果需要开放给其他服务器,则应该修改该参数为本机IP

  • log.dirs:日志目录路径,因为kafka的数据以日志形式存放,其实也就是数据存储目录,默认在/tmp目录。

  • log.retention.hours:日志保留时长,单位小时,默认168小时。

  • auto.create.topics.enable:自动创建topic,配置文件里面默认没有这个参数,默认为true。若需要关闭自动创建topic,可添加该参数并改为false

  1. 生成uuid。如果需要部署集群,各实例的UUID应统一。
KAFKA_CLUSTER_ID="$(bin/kafka-storage.sh random-uuid)"
  1. 初始化log目录(可以修改config/kraft/server.properties来修改log目录的路径)
bin/kafka-storage.sh format -t $KAFKA_CLUSTER_ID -c config/kraft/server.properties
  1. 启动
bin/kafka-server-start.sh -daemon config/kraft/server.properties
  1. 创建topic
./bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server 192.168.3.23:9092
  1. 查看topic的描述信息
./bin/kafka-topics.sh --describe --topic quickstart-events --bootstrap-server 192.168.3.23:9092
  1. 启动生产者向topic写数据
./bin/kafka-console-producer.sh --topic quickstart-events --bootstrap-server 192.168.3.23:9092
  1. 读取消息
./bin/kafka-console-consumer.sh --topic maxwell --from-beginning --bootstrap-server 192.168.3.23:9092

停止zookeeper和kafka

  1. 停止kafka
bin/kafka-server-stop.sh
  1. 停止zookeeper
bin/zookeeper-server-stop.sh

[kafka]部署安装单节点的更多相关文章

  1. HyperLedger Fabric 1.1 手动部署单机单节点

    手动部署单机单节点 之前发布过官方的e2e部署方案,由于环境或是访问权限等各种问题,还是有相当一部分码友无法成功跑起来,故此,本章将来一次纯手动操作的集群部署. 主要需要的步骤如下: 1:环境整理 2 ...

  2. Cloudera Manager安装之利用parcels方式安装单节点集群(包含最新稳定版本或指定版本的安装)(添加服务)(CentOS6.5)(四)

    不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师      人工智能躺过的坑          ...

  3. Dubbo入门到精通学习笔记(九):简易版支付系统介绍、部署(单节点)

    文章目录 部署(单节点) 一.前期准备 二.对部署环境进行规划 创建数据库 调整公共配置文件 应用部署前期准备 部署服务 部署 Web 应用 部署定时任务 一. 工程结构 第三方支付系统架构 pay- ...

  4. (一)Hadoop1.2.1安装——单节点方式和单机伪分布方式

    Hadoop1.2.1安装——单节点方式和单机伪分布方式 一.   需求部分 在Linux上安装Hadoop之前,需要先安装两个程序: 1)JDK 1.6(或更高版本).Hadoop是用Java编写的 ...

  5. install-newton部署安装--------控制节点

    #################################################################################################### ...

  6. 记录一个奇葩的问题:k8s集群中master节点上部署一个单节点的nacos,导致master节点状态不在线

    情况详细描述; k8s集群,一台master,两台worker 在master节点上部署一个单节点的nacos,导致master节点状态不在线(不论是否修改nacos的默认端口号都会导致master节 ...

  7. 手动部署一个单节点kubernetes

    目录 简要说明 安装环境说明 部署 生成相关证书 证书类型说明 安装cfssl证书生成工具 生成CA证书 生成Kubernetes master节点使用的证书 生成kubectl证书 生成kube-p ...

  8. ubuntu18.04使用kubeadm部署k8s单节点

    实验目的: 体验kubeadm部署k8s服务,全流程体验! 实验环境: ubuntu18.04 联网在线部署 kubeadm 01.系统检查 节点主机名唯一,建议写入/etc/hosts 禁止swap ...

  9. Rancher 系列文章-RHEL7.8 离线有代理条件下安装单节点 Rancher

    一 基础信息 1.1 前提 本次安装的为 20220129 最新版:Rancher v2.6.3 VM 版本为 RHEL 7.8, 7.9 或 8.2, 8.3, 8.4(Rancher 官网要求) ...

  10. install-newton部署安装--------计算节点部署安装

    #################################################################################################### ...

随机推荐

  1. 2023-04-05:做甜点需要购买配料,目前共有n种基料和m种配料可供选购。 制作甜点需要遵循以下几条规则: 必须选择1种基料;可以添加0种、1种或多种配料,每种类型的配料最多添加2份, 给定长度为

    2023-04-05:做甜点需要购买配料,目前共有n种基料和m种配料可供选购. 制作甜点需要遵循以下几条规则: 必须选择1种基料:可以添加0种.1种或多种配料,每种类型的配料最多添加2份, 给定长度为 ...

  2. Selenium - 元素操作(5) - iframe切换

    Selenium - 元素操作 iframe切换 很多时候定位元素时候总是提示元素定位不到的问题,明明元素就在那里,这个时候就要关注你所 定位的元素是否在frame和iframe里面: frame标签 ...

  3. Python分割多空格字符方法

    问题: 现有一个字符串 "1 + 5" ,想要获取 1,+,5 这三个元素 做法: str.split(' ') ['1', '', '', '', '', '', '+', '' ...

  4. 【重学C++】01| C++ 如何进行内存资源管理?

    文章首发 [重学C++]01| C++ 如何进行内存资源管理? 前言 大家好,我是只讲技术干货的会玩code,今天是[重学C++]的第一讲,我们来学习下C++的内存管理. 与java.golang等自 ...

  5. Midjourney|文心一格prompt教程[进阶篇]:Midjourney Prompt 高级参数、各版本差异、官方提供常见问题

    Midjourney|文心一格prompt教程[进阶篇]:Midjourney Prompt 高级参数.各版本差异.官方提供常见问题 1.Midjourney Prompt 高级参数 Quality ...

  6. Kali系统 连接 Xshell

    1> 进入kali系统,修改ssh配置文件:vi /etc/ssh/sshd_config 2> 将PermitRootLogin without-password修改为:PermitRo ...

  7. SpringBoot连接Redis失败报错:Unable to connect to Redis; (小白篇)

    学习redis一段时间了,现在开始使用springboot整合redis,实现Java与redis数据库的连接与一系列的使用. 但刚开始就给我来了个下马威,直接寄,连接不上redis,在swagger ...

  8. [C#] FFmpeg 音视频开发总结

    为什么选择FFmpeg? 延迟低,参数可控,相关函数方便查询,是选择FFmpeg作为编解码器最主要原因,如果是处理实时流,要求低延迟,最好选择是FFmpeg. 如果需要用Opencv或者C#的Emgu ...

  9. Vue——vuex使用、Router使用、localstorage、sessionstorage和cookie

    vuex使用 # vuex :状态管理器--->存数据(变量)的地方,所有组件都可以操作 在Vue中实现集中式状态(数据)管理的一个Vue插件,对vue应用中多个组件的共享状态进行集中式的管理( ...

  10. 【VS Code 与 Qt6】运用事件过滤器批量操作子级组件

    如果某个派生自 QObject 的类重写 eventFilter 方法,那它就成了事件过滤器(Event Filter).该方法的声明如下: virtual bool eventFilter(QObj ...