1、从Apache官网 http://kafka.apache.org 下载kafka到本地目录,并解压
解压到目录/export/service/
2、修改配置文件,找到kafka安装目录下的config/server.properties文件。
修改或者添加以下内容
broker.id=1
listeners=PLAINTEXT://hadoop3:9092
num.network.threads=3
num.io.threads=8
log.dirs=/export/service/kafka/kafka-logs
num.partitions=2
zookeeper.connect=hadoop1:2181,hadoop2:2128,hadoop3:2128
default.replication.factor=2
broker.id :每一个broker都需要一个标识符,使用broker.id表示,它类似于zookeeper的myid。broker.id必须是一个全局的唯一的整数,集群中每一个kafka服务器的broker.id的值不能相同
num.partitions 每个主题的分区数量,默认是1,可以增加分区数量,但不能减少分区数量。
default.replication.factor:消息备份副本数,默认是1,即不进行备份
listeners:Socket监听的地址,用于Broker 监听生产者和消费者请求,格式为Listeners=security_protocol://host_name:port
如果没有配置该参数。则默认通过java的API来获取,默认端口是9092
建议进行显示配置,避免多网卡时解析有误
log.dirs:kafka消息数据的存储位置,可以指定多个目录,以逗号分隔
zookeeper.connect:Zookeeper的连接地址,该参数是用逗号分隔的一组格式为
hostname:port/path的列表,其中hostname为Zookeeper服务器的主机名或IP地址,port是Zookeeper客户端;连接端口;/path是可选的Zookeeper路径,如果不指定,则默认使用Zookeeper根路径。
3、发送安装文件到其他节点上
两种方式
第一种发送方式
scp -r kafka/ hadoop@hadoop2:/export/service/
scp -r kafka/ hadoop@hadoop3:/export/service/
第二种发送方式
复制完成后修改Hadoop2目录下的config/server.properties文件,修改
broker.id=2
listeners=PLAINTEXT://hadoop2:9092
复制完成后修改Hadoop3目录下的config/server.properties文件,修改
broker.id=3
listeners=PLAINTEXT://hadoop3:9092
4、启动zookeeper集群
分别在三台虚拟机上执行以下命令
bin/zkServer.sh start
可以看到三台都启动了zookeeper
5、修改配置文件 /etc/profile 加入环境变量
生效配置文件
分发配置文件
5、启动kafka集群,
分别在三个节点上执行
bin/kafka-servr-start.sh -daemon config/server.properties



