若代理设置了 auto.create.topics.enable=true,这样还未创建topic就往kafka发送消息时,

会自动创建一个 ${num.partitions}个分区和{default.replication.factor}个副本的主题

创建主题

1.创建一个名称为“kafka-action”的主题,该主题有两个副本,3个分区:

[root@docp-n bin]# ./kafka-topics.sh --create --zookeeper docp-n:2181 --replication-factor 2 --partitions 3 --topic kafka-action
Created topic "kafka-action".

*docp-n:2181  zookeeper所在的ip

zookeeper 必传参数,多个zookeeper用 ‘,’分开。

partitions 用于设置主题分区数,每个线程处理一个分区数据

replication-factor 用于设置主题副本数,每个副本分布在不通节点,不能超过总结点数。如你只有一个节点,但是创建时指定副本数为2,就会报错。

创建主题时,还可以通过config参数设置主题几倍的配置以覆盖默认配置

例如:

kafka-topics.sh --create --zookeeper server-1:2181,server-2:2181 --replacation-factor 2

--partitions 3 --topic config-test --config max.messege.bytes=404800

通过zookeeper客户端可以看到覆盖的相关配置。get /config/topics/config-test

[root@haha bin]# /data/app/zookeeper/bin/zkCli.sh -server localhost:2181

[zk: localhost:2181(CONNECTED) 2] get /brokers/topics/test2
{"version":1,"partitions":{"1":[5],"0":[5]}}
cZxid = 0x25a
ctime = Thu Nov 01 15:25:29 CST 2018
mZxid = 0x25a
mtime = Thu Nov 01 15:25:29 CST 2018
pZxid = 0x25d
cversion = 1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 44
numChildren = 1

可以登录zookeeper客户端查看所创建topic元数据信息,“kafka-action”

[root@docp-n bin]# /data/app/zookeeper/bin/zkCli.sh -server 127.0.0.1:2181
Connecting to docp-n:2181
Welcome to ZooKeeper!
JLine support is enabled
[zk: docp-n:2181(CONNECTING) 0]
WATCHER:: WatchedEvent state:SyncConnected type:None path:null [zk: docp-n:2181(CONNECTED) 0] ls /brokers/topics/kafka-action/partitions
[0, 1, 2]

2.删除kafka主题

(1)手动删除log.dir目录下的分区目录,并删除zookeeper客户端对应的节点,/broker/topics/  && /config/topics

(2)  执行 kafka-topics.sh 脚本删除,如果想通过脚本彻底删除,需要修改启动时加载的配置文件 server.propers中

delete-topic-enable=true  默认为false,否则并未真正删除

[root@docp-n bin]# ./kafka-topics.sh --delete --zookeeper docp-n:2181 --topic test
Topic test is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.

注意控制台打印的消息

3.删除主题

[root@docp-n bin]# ../bin/kafka-topics.sh --delete --zookeeper 127.0.0.1:2181 --topic test
Topic test is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.

4.查看主题

(1)查看所有主题

[root@docp-n bin]# ./kafka-topics.sh --list --zookeeper 127.0.0.1:2181
1ab42b8d882347ef81a19914440bc308
286a9b791be54ca7bda4b65530fde8b4
2dfb690e5a514398879894a56f081520
414a2a3e915b4fd6811a77e6cadf75be
87a9ba31db734577bef86143e95a8b44
__consumer_offsets
b1fe8eb154f5493e90e939dff8031e71
f53def0af82344b796529ba7ab79fe66
hello_topic
kafka-action
log-format
test

(2) 查看某个特定主题信息,不指定topic则查询所有

通过 --describe

[root@docp-n bin]# ./kafka-topics.sh --describe --zookeeper 127.0.0.1:2181 --topic kafka-action
Topic:kafka-action PartitionCount:3 ReplicationFactor:2 Configs:
Topic: kafka-action Partition: 0 Leader: 1 Replicas: 1,5 Isr: 1,5
Topic: kafka-action Partition: 1 Leader: 5 Replicas: 5,0 Isr: 5,0
Topic: kafka-action Partition: 2 Leader: 0 Replicas: 0,1 Isr: 0,1

(3)查看正在同步的主题

通过 --describe 和 under-replicated-partitions命令组合查看 under-replacation状态

[root@docp-n bin]# ./kafka-topics.sh --describe --zookeeper 127.0.0.1:2181 --under-replicated-partitions

(4)查看主题覆盖的配置

通过 describe 和 topics-with-overrides 组合

[root@docp-n bin]# ./kafka-topics.sh --describe --zookeeper 127.0.0.1:2181 --topics-with-override
Topic:__consumer_offsets PartitionCount:50 ReplicationFactor:1 Configs:segment.bytes=104857600,cleanup.policy=compact,compression.type=producer

