kafka单机部署、集群部署、命令实操

单机部署

安装配置zookeeper

tar zxf zookeeper-3.4.10.tar.gz -C /usr
cp zoo-sample.cfg zoo.cfg
vi zoo.cfg
    dataDir=/root/zkdata
#启动
./bin/zkServer.sh start zoo.cfg
#状态
./bin/zkServer.sh status
#关闭
./bin/zkServer.sh stop

安装配置kafka

tar zxf kafka_2.11-2.2.0.tgz -C /usr
vi config/server.properties
    listeners=PLAINTEXT://node01:9092
    log.dirs=/usr/kafka-logs
    zookeeper.connect=node01:2181

启动

./bin/kafka-server-start.sh -daemon config/server.properties

关闭

./bin/kafka-server-stop.sh

创建topic及相应分区和备份因子

./bin/kafka-topics.sh --bootstrap-server node01:9092 --create --topic topic01 --partitions 3 --replication-factor 1

创建消费者(阻塞)

./bin/kafka-console-consumer.sh --bootstrap-server node01:9092 --topic topic01 --group group1

创建生产者-进入交互

./bin/kafka-console-producer.sh --broker-list node01:9092 --topic topic01

启动两个同组消费者,在生产者创建消息,可以发现消息被同组消费者瓜分消费

启动两个不同组消费者,在生产者创建消息,可以发现消息被广播至不同组消费者

集群部署

创建另外两个节点node02,node03

配置启动zookeeper

vi zoo.cfg
    server.1=node01:2888:3888
    server.2=node02:2888:3888
    server.3=node03:2888:3888

配置zkid

#node01
echo 1 > /root/zkdata/myid
#node02
echo 2 > /root/zkdata/myid
#node03
echo 3 > /root/zkdata/myid

启动zk集群

./bin/zkServer.sh start zoo.cfg

配置启动kafka

vi ./config/server.properties
        zookeeper.connect=node01:2181,node02:2181,node03:2181
#start
./bin/kafka-server-start.sh -daemon config/server.properties

创建topic及相应分区和备份因子(使用集群服务,创建备份2)

./bin/kafka-topics.sh --bootstrap-server node01:9092,node02:9092,node03:9092 --create --topic topic01 --partitions 3 --replication-factor 2

查看list

./bin/kafka-topics.sh --bootstrap-server node01:9092,node02:9092,node03:9092 --list

查看分区互相备份情况

./bin/kafka-topics.sh --bootstrap-server node01:9092,node02:9092,node03:9092 --describe --topic topic01

修改分区数(只能增、不能减)

./bin/kafka-topics.sh --bootstrap-server node01:9092,node02:9092,node03:9092 --alter --topic topic01 --partitions 4

删除topic

./bin/kafka-topics.sh --bootstrap-server node01:9092,node02:9092,node03:9092 --delete --topic topic02

创建消费者(阻塞)

./bin/kafka-console-consumer.sh --bootstrap-server node01:9092,node02:9092,node03:9092 --topic topic01 --group group1

#添加打印属性
./bin/kafka-console-consumer.sh --bootstrap-server node01:9092,node02:9092,node03:9092 --topic topic01 --group group1 --property print.key=true --property print.value=true --property key.separator=.

#查看组列表
./bin/kafka-consumer-groups.sh --bootstrap-server node01:9092,node02:9092,node03:9092 --list

#查看组详细
./bin/kafka-consumer-groups.sh --bootstrap-server node01:9092,node02:9092,node03:9092 --describe --group group1

创建生产者-进入交互

./bin/kafka-console-producer.sh --broker-list node01:9092,node02:9092,node03:9092 --topic topic01

