做性能测试时,kafka消息队列比较长,让程序自己消费完毕需要等待很长时间。就需要快速清理kafka队列

清理方式把 这kafak manager + zookeeper + kafka 这些应用情况,复制成一个备份文件夹。当需要清理时,把在使用的kafka +zookeeper  文件夹删除,在从备份文件还原回去。

这样就作成几个脚本

1、清理环境clen_envionment.sh, 这个只执行一次,需要把 kafka 和zookeeper的路径填写正确。如果存在备份文件就不需要执行这个脚本,

#要先导出kafka topic
#========zookeeper
#stop zookeeper
/app/zookeeper/bin/zkServer.sh stop;
ps -ef|grep zookeeper |grep -v grep|awk '{print $2}'|xargs kill -9;
ps -aef |grep zookeeper; #clean zookeeper data
ls -l /app/zookeeper/data/version-2/;
rm -rf /app/zookeeper/data/version-2/;
rm -rf /app/zookeeper/logs/*;
rm -rf /app/zookeeper_backup;
rm -rf /app/zookeeper_org;
sleep 5;
#backup zookeeper file
cp -rp /app/zookeeper/ /app/zookeeper_backup;
cp -rp /app/zookeeper/ /app/zookeeper_org;
ps -aef |grep zookeeper; # stop kafka
/app/kafka_cluster/bin/kafka-server-stop.sh ;
# 如果还存在,继续杀死
ps -ef|grep kafka_cluster |grep -v grep|awk '{print $2}'|xargs kill -9;
ps -aef |grep kafka_cluster;
#clean tow log folder
rm -rf /app/kafka_cluster/kafka-logs/*;
rm -rf /app/kafka_cluster/logs/*;
rm -rf /app/kafka_cluster_org/;
rm -rf /app/kafka_cluster_backup/;
sleep 5;
#backup kafka file
cp -rp /app/kafka_cluster/ /app/kafka_cluster_org/;
cp -rp /app/kafka_cluster/ /app/kafka_cluster_backup/;

 2、初始化zookeeper脚本

#!/bin/bash
echo "停止zookeeper服务......"
/app/zookeeper/bin/zkServer.sh stop
sleep 3
echo "初始化zookeeper安装目录......"
rm -rf /app/zookeeper
cp -rp /app/zookeeper_backup /app/zookeeper
echo "启动zookeeper服务......"
/app/zookeeper/bin/zkServer.sh start
result=`ps -ef|grep "/app/zookeeper/"|grep -v grep|awk '{print $2}'`
echo -e "\033[42;30m zookeeper服务的进程号为----$result \033[0m"

  3、初始化kafka脚本

#!/bin/bash
kafka_cluster="kafka_cluster"
kafka_path="/app/"$kafka_cluster
kafka_backup_path="/app/"$kafka_cluster"_backup"
echo "停止kafka服务....."
$kafka_path/bin/kafka-server-stop.sh
sleep 10
ps -ef|grep $kafka_cluster |grep -v grep|awk '{print $2}'|xargs kill -9
#删除还原kafak
if [[ -d $kafka_backup_path && ${#kafka_path} -ge 8 ]];then
echo "kafka_backup_path dir is exsit...."
echo "the kafka folder is :$kafka_path , deleting $kafka_path"
#rm -rf $KAFKA_PATH
echo "the kafka backup folder is :$kafka_backup_path , copying file from $kafka_backup_path to $kafka_path"
#cp -rp $KAFKA_BAKE_PATH $KAFKA_PATH
sleep 20
else
echo "kafka_backup_path : $kafka_backup_path is not exist , exit process..."
exit 1
fi echo "准备启动kafka服务......"
$kafka_path/bin/kafka-server-start.sh -daemon $kafka_path/config/server.properties
result=`ps -ef|grep $kafka_cluster|grep -v grep|awk '{print $2}'`
echo -e "\033[42;30m kafka服务的进程号为----$result \033[0m"

4、创建topic脚本

#!/bin/bash
topic_file="/home/root/topics.txt"
ZK_DIR="192.168.53.125:2181,192.168.53.126:2181,192.168.53.127:2181"
CMD="/app/kafka_cluster/bin/kafka-topics.sh" for line in `cat $topic_file`
do
$CMD --create --zookeeper $ZK_DIR --replication-facto --partitions --topic $line
done

topic文件如下

[root@fkafka-01:/home/root]$cat topics.txt
test1
test2

 

 如果需要清理 ,执行如下顺序步骤

停止kafka-manager > 停止/启动zookeeper > 停止/启动 kafka > 启动kafka-manager >启动kafka manager

#停止kafka

ps -ef|grep manager |grep -v grep|awk '{print $2}'|xargs kill -9
cd

#恢复zookeeper 并启动
./init_zk.sh

#恢复kafka 并启动
cd /app/kafka-manager-1.3.0.7/

#kafka manager启动
rm RUNNING_PID
nohup bin/kafka-manager -Dconfig.file=conf/application.conf -Dhttp.port=9000 &

#创建topic

./create-topics.sh

kafak manager + zookeeper + kafka 消费队列快速清除的更多相关文章

  1. 使用Cloudera Manager部署Kafka消息队列

    使用Cloudera Manager部署Kafka消息队列 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.下载需要安装的Kafka版本 1>.查看Cloudera Dis ...

  2. 公司内部一次关于kafka消息队列消费积压故障复盘分享

    背景现象 1.20晚上8点业务线开始切换LBS相关流量,在之后的1个小时时间内,积压量呈上升趋势,一路到达50W左右,第二天的图没贴出具体是50W数字,以下是第一天晚上的贴图部分. 现象一: 现象二: ...

  3. Redis&MongoDB&Zookeeper&Kafka

    目录 Redis MongoDB Zookeeper Kafka Redis 概念 Redis是NoSQL中比较常典型的一个非关系型数据库,在日常工作中也是最为常见的.Redis是一个由C语言编写的开 ...

  4. 涨姿势了解一下Kafka消费位移可好?

    摘要:Kafka中的位移是个极其重要的概念,因为数据一致性.准确性是一个很重要的语义,我们都不希望消息重复消费或者丢失.而位移就是控制消费进度的大佬.本文就详细聊聊kafka消费位移的那些事,包括: ...

  5. zookeeper+kafka集群安装之二

    zookeeper+kafka集群安装之二 此为上一篇文章的续篇, kafka安装需要依赖zookeeper, 本文与上一篇文章都是真正分布式安装配置, 可以直接用于生产环境. zookeeper安装 ...

  6. Zookeeper+Kafka完全分布式实战部署

    Zookeeper+Kafka完全分布式实战部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 其实我之前部署过kafak和zookeeper的完全分布式,集群是可以正常使用没错, ...

  7. kafka消息队列的简单理解

    kafka在大数据.分布式架构中都很流行.kafka可以进行流式计算,也可以做为日志系统,还可以用于消息队列. 本篇主要是消息队列相关的知识. 零.kafka作为消息队列的优点: 分布式的系统 高吞吐 ...

  8. Kafka:docker安装Kafka消息队列

    安装之前先看下图 Kafka基础架构及术语  Kafka基本组成 Kafka cluster: Kafka消息队列(存储消息的队列组件) Zookeeper: 注册中心(kafka集群依赖zookee ...

  9. Zookeeper+Kafka集群部署(转)

    Zookeeper+Kafka集群部署 主机规划: 10.200.3.85  Kafka+ZooKeeper 10.200.3.86  Kafka+ZooKeeper 10.200.3.87  Kaf ...

随机推荐

  1. Windows平台查看端口占用的程序

    一.方法:管理员权限打开Cmd窗口:netstat -obna

  2. c++10进制转换为任意2-16进制数字

    #include<stdio.h> #include<stdlib.h> #include<iostream> using namespace std; int m ...

  3. MACD底背离选股公式——通达信、同花顺

    {底背离,通达信版.同花顺版} DIFF:=EMA(CLOSE,) - EMA(CLOSE,); DEA:=EMA(DIFF,); MACD:=*(DIFF-DEA); QZQ:=BARSLAST(R ...

  4. Android 调用webservice并解析

    这是调用webService的具体方法 private final static String nameSpace="http://tempuri.org/"; private f ...

  5. VBA 一个很神奇的东西

    百度经验参考:http://jingyan.baidu.com/article/4ae03de32663953efe9e6b47.html 今天奇迹般的发现了VBA,都怪自己平时使用excle不够多, ...

  6. Unrecognized option: -jrockit

    weblogic报错: starting weblogic with Java version: Unrecognized option: -jrockit Error: Could not crea ...

  7. Java Web 开发进阶案例之人事管理系统的完整实现

    技术:Java+ jsp + servlet+ javabeans +sql+tomcat   概述 本系统的主要任务是实现人事管理系统的系统化和自动化管理, 主要包括招聘入 职.到期离职和员工调动信 ...

  8. js实现放大缩小页面

    <script type="text/JavaScript"> var size = 1.0; function zoomout() { size = size + 0 ...

  9. scipy稀疏矩阵

    那些零元素数目远远多于非零元素数目,并且非零元素的分布没有规律的矩阵称为稀疏矩阵(sparse matrix). 不同类型的矩阵有不同的压缩方式,比如对角矩阵只存储对角元素即可.要想充分压缩,就要找到 ...

  10. Redis学习之路(005)- redis内存数据库C客户端hiredis API 中文说明

    A)编译安装 make make install (/usr/local) make install PREFIX=$HOME/progs(可以自由指定安装路径) B)同步的API接口 redisCo ...