kafka主题管理的更多相关文章

  1. kafka 主题管理

    对于 kafka 主题(topic)的管理(增删改查),使用最多的便是kafka自带的脚本. 创建主题 kafka提供了自带的 kafka-topics 脚本,用来帮助用户创建主题(topic). b ...

  2. KAFKA 监控管理界面 KAFKA EAGLE 安装

    概述 Kafka Eagle监控系统是一款用来监控Kafka集群的工具,目前更新的版本是v1.2.3,支持管理多个Kafka集群.管理Kafka主题(包含查看.删除.创建等).消费者组合消费者实例监控 ...

  3. Kafka Eagle 管理平台

    Kafka-Eagle简介 源代码地址:https://github.com/smartloli/kafka-eagle Kafka Eagle是什么 Kafka Eagle是一款用于监控和管理Apa ...

  4. 使用Java API创建(create),查看(describe),列举(list),删除(delete)Kafka主题(Topic)

    使用Kafka的同学都知道,我们每次创建Kafka主题(Topic)的时候可以指定分区数和副本数等信息,如果将这些属性配置到server.properties文件中,以后调用Java API生成的主题 ...

  5. Apache Kafka主题 - 架构和分区

    1.卡夫卡话题 在这篇Kafka文章中,我们将学习Kafka主题与Kafka Architecture的整体概念.Kafka中的体系结构包括复制,故障转移以及并行处理.此外,我们还将看到创建Kafka ...

  6. Kafka主题体系架构-复制、故障转移和并行处理

    本文讨论了Kafka主题的体系架构,讨论了如何将分区用于故障转移和并行处理. Kafka主题,日志和分区 Kafka将主题存储在日志中.主题日志分为多个分区.Kafka将日志的分区分布在多个服务器或磁 ...

  7. 深入理解Kafka核心设计及原理(四):主题管理

    转载请注明出处:https://www.cnblogs.com/zjdxr-up/p/16124354.html 目录: 4.1创建主题 4.2 优先副本的选举 4.3 分区重分配 4.4 如何选择合 ...

  8. kafka主题offset各种需求修改方法

    简要:开发中,常常因为需要我们要认为修改消费者实例对kafka某个主题消费的偏移量.具体如何修改?为什么可行?其实很容易,有时候只要我们换一种方式思考,如果我自己实现kafka消费者,我该如何让我们的 ...

  9. 关于Kafka producer管理TCP连接的讨论

    在Kafka中,TCP连接的管理交由底层的Selector类(org.apache.kafka.common.network)来维护.Selector类定义了很多数据结构,其中最核心的当属java.n ...

随机推荐

  1. linux grep进阶

    1.搜寻特定字符串 搜寻特定字符串很简单吧?假设我们要从刚刚的文件当中取得 the 这个特定字符串,最简单的方式就是这样: 那如果想要『反向选择』呢?也就是说,当该行没有 'the' 这个字符串时才显 ...

  2. java实现下载excel功能

    1,获取服务器现有excel文件 public List<Object[]> getObject(String filePath){ log.info("**文件路径为:**&q ...

  3. POJ2456--Aggressive cows(Binary Search) unsolved

    Description Farmer John has built a new long barn, with N (2 <= N <= 100,000) stalls. The stal ...

  4. 第一天---关于环境和java基础

    一.版本管理 git svn 二.Intellj idea快捷键 三.java基础知识

  5. 2.select查询用法

    1.定义查询接口 UserMapper.java package tk.mybatis.simple.mapper; import tk.mybatis.simple.model.SysRole; i ...

  6. 直接端口打印 支持USB接口的打印机吗?解决办法

    直接端口打印 支持USB接口的打印机吗?解决办法 www.MyException.Cn  网友分享于:2013-09-15  浏览:488次       直接端口打印 支持USB接口的打印机吗?问题如 ...

  7. 【抄袭】VB.NET扩展WebBrowser,拥有跳转前获取URL的能力

    来自 http://www.cnblogs.com/yuanjw/archive/2009/02/09/1386789.html 我仅做VB化,并优化了事件消息 Imports System.Comp ...

  8. 一个docker容器中运行多个服务还是弄一堆docker容器运行?

    不建议直接在单个 Docker 容器中运行多个程序. 以 2017年 10 月18 日 Docker 官方支持 Kubernetes 为分水岭计算,Kubernetes 赢得容器编排之战的最终胜利已经 ...

  9. Android Parcelable using Kotlin

    Kotlin 有 extension 可以很方便的让类继承 Parcelable 接口. 项目中引入一个较新版本的 Kotlin 引入 Kotlin extensions classpath &quo ...

  10. JSX 和 template 随想

    就目前而言,我用到的前端页面开发框架主要有两种:以JSX为主的react和以template为主的vue. 虽然这两种方式各有千秋,但我其实更偏爱template多一些.为什么? 相较于灵活的JSX, ...