首页 > 其他分享 >kafka单机安装

kafka单机安装

时间:2023-02-10 16:56:24浏览次数:34  
标签:单机 -- config broker server kafka 安装 properties

一、安装

kafka是由scala语言写成的,后面用Java重构了,但是不管怎样,都要编译到jvm虚拟机中执行。

centos:yum install java-11-openjdk
ubuntu:apt install default-jdk

java -version

下载kafka

下载
wget  https://archive.apache.org/dist/kafka/2.0.0/kafka_2.11-2.0.0.tgz
解压
tar -zxvf kafka_2.11-2.2.0.tgz

cd kafka_2.11-2.2.0

简单配置下

vim  config/server.properties

#broker 的全局唯一编号,不能重复
broker.id=0
#能否删除 topic
delete.topic.enable=true
#处理网络请求的线程数量
num.network.threads=3
#用来处理磁盘 IO 的现成数量
num.io.threads=8
#发送套接字的缓冲区大小
socket.send.buffer.bytes=102400
#接收套接字的缓冲区大小
socket.receive.buffer.bytes=102400
#请求套接字的缓冲区大小
socket.request.max.bytes=104857600
#kafka 运行日志存放的路径
log.dirs=/opt/module/kafka/logs
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168

二、启动

建议使用screen,开两个

启动zk【默认端口2181】
bin/zookeeper-server-start.sh config/zookeeper.properties

启动Kafka
bin/kafka-server-start.sh config/server.properties

三、测试使用

#创建单分区单副本的 topic demo:
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic demo

#查看 topic 列表:
bin/kafka-topics.sh --list --zookeeper localhost:2181

#发送消息【生产者】
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic demo

#接收消息并在终端打印:
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic demo --from-beginning

#查看描述 topics 信息
bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic demo

Topic:demo      PartitionCount:1        ReplicationFactor:1     Configs:
        Topic: demo     Partition: 0    Leader: 1       Replicas: 1     Isr: 1

第一行给出了所有分区的摘要,每个附加行给出了关于一个分区的信息。 由于我们只有一个分区,所以只有一行。

“Leader”: 是负责给定分区的所有读取和写入的节点。
“Replicas”: 是复制此分区日志的节点列表,无论它们是否是领导者,或者即使他们当前处于活动状态。
“Isr”: 是一组“同步”副本。这是复制品列表的子集,当前活着并被引导到领导者

四、集群配置

Kafka 支持两种模式的集群搭建:可以在单机上运行多个 broker 实例来实现集群,也可在多台机器上搭建集群,下面介绍下如何实现单机多 broker 实例集群,其实很简单,只需要如下配置即可。

单机多broker 集群配置利用单节点部署多个 broker。 不同的 broker 设置不同的 id,监听端口及日志目录。 例如:

cp config/server.properties config/server-2.properties
cp config/server.properties config/server-3.properties
vim config/server-2.properties
vim config/server-3.properties

修改 :

broker.id=2
listeners = PLAINTEXT://your.host.name:9093
log.dir=/data/kafka/logs-2

broker.id=3
listeners = PLAINTEXT://your.host.name:9094
log.dir=/data/kafka/logs-3

启动Kafka服务:(也可以用screen)

bin/kafka-server-start.sh config/server-2.properties &
bin/kafka-server-start.sh config/server-3.properties &

至此,单机多broker实例的集群配置完毕。

多机多broker集群配置

分别在多个节点按上述方式安装 Kafka,配置启动多个 Zookeeper 实例。

假设三台机器 IP 地址是 : 192.168.153.135, 192.168.153.136, 192.168.153.137

分别配置多个机器上的 Kafka 服务,设置不同的 broker id,zookeeper.connect 设置如下:

vim config/server.properties

里面的 zookeeper.connect

修改为:

zookeeper.connect=192.168.153.135:2181,192.168.153.136:2181,192.168.153.137:2181

五、配置

外网访问

配置:server.properties


修改成内网地址
listeners=PLAINTEXT://:9092
改成外网地址
advertised.listeners=PLAINTEXT://主机IP:9092

标签:单机,--,config,broker,server,kafka,安装,properties
From: https://www.cnblogs.com/HappyTeemo/p/17109537.html

相关文章

  • 记一次在Linux-Ubuntu上的mysql8安装
    踩坑网上的信息干货量太少了,都错的了解到centos系和ubuntu系的Linux还是有较大的区别的,命令都有不同,yum和apt,包管理器都不一样新开的Linux服务器跟裸奔一样,啥啥命令都没......
  • 合理安排kafka的broker、partition、consumer数量
    broker的数量最好大于等于partition数量一个partition最好对应一个硬盘,这样能最大限度发挥顺序写的优势。一个broker如果对应多个partition,需要随机分发,顺序IO会退化成随......
  • 基于zookeeper的kafka中间件
    一、Zookeeper概述1、Zookeeper定义Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。2、Zookeeper工作机制Zookeeper从设计模式角度来理解:是......
  • MySQL 5.7.27 详细下载安装配置教程
    以下MySQL5.7.27详细下载安装配置教程【很早之前也记录过一篇MySQL8.0的安装配置过程,如果是8.0可参考下面的另一篇文章】MySQL的下载安装与Navicat配置(超详细)_乞力马扎......
  • Consul 集群:server节点安装
    安装aptinstallconsul-y#version(1.5.2+dfsg2-14)以dev模式启动主节点该模式不会持久化任何数据,方便开发测试。$consulagent-dev-bind0.0.0.0这时,Consul......
  • php安装程序
      1.下载ZBlog,解压文件。复制黏贴到php路径下  2.重启Nginx,在浏览器输入127.0.0.1,进配置安装Zblog 3.安装完成后进入navicatpremium,新建一个数据库。  4.......
  • Ubuntu 22.04 LTS 64位boost安装教程
    下载源码包:#源码包地址:http://jaist.dl.sourceforge.net/project/boost/boost/1.81.0/boost_1_81_0.tar.gz开始下载:wgethttp://jaist.dl.sourceforge.net/pr......
  • linux篇-centos7安装DHCP服务器
    1检查防火墙和selinux(关闭)关闭防火墙和selinux,这边不多说2检查DHCP状态3安装DHCP软件包4把系统默认的样例复制5修改配置文件optiondomain-name“example.org”;--DN......
  • linux篇-Centos7jdk安装
    2.1查看现有JDK#rpm-qa|grepjdk(如果有其他版本的JDK建议卸载)卸载其他版本的JDK命令#yum–yremovejava-1.6.0#yum–yremovjava*重新安装(安装需要的JDK版本)#ch......
  • linux篇-linux下ffmpeg安装
    1最近自己搭建的公司服务端转化视频不可以,我想应该是ffmpeg的问题,头痛准备这两个源码包2安装,先解压ffmpeg-4.1.4.tar.bz2yasm-1.3.0.tar.gz3先安装yasm-1.3.0.tar.gz......