117.info
人生若只如初见

Ubuntu Kafka集群怎么搭建

在Ubuntu上搭建Kafka集群需要以下步骤:

准备工作

  1. 安装Java环境

    sudo apt update
    sudo apt install openjdk-11-jdk -y
    
  2. 开放端口: Kafka需要开放9092端口和9093端口,三台机器上都需开放这两个端口。

    sudo firewall-cmd --zone public --add-port 9092/tcp --permanent
    sudo firewall-cmd --zone public --add-port 9093/tcp --permanent
    sudo firewall-cmd --reload
    

下载和解压Kafka

下载预编译的Kafka二进制文件,例如Kafka 3.6.2版本。

wget https://downloads.apache.org/kafka/3.6.2/kafka_2.12-3.6.2.tgz
tar -xzf kafka_2.12-3.6.2.tgz
sudo mv kafka_2.12-3.6.2 /usr/local/kafka

配置Kafka

进入配置目录并编辑server.properties文件。

cd /usr/local/kafka/config/kraft
sudo vi server.properties

主要配置项包括:

  • node.id: Kafka的broker节点id。
  • controller.quorum.voters: Kafka集群中的节点,定义了一组Controller节点及其网络地址。
  • advertised.listeners: 节点自己的监听地址。

创建KRaft集群

在任意一个节点上生成集群id。

/usr/local/kafka/bin/kafka-storage.sh random-uuid

然后在三台机器上执行以下命令完成集群元数据配置:

bin/kafka-storage.sh format -t [生成的字符串] -c config/kraft/server.properties

启动Kafka服务

在每台机器上启动Kafka服务:

cd /usr/local/kafka
sudo bin/kafka-server-start.sh -daemon config/kraft/server.properties

验证Kafka是否启动成功

使用以下命令检查Kafka broker是否在监听端口9092:

netstat -tulnp | grep 9092

通信测试

可以通过kafka-console-producer.shkafka-console-consumer.sh两个脚本进行测试。

创建测试主题

sudo /usr/local/kafka/bin/kafka-topics.sh --create --bootstrap-server 192.168.3.191:9092,192.168.3.192:9092,192.168.3.193:9092 --replication-factor 3 --partitions 1 --topic test-topic

列出主题

sudo /usr/local/kafka/bin/kafka-topics.sh --list --bootstrap-server 192.168.3.191:9092,192.168.3.192:9092,192.168.3.193:9092

生产消息

sudo /usr/local/kafka/bin/kafka-console-producer.sh --broker-list 192.168.3.191:9092,192.168.3.192:9092,192.168.3.193:9092 --topic test-topic

消费消息

sudo /usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server 192.168.3.191:9092,192.168.3.192:9092,192.168.3.193:9092 --topic test-topic --from-beginning

注意事项

  • 确保每个节点的node.id不冲突。
  • Controller中指定的节点,都要在集群元数据配置后,再逐一启动Kafka服务,否则启动失败。
  • server.properties配置文件里面找到log.dirs配置的路径,将该路径下的文件全部删除,重新创建KRaft集群,最后重启Kafka。

以上步骤可以帮助你在Ubuntu上成功搭建一个Kafka集群。如果在搭建过程中遇到问题,可以参考相关文档或社区支持。

未经允许不得转载 » 本文链接:https://www.117.info/ask/feabbAzsNAgBTAFc.html

推荐文章

  • Ubuntu Python安装需要管理员权限吗

    在Ubuntu上安装Python时,通常需要管理员权限。这是因为安装过程中需要修改系统文件或添加软件包到系统路径中,这些操作需要相应的权限。以下是相关介绍:
    ...

  • 如何通过Ubuntu Tomcat日志提高安全性

    通过Ubuntu Tomcat日志提高安全性,可以采取以下几种方法: 配置日志级别:
    在 CATALINA_HOME/conf/logging.properties 文件中配置日志级别,以便记录更详细...

  • ubuntu mysql如何管理用户权限

    在Ubuntu上管理MySQL用户权限,您需要使用命令行工具mysql。以下是一些基本步骤来管理用户权限: 登录到MySQL服务器: 打开终端,输入以下命令以登录到MySQL服务...

  • Ubuntu VNC如何加速传输

    要加速Ubuntu VNC的传输速度,可以采取以下几种方法:
    选择合适的VNC服务器 Ubuntu提供了多种VNC服务器,如TightVNC、TigerVNC和x11vnc等。每种服务器在速度...

  • Ubuntu上SQL Server的存储过程编写技巧

    在Ubuntu上安装和配置SQL Server的过程。
    存储过程编写技巧 SET NOCOUNT ON:在存储过程内部使用此语句可以减少不必要的网络往返,提高性能。
    参数嗅探...

  • 如何优化Linux Informix的内存使用

    优化Linux Informix的内存使用可以通过以下几个步骤进行: 监控内存使用情况:
    使用命令如 free -h、top、htop、vmstat、sar -u 等,实时监控内存使用情况,...

  • Ubuntu Kafka配置文件解读

    Kafka的主要配置文件是server.properties,它包含了Kafka服务器的各种配置项。以下是一些关键配置项的解读: broker.id:这是Kafka Broker的唯一标识符,即使在B...

  • ubuntu spool恢复步骤

    在Ubuntu系统中,没有特定的“spool恢复”步骤,但通常可以通过以下几种方式进行系统恢复和数据恢复:
    系统恢复步骤 进入Recovery模式: 重启电脑并进入GRU...