大数据应用开发之kafka安装

Kafka安装配置

本任务需要使用root用户完成相关配置,已安装Hadoop及需要配置前置环境,具体要求如下:

1.从宿主机/opt目录下将文件zookeeper-3.4.6.tar.gz、kafka_2.12-2.0.0.tgz复制到容器master中的/opt/software路径中(若路径不存在,则需新建),将Master节点Zookeeper,Kafka安装包解压到/opt/module目录下,将Kafka解压命令复制并粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下;

第一步:

docker cp /opt/zookeeper-3.4.6.tar.gz hadoop1:/opt/software

docker cp /opt/kafka_2.12-2.0.0.tgz hadoop1:/opt/software

tar --no-same-owner -zxvf /opt/software/kafka_2.12-2.4.1.tgz -C /opt/module/

tar --no-same-owner -zxvf /opt/software/zookeeper-3.4.6.tar.gz -C /opt/module/

2.配置好zookeeper,其中zookeeper使用集群模式,分别将master、slave1、slave2作为其节点(若zookpeer已安装配置好,则无需再次配置),配置好Kafka的环境变量,使用kafka-server-start.sh --version查看Kafka的版本内容,并将命令和结果截图粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下;

第二步

mv /opt/module/zookeeper-3.4.6.tar.gz zookeeper

mv /opt/module/kafka_2.12-2.0.0.tgz kafka

3.完善其他配置并分发Kafka文件到slave1、slave2中,并在每个节点启动Kafka,创建Topic,其中Topic名称为installtopic,分区数为2,副本数为2,将创建命令和创建成果截图粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下。

cp /opt/module/zookeeper/conf/zoo_sample.cfg zoo.cfg

在配置文件新增下列内容

dataDir=/opt/module/zookeeper/data

server.1=hadoop1:2888:3888

server.2=hadoop2:2888:3888

server.3=hadoop3:2888:3888

mkdir /opt/module/zookeeper/data

scp -r /opt/module/zookeeper hadoop2:/opt/module/

scp -r /opt/module/zookeeper hadoop3:/opt/module/

在三个虚拟机内创建myid文件,并启动zk。

echo 1 > /opt/module/zookeeper/data/myid

启动

 zkServer.sh start

编辑

vim /opt/module/kafka/config/server.properties

改动以下数据:(三个节点都要改,第一个黄色数字要分别改成1/2/3,第二个要修改主机名)

broker.id=0

listeners=PLAINTEXT://hadoop1:9092

log.dirs=/opt/module/kafka/logs

启动kafka

kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties

创建topic 

kafka-topics.sh --create --zookeeper hadoop1:2181 --replication-factor 2 --partitions 2 --topic installtopic

#hadoop1是自己的主机名

查询topic 

kafka-topics.sh --list --zookeeper hadoop1:2181 

Kafka是一种高性能、可扩展、分布式的流处理平台,常用于大数据领域。作为一个开发工程师,了解和掌握Kafka的知识是非常重要的。 以下是一些关于Kafka的基本知识点: 1. 消息队列:Kafka是一个分布式的消息队列系统,用于将消息从一个系统传递到另一个系统。它保证了高吞吐量、低延迟和持久性。 2. 发布-订阅模型:Kafka采用发布-订阅模型,在这个模型中,消息发布者将消息发送到一个或多个主题(Topic),而消息订阅者可以从一个或多个主题中消费消息。 3. 主题和分区:Kafka中的消息被组织成一个或多个主题,每个主题可以被分为多个分区。每个分区在物理上对应一个文件,这样可以实现消息的持久化和水平扩展。 4. 生产者和消费者:生产者负责将消息发送到Kafka集群中的特定主题,消费者则负责从主题中读取消息并进行处理。生产者和消费者可以是不同的应用程序或系统。 5. 副本和容错性:Kafka通过复制每个分区的副本来提供容错性。副本分布在不同的节点上,当某个节点故障时,其他副本可以接替工作,确保数据的可靠性和可用性。 6. 消费者组和负载均衡:多个消费者可以组成一个消费者组,每个分区只能被消费者组中的一个消费者消费。当消费者加入或离开消费者组时,Kafka会自动进行负载均衡,确保各个消费者间的工作均衡。 7. 可靠性保证:Kafka提供了多种可靠性保证,包括消息持久化、消息复制、数据备份等机制,以确保消息系统的高可用性和可靠性。 这些是关于Kafka的一些基本知识点,作为一个大数据开发工程师,掌握这些知识将帮助你在实际工作中更好地使用和应用Kafka。当然,还有很多其他的高级特性和用法可以进一步探索和学习。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值