温馨提示×

Kafka配置Ubuntu系统有哪些要求

小樊
54
2025-10-19 11:50:34
栏目: 智能运维

1. 操作系统要求
需使用Ubuntu 16.04及以上版本(如18.04 LTS、20.04 LTS、22.04 LTS),建议选择LTS(长期支持)版本以保证稳定性。系统需为64位架构,内核版本≥3.10(主流Ubuntu版本均满足此要求)。

2. 硬件配置要求

  • CPU:至少2核(推荐4核及以上),Kafka的高吞吐量特性需要多核CPU支持并行处理;
  • 内存:至少4GB(推荐8GB及以上),其中JVM堆内存建议分配4GB-8GB(通过KAFKA_HEAP_OPTS参数配置,不超过物理内存的50%);
  • 磁盘:至少50GB可用空间(生产环境需根据数据量扩容),优先选用SSD(提升磁盘I/O性能),数据目录(log.dirs)需单独挂载以避免与其他服务竞争磁盘资源。

3. Java环境要求
Kafka依赖Java运行环境,需安装JDK 8或更高版本(推荐OpenJDK 11,性能更优)。安装后需验证版本:java -version,输出需包含“1.8”或“11”字样。若未安装,可通过以下命令安装OpenJDK 11:sudo apt update && sudo apt install -y openjdk-11-jdk

4. ZooKeeper依赖要求
Kafka通过ZooKeeper实现集群管理、元数据存储和Broker协调(Kafka 3.3+版本支持KRaft模式,可脱离ZooKeeper,但主流场景仍需使用)。需安装并配置ZooKeeper:

  • 版本要求:ZooKeeper 3.4及以上版本(推荐3.7+);
  • 配置要点:修改zoo.cfg文件,设置dataDir(数据存储目录,如/var/lib/zookeeper)和clientPort(服务端口,默认2181);
  • 启动方式:通过zookeeper-server-start.sh脚本启动,验证状态:sudo systemctl status zookeeper(需显示“active (running)”)。

5. 网络与端口要求

  • 需开放9092端口(Kafka默认监听端口,用于客户端通信);
  • 若使用ZooKeeper,需开放2181端口(ZooKeeper默认服务端口);
  • 防火墙配置(以Ubuntu的ufw为例):sudo ufw allow 9092/tcpsudo ufw allow 2181/tcp,然后执行sudo ufw reload使规则生效。

6. 用户与权限要求

  • 建议创建专用用户(如kafka)和用户组(如kafka)运行Kafka服务,避免使用root用户(提升安全性):
    sudo groupadd kafka
    sudo useradd -g kafka kafka
    
  • 将Kafka安装目录(如/opt/kafka)及数据目录(如/var/lib/kafka-logs)的所属用户和组设置为kafka
    sudo chown -R kafka:kafka /opt/kafka
    sudo chown -R kafka:kafka /var/lib/kafka-logs
    
  • 确保Kafka进程对数据目录有读写权限。

0