kafka安装部署
#kafka安装部署
# 注意:Apache Kafka2.8版本之后可以不需要使用ZooKeeper,内测中,文章末尾有体验的安装方式。
#下载 https://kafka.apache.org/downloads
wget https://archive.apache.org/dist/kafka/2.7.2/kafka_2.13-2.7.2.tgz
tar -zxvf kafka_2.13-2.7.2.tgz
mv kafka_2.13-2.7.2 /usr/local/kafka
# 这里将kafka安装到/usr/local目录下,因此,kafka的主配置文件为/usr/local/kafka/config/server.properties
broker.id=1
listeners=PLAINTEXT://10.3.65.14:9092
num.network.threads=8
num.io.threads=8
log.dirs=/usr/local/kafka/logs
num.partitions=6
log.retention.hours=60
log.segment.bytes=1073741824
zookeeper.connect=10.3.65.14:2181,10.3.65.18:2181,10.3.65.37:2181
auto.create.topics.enable=true
delete.topic.enable=true
# broker.id:每一个broker在集群中的唯一表示,要求是正数。当该服务器的IP地址发生改变时,broker.id没有变化,则不会影响consumers的消息情况。
# listeners:设置kafka的监听地址与端口,可以将监听地址设置为主机名或IP地址,这里将监听地址设置为IP地址。
# log.dirs:这个参数用于配置kafka保存数据的位置,kafka中所有的消息都会存在这个目录下。可以通过逗号来指定多个路径, kafka会根据最少被使用的原则选择目录分配新的parition。需要注意的是,kafka在分配parition的时候选择的规则不是按照磁盘的空间大小来定的,而是根据分配的 parition的个数多小而定。
# num.partitions:这个参数用于设置新创建的topic有多少个分区,可以根据消费者实际情况配置,配置过小会影响消费性能。这里配置6个。
# log.retention.hours:这个参数用于配置kafka中消息保存的时间,还支持log.retention.minutes和 log.retention.ms配置项。这三个参数都会控制删除过期数据的时间,推荐使用log.retention.ms。如果多个同时设置,那么会选择最小的那个。
# log.segment.bytes:配置partition中每个segment数据文件的大小,默认是1GB,超过这个大小会自动创建一个新的segment file。
# zookeeper.connect:这个参数用于指定zookeeper所在的地址,它存储了broker的元信息。 这个值可以通过逗号设置多个值,每个值的格式均为:hostname:port/path,每个部分的含义如下:
# hostname:表示zookeeper服务器的主机名或者IP地址,这里设置为IP地址。
# port: 表示是zookeeper服务器监听连接的端口号。
# /path:表示kafka在zookeeper上的根目录。如果不设置,会使用根目录。
# auto.create.topics.enable:这个参数用于设置是否自动创建topic,如果请求一个topic时发现还没有创建, kafka会在broker上自动创建一个topic,如果需要严格的控制topic的创建,那么可以设置auto.create.topics.enable为false,禁止自动创建topic。
# delete.topic.enable:在0.8.2版本之后,Kafka提供了删除topic的功能,但是默认并不会直接将topic数据物理删除。如果要从物理上删除(即删除topic后,数据文件也会一同删除),就需要设置此配置项为true。
#num.network.threads=8 #broker处理消息的最大线程数,一般情况下数量为cpu核数
#启动
nohup bin/kafka-server-start.sh config/server.properties &
#验证,需要连接到zk
./zkCli.sh -server 10.3.65.37:2181
[zk: 10.3.65.37:2181(CONNECTED) 0] ls /
[admin, brokers, cluster, config, consumers, controller, controller_epoch, feature, isr_change_notification, latest_producer_id_block, log_dir_event_notification, zookeeper]
[zk: 10.3.65.37:2181(CONNECTED) 1] ls /brokers
[ids, seqid, topics]
[zk: 10.3.65.37:2181(CONNECTED) 2] ls /brokers/ids
[1, 2, 3]
[zk: 10.3.65.37:2181(CONNECTED) 3]
![](https://img2022.cnblogs.com/blog/1237736/202204/1237736-20220402182626871-1885358843.png)