文章目录

  • -4 zk的四字母命令
  • -3 如何利用kafka topic存储配置
  • -2 如何查看kafka的__consumer_offsets内容
  • -1 如何将ZK集群变成单ZK
  • 0 暴力强杀所有的测试机器上的java进程
  • 1 清除日志
  • 2 如何利用Zk 的客户端手动设置带换行符的节点内容
  • 3 如何整改kafka集群中的一台机器?

-4 zk的四字母命令

zk启动之后, 可以通过telnet (nc 亦可) 向zk提交相应的命令,比如:

conf
输出相关服务配置的详细信息。
cons
列出所有连接到服务器的客户端的完全的连接 / 会话的详细信息。包括“接受 / 发送”的包数量、会话 id 、操作延迟、最后的操作执行等等信息。
dump
列出未经处理的会话和临时节点。
envi
输出关于服务环境的详细信息(区别于 conf 命令)。
reqs
列出未经处理的请求
ruok
测试服务是否处于正确状态。如果确实如此,那么服务返回“imok ”,否则不做任何相应。
stat
输出关于性能和连接的客户端的列表。
wchs
列出服务器 watch 的详细信息。
wchc
通过 session 列出服务器 watch 的详细信息,它的输出是一个与watch 相关的会话的列表。
wchp
通过路径列出服务器 watch 的详细信息。它输出一个与 session相关的路径。

-3 如何利用kafka topic存储配置

可以参考kafka mirror maker2 的代码 org.apache.kafka.connect.storage.KafkaConfigBackingStore
这里有2个关键点:

  • 存储配置的topic ,只有1个分区(为了保证顺序性)
  • cleanup.policy=compact, 即不会删除分区数据,但是会"压实"数据

-2 如何查看kafka的__consumer_offsets内容

./kafka-console-consumer.sh --bootstrap-server 10.10.10.10:9092 --topic __consumer_offsets --partition 0 --from-beginning --formatter 'kafka.coordinator.group.GroupMetadataManager$OffsetsMessageFormatter'

-1 如何将ZK集群变成单ZK

比起how, 这个场景更有意思的是 why.
笔者经常要手动维护线下的ZK 机器, 有时ZK集群 3个节点,挂了2个,那整个集群都不可用.但恢复挂掉的这2台有时没那么快, 尤其是 云主机有问题时.为了不影响用户使用,可以将存活的节点的配置改成单个节点(standalone)模式启动.
当客户端重启将能正常连上来,至少先顶一阵子…

0 暴力强杀所有的测试机器上的java进程

因为线下的kafka集群在部署时经常是一个kafka 进程 + 一个ZK进程, 三台成一个集群, 线下维护往往不要数据了, 直接暴力地杀所有进程,清所有数据,然后重建.

ps -ef|grep java|grep -v "grep"| awk '{print $2}' |xargs kill -9;

1 清除日志

ls |grep "controller.log"|grep -v -x "controller.log" |xargs rm -rf;
ls |grep "log-cleaner.log"|grep -v -x "log-cleaner.log" |xargs rm -rf;
ls |grep "server.log"|grep -v -x "server.log" |xargs rm -rf;
ls |grep "state-change.log"|grep -v -x "state-change.log" |xargs rm -rf;
ls |grep "gc.log"|grep -v "current" |xargs rm -rf;

2 如何利用Zk 的客户端手动设置带换行符的节点内容

./bin/zkCli.sh set /default/bootstrap "`cat b.txt`"

如该命令, 把要写入ZK节点的内容先写到一个文本中,然后执行.本质就是把文本内容读到,写到ZK中.

3 如何整改kafka集群中的一台机器?

比如一个集群10台机器,有一条我们想换掉,怎么玩? 这里给出一个方案:

1、找新机器先部署好环境,主机名和配置文件(主要是id)和被替换机器一样。
2、被替换机器broker关闭,dns上把域名切到替换机器
3、新机器启动,代替原id的机器恢复服务,数据等它自然追上(如果数据比较多先拷过去都行,数据少自己去追)
但要注意某些地方会长期缓存dns指向(理论上应该极少)

不过还有一个更稳的办法:

  1. 先将producer 迁移到新集群
  2. 等旧集群上消息消费完了
  3. 再把consuemr迁移到新集群.
    这种做法需要 公司基础架构的消息SDK能够动态响应参数

