#环境信息
server1 ip:172.17.0.2
server2 ip:172.17.0.3
server3 ip:172.17.0.4
#安装jre
3台机器都需要安装
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
$ mkdir /usr/local/java
$ tar -xvf jre-8u161-linux-x64.tar -C /usr/local/java/
#设置环境变量
$ vim /etc/profile
export JAVA_HOME=/usr/local/java/jre1.8.0_161
export PATH=$PATH:$JAVA_HOME/bin
#配置生效
$ source /etc/profile
#安装集群
#为了测试方便,使用kafka自带的zookeeper
kafka下载地址:http://kafka.apache.org/downloads
#解压kafka 到 /usr/local/kafka中
#设置配置文件/etc/profile文件,增加kafka的路径
$ vim /etc/profile
export KAFKA_HOME=/usr/local/kafka
export PATH=$PATH:$KAFKA_HOME/bin
#配置文件立即生效
$ source /etc/profile
#修改配置
$ cd /usr/local/kafka/config/
$ vim server.properties
1、修改broker.id
broker.id=0 #集群中不能有重复的broker
2、修改listeners
listeners=PLAINTEXT://172.17.0.4:9092
log.dirs=/tmp/kafka-logs #kafka数据的存放地址,多个地址的话用逗号分割,多个目录分布在不同磁盘上可以提高读写性能
log.retention.hours=168 #数据文件保留多长时间, 存储的最大时间超过这个时间会根据log.cleanup.policy设置数据清除策略
3、修改zookeeper.connect
zookeeper.connect=172.17.0.2:2181,172.17.0.3:2181,172.17.0.4:2181
#注意auto.create.topics.enable字段,若为true则如果producer写入某个不存在的topic时会自动创建该topic,若为false则需要事先创建否则会报错:failed after 3 retries。
#把server1的配置好的kafka拷贝到server2和server3上
$ scp -rp kafka root@172.17.0.3:/usr/local/
$ scp -rp kafka root@172.17.0.4:/usr/local/
#修改server2配置文件中的broker.id为1,server3主机的为2
#server1,server2和server3分别启动zookeeper 和 kafka
#启动zookeeper
$ bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties &
#停止zookeeper
$ bin/zookeeper-server-stop.sh
#启动kafka
$ bin/kafka-server-start.sh /usr/local/kafka/config/server.properties &
#停止kafka
$ bin/kafka-server-stop.sh
#测试集群
server1主机上创建一个名为test的topic
$ bin/kafka-topics.sh --create --zookeeper 172.17.0.2:2181 --replication-factor 1 --partitions 1 --topic test
server2和server3主机上创建consumer
$ bin/kafka-console-consumer.sh --zookeeper 172.17.0.3:2181 --topic test --from-beginning
$ bin/kafka-console-consumer.sh --zookeeper 172.17.0.4:2181 --topic test --from-beginning
#server1主机上创建producer
$ bin/kafka-console-producer.sh --broker-list 172.17.0.2:9092 --topic test
#server1主机上终端输入message,然后到server2和server3主机的终端查看
#删除topic
删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录
问题1:
WARN [Consumer clientId=consumer-1, groupId=console-consumer-950] Connection to node -1 could not be established. Broker may not be available.
解决办法:
这是因为配置文件中的PLAINTEXT跟你请求的内容不同。举例来说,在配置文件里配置的listeners=PLAINTEXT://172.17.0.2:9092,但是请求的是./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic topic1 --from-beginning
正确的应该是./kafka-console-consumer.sh --bootstrap-server172.17.0.2:9092 --topic topic1 --from-beginning
相关推荐
### Kafka集群部署与运维知识点详解 #### 一、Kafka概览 Kafka是一种高性能的分布式消息系统,具有以下特点: - **数据持久性**:Kafka通过高效的磁盘数据结构来实现消息的持久化存储,即使面对大量数据也能保持...
zookeeper集群部署,kafka集群部署,kafka介绍,topic创建、删除、kafka监控
### Kafka集群部署步骤详解 #### 一、安装Java环境(JDK 1.8) Kafka作为基于Java语言开发的消息中间件,其运行环境需要Java支持。为了确保Kafka能够正常运行,首先需要在每台服务器上安装Java环境。推荐使用JDK ...
kafka集群部署文档 本文档详细介绍了Kafka集群的部署过程,涵盖了环境信息、JDK安装、Kafka安装、配置文件修改、集群启动等步骤。通过阅读本文档,读者可以了解Kafka集群的部署过程,并掌握相关的技术要点。 一、...
【Kafka集群部署手册1】 本手册主要涵盖了Kafka集群的部署步骤,包括Zookeeper和Kafka组件的配置。Kafka是一种高吞吐量的分布式发布订阅消息系统,而Zookeeper是Apache的一个分布式协调服务,它在Kafka集群中扮演着...
《云计算基础架构:Kafka集群部署详解》 在当今的云计算环境中,高效的数据处理和传输是关键。Apache Kafka作为一个分布式流处理平台,被广泛应用于实时数据管道和消息系统,尤其在大数据处理领域,它的性能和可...
zookeeper配置、集群部署 kafka配置、集群部署 Window平台下
现在,我们来深入探讨《Kafka集群部署》配置文件中的关键知识点。 1. **Kafka集群**: Kafka集群由一个或多个服务器(称为Brokers)组成,它们负责存储和转发消息。为了实现高可用性和容错性,通常会设置多个副本。...
【Kafka集群部署详解】 Apache Kafka是一个分布式流处理平台,用于构建实时数据管道和流应用。在本单元中,我们将探讨如何部署一个Kafka集群,包括集群规划、环境准备、Kafka与Zookeeper的配置以及集群的启动和管理...
【Kafka集群部署详解】 Kafka是一个开源的消息中间件,由Apache软件基金会开发,它能够高效地处理大量的实时数据流。在大规模分布式系统中,Kafka通常被用于构建实时数据管道和流应用。以下是Kafka集群部署的详细...
redhat linux 部署Kafka集群
原创,Kafka集群部署,亲测可用。不懂可评论留言。文档写的简单60行搞定。
kafka集群不部署的时候,jdk版本不对报错,kafka启动不了,整合集群搭建打包完整工具。亲测可用。值得收藏使用
在Hyperledger Fabric开发中,Kafka集群的部署是构建基于排序服务网络的关键步骤。Kafka是一种高可用、高性能的消息中间件,常用于处理大规模实时数据流。在Fabric中,Kafka作为ordering service(排序服务)的一...
Kafka 集群部署是实现高可用性和容错性的关键步骤,确保数据的可靠传输和存储。以下是对 Kafka 集群部署的详细解释: 1. **环境准备**: - 系统版本:在本例中,使用的操作系统是 CentOS Linux release 7.5.1804 ...
#### Kafka 集群部署步骤 1. **准备多台机器**:确保每台机器上都已安装好 Java 环境。 2. **配置每个 Broker 的 server.properties 文件**:包括 Broker ID、监听地址、ZooKeeper 地址等。 3. **启动 ZooKeeper ...
#### 三、Kafka集群部署 Kafka集群通常包括多个Kafka Broker实例,这些实例通过ZooKeeper协调工作。为了构建一个Kafka集群,你需要: 1. **准备多个服务器**:至少三个节点,分别作为Broker。 2. **安装Kafka**:在...
Kafka集群搭建和使用过程涉及多个技术要点和配置项,包括SASL安全机制、ACL权限设置、Kafka基础概念以及安装配置步骤等。下面将详细介绍这些知识点。 首先,SASL(Simple Authentication and Security Layer)是为C...
本文不讲kafka集群原理,只谈部署步骤。 默认读者已对kafka有最基本的认知,纯粹作为部署笔记,方便回忆。 另外本文是基于Windows部署的,Linux的步骤是基本相同的(只是启动脚本位置不同)。 kafka集群类型: ...
3. **Kafka集群部署**: - **服务器配置**:设置broker节点,包括端口、日志目录、zk连接等。 - **Zookeeper集群**:部署多个Zookeeper节点以实现高可用性。 - **主题创建**:手动或通过API创建主题,并设置分区...