1)单broker模式
2)单机多broker模式 (伪集群)
3)多机多broker模式 (真正的集群模式)
第一种单broker模式
1.下载Kafka:http://kafka.apache.org/downloads.html
2. 解压Kafka:tar xvf kafka_2.9.1-0.8.2.1.tgz 解压到/usr/local
3. 修改配置文件:
config/zookeeper.properties
1)dataDir=/usr/local/kafka/tmp/zookeeper/
2)clientPort=2181
config/server.properties
1)log.dirs=/usr/local/kafka/tmp/kafka-logs
4. 启动服务
1)启动zookeeper服务
bin/zookeeper-server-start.sh config/zookeeper.properties > tmp/zookeeper.log 2>&1 &
2)启动kafka服务
bin/kafka-server-start.sh config/server.properties > tmp/kafka.log 2>&1 &
3)查看启动是否成功 jps
5. Topic
1)创建主题(test),一个分区、一个副本
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
2)查看所有topic
bin/kafka-topics.sh --list --zookeeper localhost:2181
3)查看一个主题(test)详情
bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test
test主题和mall主题详情: 第一行是所有Partition的总结。后面的行是每个partition一行。
4)删除主题
bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --topic test --zookeeper localhost:2181
6.创建生产者
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
7.创建消费者
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
第二种单机多broker模式
1. 修改配置文件:
config/zookeeper.properties(和第一种一样)
config/server.properties,复制一个server1.properties和server2.properties
修改server1.properties
1)broker.id=1
2)port=9093
3)log.dirs=/usr/local/kafka/tmp/kafka1-logs
修改server2.properties
1)broker.id=2
2)port=9094
3)log.dirs=/usr/local/kafka/tmp/kafka2-logs
2. 启动服务
1)启动zookeeper服务
bin/zookeeper-server-start.sh config/zookeeper.properties > tmp/zookeeper.log 2>&1 &
2)启动kafka服务
bin/kafka-server-start.sh config/server.properties > tmp/kafka.log 2>&1 &
bin/kafka-server-start.sh config/server1.properties > tmp/kafka1.log 2>&1 &
bin/kafka-server-start.sh config/server2.properties > tmp/kafka2.log 2>&1 &
3)查看启动是否成功 jps
第三种多机多broker模式
主机列表为:192.168.30.104、192.168.30.105、192.168.30.106
1. 修改配置文件:
config/zookeeper.properties
1)dataDir=/usr/local/kafka/data
2)tickTime=2000
3)initLimit=5
4)syncLimit=2
5)zookeeper主机列表清单
server.104=192.168.30.104:2888:3888
server.105=192.168.30.105:2888:3888
server.106=192.168.30.106:2888:3888
需要在/usr/local/kafka/data/中新建myid文件,
192.168.30.104主机内容为104
192.168.30.105主机内容为105
192.168.30.106主机内容为106
config/server.properties,复制一个server1.properties和server2.properties
修改server1.properties
1)broker.id=***
192.168.30.104主机内容为104
192.168.30.105主机内容为105
192.168.30.106主机内容为106
2)host.name=192.168.30.106
192.168.30.104主机内容为192.168.30.104
192.168.30.105主机内容为192.168.30.105
192.168.30.106主机内容为192.168.30.106
3)log.dirs=/usr/local/kafka/tmp/kafka-logs
4)num.partitions=2
5)zookeeper.connect=192.168.30.104:2181,192.168.30.105:2181,192.168.30.106:2181
2. 启动服务
1)启动zookeeper服务(依次启动3台主机)
bin/zookeeper-server-start.sh config/zookeeper.properties > tmp/zookeeper.log 2>&1 &
2)启动kafka服务(依次启动3台主机)
bin/kafka-server-start.sh config/server.properties > tmp/kafka.log 2>&1 &
3)查看启动是否成功 jps
3. Topic
1)创建主题(test),2个分区、3个副本
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 2 --topic mall
相关推荐
### Kafka集群及Kafka-Manager安装部署 #### 一、Kafka集群的安装与配置 **1. 工作环境准备** - **JDK**:确保安装了JDK 1.8.0_60版本。这一步骤至关重要,因为Kafka依赖于Java运行时环境。 - **Zookeeper**...
标题中的“Kafka+redis全解.pdf”表明这是一份结合了Apache Kafka和Redis两种技术的综合解析文档,旨在提供全面的学习和理解材料。Kafka是业界广泛使用的分布式流处理平台,而Redis则是一款高性能的内存数据结构存储...
将Kafka部署在Windows服务器上并作为服务运行,可以方便地管理和监控Kafka实例。 在Windows上部署Kafka服务,首先需要安装Zookeeper。Zookeeper是Kafka集群中的关键组件,负责管理集群的状态信息,如选举主节点、...
3. **分布式架构**:Kafka支持多生产者、多消费者和多代理的分布式部署模式,所有组件都可以跨多个节点进行复制,从而实现水平扩展和容错。 4. **主题与分区**:消息被组织成主题(topics),每个主题可以进一步...
Kafka采用分布式架构,可以在多台服务器上部署,通过分区(Partitions)和副本(Replicas)实现水平扩展和高可用性。每个分区都有一个主副本,负责处理写操作,其他副本作为备份,当主副本故障时,可以自动切换。 ...
5. **发布/订阅模型**:Kafka 使用发布/订阅模式,生产者(Producer)向特定的主题(Topic)发布消息,而消费者(Consumer)则订阅这些主题来接收消息。 6. **消息顺序保证**:同一主题内的消息在分区内按顺序存储,...
五、Kafka部署与运维 1. 集群搭建:Kafka通常以集群模式部署,确保高可用性和负载均衡。 2. 数据保留策略:根据业务需求设置消息保留时间,平衡存储成本和数据可追溯性。 3. 监控与调优:定期检查Kafka的性能指标...
- 文档中提到的Kafka安装和使用是文档的一个重要组成部分,文档中应该包含了如何在集群环境中部署Kafka以及如何通过Kafka进行消息的发送和接收。 6. Kafka和Zookeeper的关系 - Kafka依赖于Zookeeper进行集群管理...
**SpringBoot集成Kafka进行消息发布与订阅** 在现代微服务架构中,消息队列(Message Queue)扮演着至关重要的角色,它能够有效地解耦系统组件,提高系统的响应速度和可扩展性。Apache Kafka作为一款高吞吐量、低...
Kafka支持多消费者模式,可以实现并行消费。 5. **消费者组(Consumer Group)**:一组消费者,每个主题的每个分区只能被组内的一个消费者消费,确保无重复消费。 现在我们来看看0.10.2.0版本的关键特性: 1. **高...
4. **发布订阅模型**: Kafka采用发布订阅模式,生产者发布消息到主题,消费者订阅感兴趣的主题并消费这些消息。这种模型允许解耦生产者和消费者,同时提供了消息的顺序保证(在单个分区内)。 5. **消息持久化与...
Kafka支持同步和异步两种发送模式,以平衡消息发送的可靠性和性能。 2. **消费者(Consumer)**:消费者负责从Kafka broker读取并处理消息。Kafka提供了两种消费模式:基于偏移量的消费和基于时间的消费,可以根据...
在本文中,我们将深入探讨Kafka的核心概念,并以"**kafka_2.11-2.0.0.tgz**"这个压缩包为例,了解如何部署和使用Kafka。 1. **Kafka核心概念** - **主题(Topic)**:主题是Kafka中的基本逻辑存储单元,可以将其...
2. 引入Kafka Connect:Kafka Connect是一种用于在Kafka与其他系统之间进行大规模数据传输的工具,允许用户轻松创建和管理数据连接器。 3. 改进的Producer API:新版本的Producer API提供了更好的错误处理和性能...
环境搭建+kafka+flink 环境搭建是指在服务器上安装和配置各种软件环境,以满足项目的需求。在这个过程中,需要安装JDK、Kafka、Flink、Redis等软件,并进行相应的配置。 一、JDK环境搭建 1. 下载JDK安装包,并将...
- **创建Properties配置**:配置Kafka连接参数,如服务器地址、确认模式、键和值序列化方式等。 - **创建KafkaProducer对象**:使用Properties配置初始化一个KafkaProducer实例。 - **发送消息**:通过调用`...
Kafka Connect有两种模式:独立模式和分布式模式。在本例中,使用的是独立模式。Kafka Connect的配置文件connect-standalone.properties需要设置Bootstrap服务器地址、插件路径等参数。在遇到错误时,需要将Kafka的...
afka的消费模式与消费者组Kafka提供了两种消费模式:单消费者模式和消费者组模式。单消费者模式中,一个消费者实例负责消费所有分区,适合小规模的低并发场景。而消费者组模式则是Kafka高并发、高可用的核心特性,多...
Kafka是一种分布式消息中间件,由Apache软件基金会开发,主要用于处理实时流式数据。它的核心特性包括高吞吐量、持久性、分布式和灵活的消费模式。 ### 1. Kafka概述 #### 1.1 消息队列 **应用场景**:消息队列常...
3. API 更新:Kafka 2.8.0 可能提供了新的 API 或更新了现有的 API,以支持更灵活的数据消费和生产模式,以及更便捷的集群管理。 4. 安全性改进:新版本可能增强了安全功能,如 SSL/TLS 加密和认证机制,以保护数据...