zk kafka常识相关推荐

  1. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(九)安装kafka_2.11-1.1.0

    如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...

  2. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十一)NIFI1.7.1安装

    一.nifi基本配置 1. 修改各节点主机名,修改/etc/hosts文件内容. 192.168.0.120master192.168.0.121slave1192.168.0.122 slave2 ...

  3. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十二)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网。...

    Centos7出现异常:Failed to start LSB: Bring up/down networking. 按照<Kafka:ZK+Kafka+Spark Streaming集群环境搭 ...

  4. Java史上最全的面试题汇总(JVM/Mysql/boot/cloud/zk/kafka/MQ/redis)

    文章目录 Java 基础 1. JDK 和 JRE 有什么区别? 2. == 和 equals 的区别是什么? 3. 两个对象的 hashCode()相同,则 equals()也一定为 true,对吗 ...

  5. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十八):kafka0.10.1 内置性能测试API用法示例...

    消费者测试: ./kafka-consumer-perf-test.sh --zookeeper vm10.60.0.11.com.cn:2181,vm10.60.0.7.com.cn:2181,vm ...

  6. 大数据运维存档(10)Kafka常识整理

    一.kafka概述 1.1.为什么有消息系统 解耦允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束. 冗余消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失 ...

  7. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十九)ES6.2.2 安装Ik中文分词器

    注: elasticsearch 版本6.2.2 1)集群模式,则每个节点都需要安装ik分词,安装插件完毕后需要重启服务,创建mapping前如果有机器未安装分词,则可能该索引可能为RED,需要删除后 ...

  8. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十八)ES6.2.2 增删改查基本操作

    #文档元数据 一个文档不仅仅包含它的数据 ,也包含 元数据 -- 有关 文档的信息. 三个必须的元数据元素如下: ## _index     文档在哪存放 ## _type     文档表示的对象类别 ...

  9. 大数据处理工具Kafka、Zk、Spark

    搭建kafka和zk集群环境 安装环境 MAC操作系统VMware Fusion虚拟机3个centos7服务器 安装虚拟机 飞机票 安装虚拟机Centos系统并安装Docker过程记录 安装包下载 h ...

  10. kafka自带的zk启动_kafka-eagle监控和管理kafka

    kafka-eagle监控和管理kafka 最近想做一个kafka监控,本来准备用zabbix来监控的,需要重复造轮子,本来准备用kafka-Manager的,在GitHub上无意发现了kafka-e ...

最新文章

  1. 全球32家人工智能独角兽公司
  2. java 边界_Java数组边界问题
  3. 设置开机时自动开启和关闭的软件
  4. Linux 下qt 程序打包发布(使用linuxdelpoyqt ,shell 脚本)
  5. 实战CentOS系统部署Hadoop集群服务
  6. 解决libuuid.so.1 no version information available问题
  7. 【NLP】如何利用BERT来做基于阅读理解的信息抽取
  8. 利用.swp文件恢复源文件
  9. textarea 输入框限制字数
  10. 【工程师综合项目二】React + Koa2打造『JS++官网管理后台』
  11. 何小鹏谈财务自由:痛苦彷徨,7块钱的快餐只能偷偷吃
  12. matlab 向量法建数组(推荐)
  13. In the beginning, the world was void and without form…
  14. Java编程:排序算法——冒泡排序
  15. 快速完成单片机毕业设计方法
  16. linux平台 doc转pdf,linux doc ppt 转 pdf
  17. python 线性插值处理_详解Python实现线性插值法
  18. 谷歌浏览器打不开是什么原因
  19. 性价比高一点的蓝牙耳机有哪几款?高性价比蓝牙耳机推荐
  20. 程序设计思想与方法 笔记

热门文章

  1. 计算机设备属于什么会计科目,​机器设备属于什么会计科目
  2. 由于您的系统没有安装html help,win10遇到“您未安装FLASH控件”的提示怎么办
  3. 2020《互联网周刊》年度评选结果揭晓, Smartbi获三项行业大奖
  4. CCNet: Criss-Cross Attention for Semantic Segmentation阅读笔记
  5. 财务分析就是财务报表分析吗?
  6. 如何用GoldWave中文版提取伴奏?
  7. 系统时间与服务器时间同步出错,Win7电脑时间同步出错是怎么回事?系统时间同步失败如何解决?...
  8. 【PAT】敲笨钟 (20 分)
  9. 微信小程序 微信小程序框架API
  10. 使用PS去掉、添加、复制图片中的文字