在linux中搭建kafka集群

----------------------------开始搭建zookeeper集群------------------------------

1:首先准备至少3台linux服务器(奇数台);

2:从官方下载kafka安装包 Apache Kafka  我下载的是kafka_2.11-2.1.0.tgz

3:将kafka_2.11-2.1.0.tgz 包分别拷贝到3台linux服务器,路径:/usr/local/kafka

4:进入/usr/local/kafka解压taz包,命令:tar zxvf  ***.tgz

5:解压完成后,进入解压后的包内

kafka集群安装部署及zookeeper kafka集群搭建_分布式

6:创建文件夹:zookeeper和log,命令:

mkidr zookeeper

mkdir log

7:进入刚创建的log文件夹,创建kafka 和zookeeper文件夹

mkdir zookeeper

mkdir kafka

8:返回进入config文件夹命令:

kafka集群安装部署及zookeeper kafka集群搭建_配置文件_02

9:更改zookeeper.properties文件

命令:vim zookeeper.properties

按i键进入编辑状态

开始编辑文件,将下方配置输入到文件中

#路径要写对
dataDir=/usr/local/kafka/kafka_2.11-2.1.0/zookeeper
dataLogDir=/usr/local/kafka/kafka_2.11-2.1.0/log/zookeeper
# the port at which the clients will connect
clientPort=2181
maxClientCnxns=100
tickTime=2000
initLimit=10
syncLimit=5
# disable the per-ip limit on the number of connections since this is a non-production config
#下面这三个地址就是三台服务器地址,端口号不变
server.1=ip1:2888:3888
server.2=ip2:2888:3888
server.3=ip3:2888:3888


输入完成后:按ESC键 输入冒号:wq

10:创建myid文件,进入到zookeeper文件夹下,命令:

kafka集群安装部署及zookeeper kafka集群搭建_java_03

输入命令:echo "1" > myid

注意注意:这里创建的myid文件里面写的数字一定要和zookeeper.properties中写的数字一样,举例:server.1=ip1:2888:3888 代表server.1是第一台机器,所以这台机器中的myid文件中写入1

11:到此第一台机器的zookeeper已经搭建好了,下面开始搭建第二台,第三台服务器;步骤4-10重复操作

12:三台机器的zookeeper全部搭建完成之后,三台机器开始启动zookeeper服务,命令如下:

c

d /usr/local/kafka/kafka_2.11-2.1.0
./bin/zookeeper-server-start.sh config/zookeeper.properties &

如果第一台机器启动报错,不要紧张,是因为第二台,第三台机器没有启动的原因,等启动后不报错,证明zookeeper启动完成

13:如果出现错误,首先检查以上配置文件是否写入正确,如果检查无误,则查看端口是否都是开放状态

#防火墙状态
systemctl status firewalld
#开启防火墙
systemctl start firewalld
#开放防火墙端口(三台机器都需要开放)
firewall-cmd --zone=public --add-port=3888/tcp --permanen
firewall-cmd --zone=public --add-port=2888/tcp --permanen
firewall-cmd --zone=public --add-port=9092/tcp --permanen
firewall-cmd --zone=public --add-port=2181/tcp --permanen
#重启防火墙
firewall-cmd --reload

14:开启端口后,停止后再次启动(执行12步骤)就没有问题了(首先zookeeper.properties保证配置文件没有错误)

----------------------------zookeeper集群启动成功------------------------------

----------------------------开始搭建kafka集群------------------------------------

1:进入kafka中config文件夹内

命令:

kafka集群安装部署及zookeeper kafka集群搭建_zookeeper_04

2:更改server.properties配置文件

vim server.properties

按i键进入编辑状态

将下方文件输入到配置文件中

#第一台机器写0,第二台机器写1,第三台机器写2
broker.id=0
port=9092
#更改的是哪一台机器就写哪一台机器的ip地址
host.name=ip1
#路径一定要写对
log.dirs=/usr/local/kafka/kafka_2.11-2.1.0/log/kafka
#三台机器ip都写上
zookeeper.connect=ip1:2181,ip2:2181,ip3:2181

编辑完成之后:按ESC键输入冒号:wq

3:三台机器重复1,2步骤,需要注意的地方:broker.id的值三个节点要配置不同的值,分别配置为0,1,2;log.dirs必须保证目录存在,不会根据配置文件自动生成

4:启动kafka集群:进入kafka目录(三台机器都需要操作4步骤)

kafka集群安装部署及zookeeper kafka集群搭建_java_05

输入命令:./bin/kafka-server-start.sh -daemon config/server.properties &

无报错证明启动成功

----------------------------------kafka集群启动成功--------------------------------------

------------------------------------------------测试连接----------------------------------------

我是使用offset Explorer 2.2 连接工具测试的,工具自己百度下载使用吧,这里不做教程

kafka集群安装部署及zookeeper kafka集群搭建_kafka_06