在 Ubuntu 上搭建 Kafka 集群需要一些步骤,包括安装 Java、下载 Kafka、配置 Zookeeper 和 Kafka 服务器。以下是一个基本的指南:
前提条件
-
Java: Kafka 需要 Java 环境。确保你已经安装了 Java 8 或更高版本。
sudo apt update sudo apt install openjdk-8-jdk -
Zookeeper: Kafka 使用 Zookeeper 进行集群管理。你需要先安装并启动 Zookeeper。
安装和配置 Zookeeper
-
下载 Zookeeper:
wget https://downloads.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz tar -xzf apache-zookeeper-3.7.0-bin.tar.gz sudo mv apache-zookeeper-3.7.0-bin /opt/zookeeper -
配置 Zookeeper:
编辑/opt/zookeeper/conf/zoo.cfg文件:sudo nano /opt/zookeeper/conf/zoo.cfg添加或修改以下内容:
tickTime=2000 dataDir=/var/lib/zookeeper clientPort=2181 initLimit=5 syncLimit=2 server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888 -
创建 Zookeeper 数据目录:
sudo mkdir -p /var/lib/zookeeper sudo chown -R $(whoami):$(whoami) /var/lib/zookeeper -
启动 Zookeeper:
在每个 Zookeeper 服务器上启动 Zookeeper:/opt/zookeeper/bin/zkServer.sh start
安装和配置 Kafka
-
下载 Kafka:
wget https://downloads.apache.org/kafka/3.0.0/kafka_2.13-3.0.0.tgz tar -xzf kafka_2.13-3.0.0.tgz sudo mv kafka_2.13-3.0.0 /opt/kafka -
配置 Kafka:
编辑/opt/kafka/config/server.properties文件:sudo nano /opt/kafka/config/server.properties修改以下配置:
broker.id=1 # 每个 broker 的唯一 ID listeners=PLAINTEXT://:9092 log.dirs=/var/lib/kafka zookeeper.connect=zoo1:2181,zoo2:2181,zoo3:2181 -
启动 Kafka:
在每个 Kafka 服务器上启动 Kafka:/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties &
验证 Kafka 集群
-
创建一个主题:
/opt/kafka/bin/kafka-topics.sh --create --topic test --bootstrap-server zoo1:9092 --replication-factor 3 --partitions 3 -
列出所有主题:
/opt/kafka/bin/kafka-topics.sh --list --bootstrap-server zoo1:9092 -
查看主题详情:
/opt/kafka/bin/kafka-topics.sh --describe --topic test --bootstrap-server zoo1:9092 -
生产消息:
/opt/kafka/bin/kafka-console-producer.sh --topic test --bootstrap-server zoo1:9092 -
消费消息:
/opt/kafka/bin/kafka-console-consumer.sh --topic test --from-beginning --bootstrap-server zoo1:9092
通过以上步骤,你应该能够在 Ubuntu 上成功搭建一个 Kafka 集群。确保每个节点的配置正确,并且网络连接正常。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/1437235.html