Original: https://www.cnblogs.com/wod-Y/p/13456026.html
Author: 杨海星
Title: kafka单机部署、集群部署、命令实操

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/592595/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Spring系列19:SpEL详解

    本文内容 SpEL概念 快速入门 关键接口 全面用法 bean定义中使用 SpEL概念 Spring 表达式语言(简称”SpEL”)是一种强大的表达式语言,…

    Java 2023年6月5日
    086
  • JS基础总结

    JS细化知识点总结 1. EcmaSctipt 语法 1.1 语法简介:js代码不能直接写,需要用script标签来包裹 js是一种弱类型的脚本语言,即语法没有严格的要求和限制,任…

    Java 2023年6月8日
    064
  • 模板化的封装,降低业务代码开发

    复杂的问题,往往需要简单的逻辑; 一、业务背景 业务开发是一件复杂且耗时的工程,所以最近几年出了一个很火的概念叫做”低代码”开发,简单的说就是开发人员通过简…

    Java 2023年6月15日
    081
  • Serverless遇到 FinOps: Economical Serverless

    摘要:本文基于FunctionGraph在Serverless 领域的FinOps探索和实践,提出业界首个Serverless函数总成本估计模型 历川:华为云Serverless研…

    Java 2023年6月15日
    066
  • SpringSecurity中的CSRF解读

    从刚开始学习SpringSecurity时,在配置类中一直存在这样一行代码:http.csrfo.disable() 如果没有这行代码导致用户无法被认证。这行代码的含义是:关闭 c…

    Java 2023年6月5日
    059
  • Java 给 Word 文档每一页添加不同图片水印

    Word中设置水印时,可加载图片设置为水印效果,但通常添加水印效果时,会对所有页面都设置成统一效果,如果需要对每一页或者某个页面设置不同的水印效果,则可以参考本文中的方法。下面,将…

    Java 2023年6月7日
    086
  • 项目管理和缺陷跟踪系统 Redmine

    Redmine 概述 Redmine 是用 Ruby 开发的基于 web 的项目管理软件,是用 ROR 框架开发的一套跨平台项目管理系统,支持多种数据库,有不少自己独特的功能,例如…

    Java 2023年6月7日
    070
  • Linux(RedHat、Ubuntu)安装docker

    Linux(RedHat、Ubuntu)安装docker 前言 docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的…

    Java 2023年6月15日
    053
  • 《Thinking In Java》作者:不要使用并发!

    前言 今天纯粹就是带你们来读读书的~最近除了工作,特地买回了自己很喜欢的作者新发售的一本书《On Java》,作者是我的老朋友布鲁斯·埃克尔,在Java领域很有名,你可能没听过他的…

    Java 2023年6月9日
    062
  • Spring大事务到底如何优化?

    所谓的大事务就是耗时比较长的事务。 Spring有两种方式实现事务,分别是 编程式和 声明式两种。 不手动开启事务,mysql 默认自动提交事务,一条语句执行完自动提交。 一、大事…

    Java 2023年5月30日
    072
  • 免费正版 IntelliJ IDEA license 详细指南

    一、前言 IntelliJ IDEA 一直是我非常喜欢的 IDE 自从用上之后就回不了头了,但是 Ultimate 版本的费用十分昂贵,其实 JetBrains 自己就提供了6种免…

    Java 2023年6月6日
    0102
  • 编码中的Adapter,不仅是一种设计模式,更是一种架构理念与解决方案

    大家好,又见面了。 不知道下面这玩意大家有没有见过或者使用过?这是一个 插座转换器。我们都知道日常使用的是 220v的交流电,而国外不同国家使用的电流电压是不一样的(比如日本使用的…

    Java 2023年6月7日
    077
  • 都2020了,还不好好学学泛型?

    一、概述 Java 泛型( generics)是 JDK 1.5 中引入的一个新特性, 泛型提供了 编译时类型安全检测机制,该机制允许开发者在编译时检测到非法的类型。 泛型,即 参…

    Java 2023年6月6日
    071
  • spring mvc org.springframework.beans.BeanInstantiationException: Failed to instantiate [java.util.List]: Specified class is an interface

    spring mvc 异常处理 org.springframework.beans.BeanInstantiationException: Failed to instantiat…

    Java 2023年5月29日
    050
  • Java中你所不知道的null

    先看一个示例,读者可先自行阅读判断输出结果: 上述事例会正确输出:testMethod 分析:首先应该明白的是此处是针对类对方法的调用,而不是对象对方法的调用; 其次,testMe…

    Java 2023年5月29日
    074
  • 认识RocketMQ4.x架构设计

    消息模型 单体的消息模型 RocketMQ消息模型跟其他的消息队列一样 都是 producer – > topic->consumer producer 生…

    Java 2023年6月16日
    069
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球