Kafka集群配置

Kafka集群的安装:

一、安装zookeeper,并启动。注意:启动zookeeper前需要关闭防火墙,否则会报NoRouteHostException的错误

Zookeeper是一个分布式,开源的应用程序协调服务。是和Hadoop,Hbase等相互配合的重要组件,为分布式应用提供一致性服务。

1.下载zookeeper,并解压

tar -xzvf zookeeper-3.4.6.tar.gz

2.指定位置创建数据目录和日志目录:

mkdir /usr/zookeeper/zookeeper

mkdir /usr/zookeeper/zookeeeper/log

3.在数据目录下创建myid文件,并写入ID:

echo 1 > /usr/zookeeper/zookeeper/myid

myid是集群中个节点的标识,必须是数字,且每台机器需要对应

4.修改zoo.cfg文件(在zookeeper安装目录下的conf目录下)

mv zoo_sample.cfg zoo.cfg && vim zoo.cfg

5.数据目录去掉注释并按实际情况修改:

dataDir=**

    追加事务日志目录:

dataLogDir=**

    保留文件数目配置,默认3:

autopurge.snapRetainCount=3

    添加清理频率的配置,单位是小时,默认0,表示不会自动清理。

autopurge.purgeInterval=1

    最后添加如下配置

server.1=spark1:2888:3888

server.2=spark2:2888:3888

server.3=spark3:2888:3888

定义了每个主机对应的节点,server.x,x数值应和myid保持一致,当zookeeper启动时会读取myid文件和zoo.cfg配置信息,然后确定唯一节点。

后面端口号是集群中Leader和Follower之间进行通信的端口,一般不用修改

6.最后将配置好的整个目录发送到另外两台主机,实现同步;并且将另外两台主机的myid修改成配置文件中对应的id:

scp -r /usr/zookeeper/ spark2:/usr/

scp -r /usr/zookeeper/ spark3:/usr/

echo 2 > myid

echo 3 > myid

7.启动zookeeper服务(启动前要关闭防火墙):

./bin/zkServer.sh start        每台都需要启动

./bin/zkServer.sh status     查看每台主机的角色

./bin/zkServer.sh stop        停止zookeeper服务

./bin/zkCli.sh                        进入zookeeper客户端

8.使用jps命令查看是否有QuorumPeerMain这个进程,有则表示启动成功

二、安装Kafka并启动:

新版kafka相对旧版性能提升很大。

1.下载相关安装包

安装kafka集群前,需要确保zookeeper服务正常运行,比如上面3台主机正常运行,spark1,spark2,spark3,然后在spark1主机点上解压并做软链

tar -zxvf kafka_2.10-0.10.1.0.tgz

mv kafka_2.10-0.10.1.0 /Learn/

ln -s kafka_2.10-0.10.1.0 kafka

cd kafka

2.修改config/server.properties的配置文件

修改broker.id=1,默认是0,这个值是集群中唯一的整数,每台各不相同

找到listeners这个配置项一般配置PLAINTEXT://ip:9092,如果配置0.0.0.0则绑定全部网卡,如果默认,则会绑定默认网卡和机器host配置的主机名,一般在机器中hosts,hostname都要正确配置,下面的port默认不用配置

配置kafka日志目录,目录要提前建好:

num.partitions是默认单个broker上的partitions数量,默认是1,若想提高单机的并发性能,可以配置多个

kafka日志的保留时间,单位是小时,默认168小时,7天

配置zookeeper集群列表,然后指定kafka在zookeeper上创建的znode为/kafka

最后,连接zookeeper服务器的超时时间,默认即可

3.将配置好的完整目录发送到其他两台主机上,依次将server.properties配置文件中的broker.id分别为2和3并保存,并且这两台主机都要在相同的目录下创建日志目录kafka_logs并根据需要创建软链

4.启动所有主机的kafka服务

bin/kafka-server-start.sh -daemon config/server.properties

新版本不用nohup挂起,直接使用daemon参数后台运行,启动后jps查看kafka进程是否存在,有则启动成功

bin/kafka-server-stop.sh  停止服务








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值