Kafka集群配置
1.进入项目前的目录
cd /home/dongshanxia
mkdir kafka #创建项目目录
cd kafka #进入项目目录
mkdir kafkalogs #创建kafka消息目录,主要存放kafka消息
2.进入配置文件目录
cd /home/dongshanxia/kafka/kafka_2.11-0.9.0.1/config
//打开配置文件
vim server.properties
------------------------配置文件-------------------------------------
broker.id=1
/* 这是这台虚拟机上的值,在另外两台虚拟机上应该是2或者3,这个值是唯一的,每台虚拟机或者叫服务器不能相同。 */
listeners=PLAINTEXT://cjmaster01:9092
/设置本机IP和端口。我这里设置的是listeners,
也可以直接设置host.name=cjmaster01,port=9092,
这个IP地址也是与本机相关的,每台服务器上设置为自己的IP地址。/
log.dirs=/home/dongshanxia/kafka/kafkalogs
#指定其与另外几台一样的ip
zookeeper.connect=cjmaster01:2181,cjdatanode01:2181,cjdatanode02:2181
delete.topic.enable=true
~~~~~别人的配置文件
broker.id=0 #当前机器在集群中的唯一标识,和zookeeper的myid性质一样
port=19092 #当前kafka对外提供服务的端口默认是9092
host.name=192.168.7.100 #这个参数默认是关闭的,在0.8.1有个bug,DNS解析问题,失败率的问题。
num.network.threads=3 #这个是borker进行网络处理的线程数
num.io.threads=8 #这个是borker进行I/O处理的线程数
log.dirs=/opt/kafka/kafkalogs/ #消息存放的目录,这个目录可以配置为","逗号分割的表达式,上面的num.io.threads要大于这个目录的个数这个目录,如果配置多个目录,新创建的topic他把消息持久化的地方是,当前以逗号分割的目录中,那个分区数最少就放那一个
socket.send.buffer.bytes=102400 #发送缓冲区buffer大小,数据不是一下子就发送的,先回存储到缓冲区了到达一定的大小后在发送,能提高性能
socket.receive.buffer.bytes=102400 #kafka接收缓冲区大小,当数据到达一定大小后在序列化到磁盘
socket.request.max.bytes=104857600 #这个参数是向kafka请求消息或者向kafka发送消息的请请求的最大数,这个值不能超过java的堆栈大小
num.partitions=1 #默认的分区数,一个topic默认1个分区数
log.retention.hours=168 #默认消息的最大持久化时间,168小时,7天
message.max.byte=5242880 #消息保存的最大值5M
default.replication.factor=2 #kafka保存消息的副本数,如果一个副本失效了,另一个还可以继续提供服务
replica.fetch.max.bytes=5242880 #取消息的最大直接数
log.segment.bytes=1073741824 #这个参数是:因为kafka的消息是以追加的形式落地到文件,当超过这个值的时候,kafka会新起一个文件
log.retention.check.interval.ms=300000 #每隔300000毫秒去检查上面配置的log失效时间(log.retention.hours=168 ),到目录查看是否有过期的消息如果有,删除
log.cleaner.enable=false #是否启用log压缩,一般不用启用,启用的话可以提高性能
zookeeper.connect=192.168.7.100:12181,192.168.7.101:12181,192.168.7.107:1218 #设置zookeeper的连接端口
命令集合
启动kafka
bin/kafka-server-start.sh config/server.properties >/dev/null 2>&1 &
//守护模式-daemon
/home/dongshanxia/kafka/kafka_2.11-0.9.0.1/bin/kafka-server-start.sh -daemon /home/dongshanxia/kafka/kafka_2.11-0.9.0.1/config/server.properties
/home/dongshanxia/kafka/kafka_2.11-0.9.0.1/bin/kafka-server-start.sh /home/dongshanxia/kafka/kafka_2.11-0.9.0.1/config/server.properties >/dev/null 2>&1 &
创建TOPIC
创建一个叫做"test"的topic,它只有一个分区,一个副本
/home/dongshanxia/kafka/kafka_2.11-0.9.0.1/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
例如:
bin/kafka-topics.sh --zookeeper cjmaster01:2181 --create --topic mac-topic --replication-factor 2 --partitions 6
./bin/kafka-topics.sh --delete --zookeeper cjmaster01:2181 --topic 【topic name】
修改TOPIC分区数量
bin/kafka-topics.sh --zookeeper localhost:2182 --alter --partitions 20 --topic test
查看TOPIC
可以通过list命令查看创建的topic:
/home/dongshanxia/kafka/kafka_2.11-0.9.0.1/bin/kafka-topics.sh --list --zookeeper localhost:2181 test
查看topic的分区情况
/home/dongshanxia/kafka/kafka_2.11-0.9.0.1/bin/kafka-topics.sh --describe --zookeeper localhost:2181 test
消费数据
/home/dongshanxia/kafka/kafka_2.11-0.9.0.1/bin/kafka-console-consumer.sh --zookeeper 10.168.1.162:2181 --from-beginning --topic topic_hito_udp_gsm
/home/dongshanxia/kafka/kafka_2.11-0.9.0.1/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --from-beginning --topic topic_hito_tcp_mac
./kafka-console-consumer.sh --zookeeper localhost:2181 --topic topic_hik_udp_mac
//测试使用
/home/dongshanxia/kafka/kafka_2.11-0.9.0.1/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
/home/dongshanxia/kafka/kafka_2.11-0.9.0.1/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test
修改topic的备份数量
//校验是否正确
bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file ./topic-test.json --verify
输出信息:修改之前报这个信息,说备份数量和文本不一致(因为文本内容是要添加副本数,肯定不一致),证明文本没有问题,可以执行
[root@cjmaster01 kafka_2.11-0.9.0.1]# bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file ./topic-test.json --verify
Status of partition reassignment:
ERROR: Assigned replicas (0) don't match the list of replicas for reassignment (0,1) for partition [topic-test,1]
ERROR: Assigned replicas (2) don't match the list of replicas for reassignment (1,2) for partition [topic-test,3]
ERROR: Assigned replicas (2) don't match the list of replicas for reassignment (2,1) for partition [topic-test,0]
ERROR: Assigned replicas (1) don't match the list of replicas for reassignment (1,2) for partition [topic-test,2]
ERROR: Assigned replicas (1) don't match the list of replicas for reassignment (1,0) for partition [topic-test,5]
ERROR: Assigned replicas (0) don't match the list of replicas for reassignment (1,0) for partition [topic-test,4]
Reassignment of partition [topic-test,1] failed
Reassignment of partition [topic-test,3] failed
Reassignment of partition [topic-test,0] failed
Reassignment of partition [topic-test,2] failed
Reassignment of partition [topic-test,5] failed
Reassignment of partition [topic-test,4] failed
//上边返回成功了再执行
bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file ./topic-test.json --execute
Kafka集群配置的更多相关文章
- HyperLedger Fabric基于zookeeper和kafka集群配置解析
简述 在搭建HyperLedger Fabric环境的过程中,我们会用到一个configtx.yaml文件(可参考Hyperledger Fabric 1.0 从零开始(八)--Fabric多节点集群 ...
- Kafka集群配置---Windows版
Kafka是一种高吞吐量的分布式发布订阅的消息队列系统,Kafka对消息进行保存时是通过tipic进行分组的.今天我们仅实现Kafka集群的配置.理论的抽空在聊 前言 最近研究kafka,发现网上很多 ...
- kafka集群配置与测试
刚接触一些Apache Kafka的内容,用了两天时间研究了一下,仅以此文做相关记录,以供学习交流. 概念: kafka依赖的项: 1. 硬件上,kafka利用线性存储来进行硬盘直接读写. 2. k ...
- Kafka 集群配置SASL+ACL
一.简介 在Kafka0.9版本之前,Kafka集群时没有安全机制的.Kafka Client应用可以通过连接Zookeeper地址,例如zk1:2181:zk2:2181,zk3:2181等.来获取 ...
- java架构之路(MQ专题)kafka集群配置和简单使用
前面我们说了RabbitMQ和RocketMQ的安装和简单的使用,这次我们说一下Kafka的安装配置,后面我会用几个真实案例来说一下MQ的真实使用场景.天冷了,不愿意伸手,最近没怎么写博客了,还请见谅 ...
- kafka能做什么?kafka集群配置 (卡夫卡 大数据)
什么是Kafka 官网介绍: 几个概念: 详细介绍 : 操作kafka: kafka集群 消息测试 问题检测 什么是Kafka 官网介绍: ApacheKafka是一个分布式流媒体平台.这到底是什么意 ...
- kafka集群配置和java编写生产者消费者操作例子
kafka 安装 修改配置文件 java操作kafka kafka kafka的操作相对来说简单很多 安装 下载kafka http://kafka.apache.org/downloads tar ...
- kafka集群配置总结
虽然很简单,但会遇到很多奇怪的坑,而且网上解决方法搜不到. 首先下载kafka包,解压缩后,修改conf/server.properties文件,基本配置项如下(省略了部分默认配置项 : broker ...
- zookeeper加Kafka集群配置
官方 https://zookeeper.apache.org/doc/r3.5.6/zookeeperStarted.html#sc_Prerequisites https://www.cnblog ...
随机推荐
- request对象方法
1.html <html> <head> <meta http-equiv="Content-Type" content="text/htm ...
- Unity Optimization UNITY优化关注列表
这里主要罗列Unity引擎进行开发的应用或游戏,可以进行优化的各个关注点.(此文会持续更新) C# GC alloc Update LateUpdate Serialize String ToStri ...
- hue简单介绍
hue定义: HUE=Hadoop User Experience 个人理解:可视图的webui界面,方便大数据技术之间的CRUD操作. 官方定义:Hue是一个能够与Apache Hadoop交互的W ...
- python中的字符串编码问题——3.各操作系统下的不同编码方式
各操作系统下的不同编码方式 先看一下 linux,python2.7 >>> B = b'\xc3\x84\xc3\xa8' >>> B.decode('utf- ...
- 使用 Azure CLI 创建和管理 Linux VM
Azure 虚拟机提供完全可配置的灵活计算环境. 本教程介绍 Azure 虚拟机的基本部署项目,例如选择 VM 大小.选择 VM 映像和部署 VM. 你将学习如何执行以下操作: 创建并连接到 VM 选 ...
- 关于sys CPU usage 100%问题的分析
最近一个客户抱怨他的核心EBS数据库出现性能问题.这是一个10.2.0.3的数据库,运行在Red Hat Enterprise Linux Server release 5.5 (Linux x86- ...
- Django的model中创建表
类中的class Meta字段的作用: 第一个作用可以给这个类起名字 在后台的admin中显示这个类名字 class CourseCategory(models.Model): "" ...
- oracle 启动报错ORA-27125解决方案
脚本: oracle@edwdb:~> id uid=(oracle) gid=(oinstall) (oinstall),(dba) oracle@edwdb:~> su - root ...
- 铁乐学python_day21_面向对象编程3
抽象类和接口类 以下内容大部分摘自博客http://www.cnblogs.com/Eva-J/ 继承有两种用途: 一:继承基类的方法,并且做出自己的改变或者扩展(代码重用) 二:声明某个子类兼容于某 ...
- RMAN恢复脚本案例
$ crontab -l0 12,19 * * * $ORACLE_HOME/scripts/arcbkup.sh59 03 * * * $ORACLE_HOME/scripts/dbbkup.sh ...