Kafka2.4.1的环境搭建

Kafka2.4.1的环境搭建

一、集群规划

集群hadoop1、hadoop2、hadoop3,并且分别搭建好zookeeper3.5.7

在这里插入图片描述

二、安装包准备

kafka_2.11-2.4.1.tgz

Apache Kafka 其他版本

在这里插入图片描述

下载完成后,上传到集群中。(SecureCRT 中可以输入rz进行上传文件)

我将文件上传到了/opt/software/,用来存放软件包的位置

三、集群部署

(一)、安装Kafka

  1. 先将kafka进行解压

    tar -zxvf /opt/software/kafka_2.11-2.4.1.tgz -C /opt/module
    
  2. 将Kafka进行重命令

    mv kafka_2.11-2.4.1 kafka
    
  3. 修改所有权到普通用户

    sudo chown andy:andy kafka
    

    andy 是我的用户名

(二)、修改配置文件

  1. 进入到kakfa的config目录中,并修改server.properties

    cd config
    

    修改server.properties文件

     vim server.properties
    

    修改内容:

    第一处:broker.id

    broker.id=0
    

    hadoop1 的broker.id 为 0、hadoop2broker.id 为 1、hadoop3broker.id 为 2,并且id的数据是唯一的,每台都需要进行修改

    在这里插入图片描述

    第二处:log.dir 数据存放位置/opt/module/kafka/datas,原来存放的位置在/tmp目录下的

    log.dir=/opt/module/kafka/datas
    

    在这里插入图片描述

在这里插入图片描述 第三处:设置zookeeper的连接

zookeeper的搭建教程

zookeeper.connect=hadoop1:2181,hadoop2:2181,hadoop2:2181/kafka

在这里插入图片描述

四、配置环境变量

/etc/profile.d/中,创建my_env.sh

cd /etc/profile.d/

在创建my_env.sh

vim my_env.sh

添加内容:

#Kafka
export KAFKA_HOME=/opt/module/kafka
export PATH=$PATH:$KAFKA_HOME/bin

在这里插入图片描述

五、将配置文件分发到其他集群中

(一)分发kafka

sudo scp -r /opt/module/kafka hadoop2:/opt/module/
sudo scp -r /opt/module/kafka hadoop3:/opt/module/

hadoop2、hadoop3的ip地址是我在hadoop1的host中映射了的。如果没有映射的话,可以通过指定ip进行分发数据

sudo scp -r /opt/module/kafka 用户名@IP地址:/opt/module/

(二)分发环境配置文件

sudo scp -r /etc/profile.d/my_env.sh 用户名@IP地址:/etc/profile.d/

注意:需要到其他集群中,重新执行配置文件,让环境生效source /etc/profile(分别需要在hadoop1、hadoop2、hadoop3中进行执行)

六、修改其他集群的server.properties

每台集群的broker.id值进行修改

七、启动zookeeper

方法一:

在每台hadoop1、hadoop2、hadoop3中执行zkServer.sh start

方法二:创建启动脚本zk.sh

在bin中创建

vim  ~/zk.sh

注意:配置文件中的Hadoop1、hadoop2、hadoop3是我自己的集群,需要自己修改,

#/bin/bash
case $1 in 
"start")	

	for i in hadoop1 hadoop2 hadoop3
	do
		echo "=============$i============="
		ssh $i "zkServer.sh start"
	done
;;

"stop")
	for i in hadoop1 hadoop2 hadoop3
	do
		echo "=============$i============="
		ssh $i "zkServer.sh start"
	done
;;
"status")
	for i in hadoop1 hadoop2 hadoop3
	do
		echo "=============$i============="
		ssh $i "zkServer.sh status"
	done
;;
esac

修改文件权限

chmod u+x zk.sh

启动命令:

zk.sh start	

八、启动kafka

方法一:

每台kakfa的集群都需要启动:

kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties

方法二:创建启动脚本kf.sh

vim kf.sh

输入:

#/bin/bash
case $1 in 
"start")	

	for i in hadoop1 hadoop2 hadoop3
	do
		echo "=============$i============="
		ssh $i "kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties"
	done
;;

"stop")
	for i in hadoop1 hadoop2 hadoop3
	do
		echo "=============$i============="
		ssh $i "kafka-server-stop.sh -daemon $KAFKA_HOME/config/server.properties"
	done
;;
esac

并给kf.sh添加执行权限

chmod u+x kf.sh

启动kafka

kf.sh start

注意:

  • kafka的关闭需要一定的时间,才会关闭。需要等kafka关闭后,再关闭zookeeper,如果不这样会导致kafka永远不能关闭,只能kill。

补充知识:Apache的大数据组件各个版本的兼容

框架旧版本Hadoop2新版本hadoop3
Hadoop2.7.23.1.3
Zookeeper3.4.103.5.7
MySQL5.6.245.7.16
Hive1.2.13.1.2
Flume1.7.21.9.0
Kafka0.11–0.22.4.1
Kafka Eagle1.7.01.9.0
Azkaban2.5.03.84.4
Spark2.1.13.0.0
Hbase1.3.12.0.5
Phoenix4.14.15.0.0
Sqoop1.4.61.4.6
Presto0.1890.189
Kylin2.5.13.0.1
Atlas0.8.42.0.0
Ranger2.0.02.0.0
Solr5.2.17.7.0

补充知识:server.properties 的解读
在这里插入图片描述

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Kafka 2.4.1是Apache Kafka的一个版本,它提供了一套API,为开发者提供了各种功能和工具,用于构建和管理Kafka集群以及处理数据流。 Kafka的API包括: 1. Producer API:用于向Kafka发送消息,将数据发送到Kafka集群的topic中。开发者可以通过API设置消息的键和值,以及指定使用的分区。 2. Consumer API:用于从Kafka读取消息,从指定的topic中消费数据。开发者可以通过API指定要消费的topic和分区,并处理从Kafka读取的消息。 3. Streams API:用于构建实时流处理应用程序,将数据流转换为处理和分析的结果。开发者可以使用Streams API来处理输入流并生成输出流,同时进行聚合、过滤、转换等操作。 4. Connect API:用于将Kafka与其他数据存储系统和源集成。开发者可以使用Connect API来编写连接器,将Kafka与外部系统集成,以实现数据的传输和同步。 5. Admin API:用于管理Kafka集群,包括创建和删除topics、分区的增删改查、配置的管理等操作。开发者可以使用Admin API进行集群管理和监控。 除此之外,Kafka提供了一些辅助工具和功能,用于简化和增强开发和管理体验。例如,Kafka提供了一个命令行工具kafka-console-consumer和kafka-console-producer,用于在命令行界面上进行消费和生产消息。Kafka还提供了一些监控工具,如Kafka Monitor和Kafka Manager,用于实时监控集群的状态和性能。 总之,Kafka 2.4.1的API提供了丰富的功能,使开发者能够方便地处理和管理数据流,构建可扩展和高性能的应用程序。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值