kafka环境搭建与实战(1)安装kafka http://zilongzilong.iteye.com/blog/2267913
kafka环境搭建与实战(2)kafka API实战 http://zilongzilong.iteye.com/blog/2267924
1.环境介绍
3台机器IP为:
192.168.88.20(hostname=kafka0)
192.168.88.21(hostname=kafka1)
192.168.88.22(hostname=kafka2)
2.zookeeper3.4.6集群安装
1) 下载解压zookeeper3.4.6
下载zookeeper-3.4.6.tar.gz到/opt
解压tar -zxvf zookeeper-3.4.6.tar.gz
注意:上面3台机器都要安装
2) 配置/etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
192.168.88.22 kafka2
192.168.88.21 kafka1
192.168.88.20 kafka0
注意:上面3台机器都要配置
3) 创建zookeeper数据文件
sudo rm -r /home/hadoop/zookeeper
cd /home/hadoop
mkdir zookeeper
注意:上面3台机器都要创建,我环境中是独立创建了hadoop用户,单独用于启动大数据相关服务,这里也是在hadoop用户目录下创建zookeeper配置文件夹
4) 创建zookeeper数据文件
将/opt/zookeeper-3.3.4/conf目录下面的 zoo_sample.cfg修改为zoo.cfg,配置文件内容如下所示:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/hadoop/zookeeper
clientPort=2181
server.1=kafka0:2888:3888
server.2=kafka1:2888:3888
server.3=kafka2:2888:3888
#数据文件保存最近的3个快照,默认是都保存,时间长的话会占用很大磁盘空间
autopurge.snapRetainCount=3
#单位为小时,每小时清理一次快照数据
autopurge.purgeInterval=1
注意:上面3台机器都要配置
5) 创建zookeeper集群节点标识文件myid
#在机器kafka0下/home/hadoop/zookeeper/创建文件myid,写入数字1
ssh kafka0
echo "1" > /home/hadoop/zookeeper/myid
#在机器kafka1下/home/hadoop/zookeeper/创建文件myid,写入数字1
ssh kafka1
echo "2" > /home/hadoop/zookeeper/myid
#在机器kafka2下/home/hadoop/zookeeper/创建文件myid,写入数字1
ssh kafka2
echo "3" > /home/hadoop/zookeeper/myid
注意:上面3台机器都要配置,各自标识必须不相同,并且为整数
6) 启动ZooKeeper集群
cd /opt/zookeeper-3.4.6
bin/zkServer.sh start
7) 查看单机ZooKeeper是leader还是follower
cd /opt/zookeeper-3.4.6
bin/zkServer.sh status
8) 停止ZooKeeper集群
cd /opt/zookeeper-3.4.6
bin/zkServer.sh stop
3.kafka_2.10-0.9.0.0集群安装
1) 下载解压kafka_2.10-0.9.0.0.tgz
下载kafka_2.10-0.9.0.0.tgz到/opt
解压tar -zxvf kafka_2.10-0.9.0.0.tgz
注意:上面3台机器都要安装
2) 配置kafka各集群节点
修改/opt/kafka_2.10-0.9.0.0/config/server.properties,修改内容如下:
#机器kafka0
#每个机器上应该不同,且为数字
broker.id=1
#端口默认保持不变
port=9092
#本机器的IP地址
host.name=kafka0
#zookeeper的链接地址
zookeeper.connect=kafka0:2181,kafka1:2181,kafka2:2181
#kafka中每个TOPIC中数据最多只保留当前时间往前推8小时的数据
log.retention.hours=8
#kafka中每个TOPIC切分为4份,分布式存贮到集群节点,这个是默认值,可以创建TOPIC时单独指定
num.partitions=4
#kafka中每个TOPIC数据存储的目录位置
log.dirs=/tmp/kafka-logs
#启用对于TOPIC的删除功能
delete.topic.enable = true
#机器kafka2
#每个机器上应该不同,且为数字
broker.id=2
#端口默认保持不变
port=9092
#本机器的IP地址
host.name=kafka2
#zookeeper的链接地址
zookeeper.connect=kafka0:2181,kafka1:2181,kafka2:2181
#kafka中每个TOPIC中数据最多只保留当前时间往前推8小时的数据
log.retention.hours=8
#kafka中每个TOPIC切分为4份,分布式存贮到集群节点,这个是默认值,可以创建TOPIC时单独指定
num.partitions=4
#kafka中每个TOPIC数据存储的目录位置
log.dirs=/tmp/kafka-logs
#启用对于TOPIC的删除功能
delete.topic.enable = true
#机器kafka1
#每个机器上应该不同,且为数字
broker.id=3
#端口默认保持不变
port=9092
#本机器的IP地址
host.name=kafka1
#zookeeper的链接地址
zookeeper.connect=kafka0:2181,kafka1:2181,kafka2:2181
#kafka中每个TOPIC中数据最多只保留当前时间往前推8小时的数据
log.retention.hours=8
#kafka中每个TOPIC切分为4份,分布式存贮到集群节点,这个是默认值,可以创建TOPIC时单独指定
num.partitions=4
#kafka中每个TOPIC数据存储的目录位置
log.dirs=/tmp/kafka-logs
#启用对于TOPIC的删除功能
delete.topic.enable = true
3) 启动kafka,关闭kafka
#后台进程启动kafka
/opt/kafka_2.10-0.9.0.0/bin/kafka-server-start.sh /opt/kafka_2.10-0.9.0.0/config/server.properties &
#console启动kafka
/opt/kafka_2.10-0.9.0.0/bin/kafka-server-start.sh /opt/kafka_2.10-0.9.0.0/config/server.properties
#关闭kafka,先通过jps查看进程号后kill - 9 进程号
4) 在kafka中创建名为“test”的topic,该topic切分为4份,每一份备份数为3
cd /opt/kafka_2.10-0.9.0.0
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 4 --topic test
5) 在kafka中查看名为“test”的topic
cd /opt/kafka_2.10-0.9.0.0
bin/kafka-topics.sh --describe --zookeeper kafka0:2181,kafka1:2181,kafka2:2181 --topic test
6) 在kafka中列出所有topic
cd /opt/kafka_2.10-0.9.0.0
bin/kafka-topics.sh --list --zookeeper kafka0:2181,kafka1:2181,kafka2:2181
7) 在kafka中删除名为“test”的topic
cd /opt/kafka_2.10-0.9.0.0
bin/kafka-topics.sh --delete --zookeeper kafka0:2181,kafka1:2181,kafka2:2181 --topic test
8) 在kafka中通过console启动一个消费者用来消费来自topic=test里面的数据
cd /opt/kafka_2.10-0.9.0.0
bin/kafka-console-consumer.sh --zookeeper kafka0:2181,kafka1:2181,kafka2:2181 --topic test --from-beginning
9) 在kafka中通过console启动一个生产者用来产生数据放入topic=test
cd /opt/kafka_2.10-0.9.0.0
bin/kafka-console-producer.sh --broker-list kafka0:9092,kafka1:9092,kafka2:9092 --topic test
分享到:
相关推荐
内容涵盖Kafka集群的核心组件讲解、集群架构设计、分布式集群搭建与伪集群配置,帮助读者快速上手Kafka环境部署。 通过实战案例,深入解析Java Consumer与Producer的高级用法,包括手动提交Offset、数据回溯、...
### Kafka源码解析与实战 #### 一、Kafka简介 Kafka是由Apache软件基金会开发的一款开源流处理平台,主要用于构建实时数据管道以及基于流的数据处理应用。它以分布式的方式运行,具有高吞吐量、低延迟的特点,适用...
**KAFKA分布式消息系统在Windows环境下的搭建与应用** KAFKA是一个高吞吐量的分布式消息系统,由LinkedIn开发并开源,现在是Apache软件基金会的顶级项目。它主要设计用于处理实时流数据,允许应用程序发布和订阅...
【Kafka急速入门与实战】 Kafka是一种分布式流处理平台,由Apache开发,主要用于构建实时数据管道和流应用。作为消息中间件(MQ),Kafka提供了高效、可靠且可扩展的数据传输能力,常用于大数据处理、日志收集、...
课程内容包括了Kafka java Consumer实战,Kafka集成框架,Kafka分布式集群架构,Kafka性能测试实战,Kafka集群监控实战,Kafka用户行为画像,Kafka性能存储优化及如何提高Kafka吞吐量等企业级技术。 视频大小:1.5G
在本文中,我们将深入探讨如何搭建Kafka单机环境与集群,以及如何进行有效的监控。Kafka是由Apache开发的一个分布式流处理平台,广泛应用于实时数据处理、消息传递和日志聚合等场景。以下是对每个主题的详细说明: ...
2. **Kafka安装与配置**:介绍如何搭建Kafka集群,包括服务器配置、Zookeeper集成等。 3. **Kafka API使用**:讲解Java和Scala客户端如何发布和消费消息,以及如何使用命令行工具操作Kafka。 4. **Kafka性能优化**:...
可以直接下载使用的,完整的搭建实战与环境配置问题解决”表明这个压缩包提供了从零开始搭建Kafka集群的所有必要文件和指南,包括可能出现的问题及解决办法,使用户能够一站式完成Kafka的安装和配置。 【标签】:...
接下来,指南涵盖了安装和配置Kafka的步骤,包括集群的搭建、配置参数的调整以及与Zookeeper的集成。这部分内容对于实际操作Kafka至关重要,帮助读者理解如何在生产环境中部署和管理Kafka集群。 书中还详细介绍了...
Kafka技术实战学习的优选课程,课程内容全程实战,没有拖泥带水,但不包含基础知识的教学,需要同学们先具备一定的Kafka技术基础再进行学习。课程内容包括了Kafka java Consumer实战,Kafka集成框架等。
1. **安装与启动**:下载Kafka二进制包,配置环境变量,启动Zookeeper和Kafka服务器。 2. **创建主题**:使用`kafka-topics.sh`脚本创建主题,指定分区数量和副本数。 3. **配置参数**:根据实际需求调整Kafka的...
《Apache Kafka实战》共分为10章:第1章全面介绍消息引擎系统以及Kafka的基本概念与特性,快速带领读者走进Kafka的世界;第2章简要回顾了Apache Kafka的发展历史;第3章详细介绍了Kafka集群环境的搭建;第4、5章深入...
4.kafka集群搭建和生产者、消费者消息数据测试 5.kafka相关常见的面试试题讲解 本课程笔记注意: 本课程笔记,笔记文档和相关需要的软件包,都统一压缩在压缩包里,笔记采用markdown的打开模式,使用windows电脑...
示例涵盖了从环境搭建到代码实现的全过程,帮助您快速上手实时数据处理的开发。提供了一个完整的示例,演示了如何使用Spark Streaming和Kafka进行实时数据处理。通过该示例,我们可以学习到如何创建Kafka主题、发送...
《Storm流计算项目:1号店电商实时数据分析系统——storm-kafka详解与实战案例》 在大数据处理领域,实时计算已经成为不可或缺的一部分,特别是在电商行业中,实时数据分析能够帮助企业快速响应市场变化,提高运营...
Kafka搭建 kafka是一个分布式的数据库,所以需要zookeeper作为集群的头部 kafka使用广泛,在大数据处理与分析中作用很大,接下来是根据dockerHub上已有的kafka镜像进行搭建的 资料来源 使用 wurstmeister/zookeeper ...
5. **实战经验**:书中可能包含搭建Kafka集群、部署生产环境、故障排查等方面的实践经验。 通过阅读《Kafka技术内幕》,读者可以掌握Kafka的全方位知识,无论是初学者还是有经验的开发者,都能从中受益,提升对...