在 CentOS 上部署 Kafka 的标准步骤
一 环境准备
sudo yum install java-1.8.0-openjdk-devel -y,完成后用 java -version 验证。sudo firewall-cmd --zone=public --add-port=9092/tcp --permanent && sudo firewall-cmd --reload。二 安装与目录规划
wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgztar -xzf kafka_2.12-3.5.2.tgz -C /opt && mv /opt/kafka_2.12-3.5.2 /opt/kafka/var/lib/kafka/logs/var/lib/zookeeperecho 'export PATH=$PATH:/opt/kafka/bin' >> ~/.bashrc && source ~/.bashrc。三 配置与启动
/opt/kafka/config/zookeeper.properties 中设置 dataDir=/var/lib/zookeeper 与 clientPort=2181。nohup /opt/kafka/bin/zookeeper-server-start.sh /opt/kafka/config/zookeeper.properties > /var/log/zookeeper.log 2>&1 &。zoo.cfg 的 server.X=host:2888:3888,并启动 Zookeeper 集群。/opt/kafka/config/server.properties:
broker.id:节点唯一 ID(如 0、1、2)。listeners=PLAINTEXT://0.0.0.0:9092(或指定内网 IP)。advertised.listeners=PLAINTEXT://<本机IP或域名>:9092(外部客户端访问地址)。log.dirs=/var/lib/kafka/logs。zookeeper.connect=zk1:2181,zk2:2181,zk3:2181(外部 ZK 用逗号分隔)。nohup /opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties > /var/log/kafka.log 2>&1 &。jps 应能看到 QuorumPeerMain(Zookeeper)与 Kafka。四 功能验证与常用命令
bin/kafka-topics.sh --create --topic test --bootstrap-server <任一BrokerIP>:9092 --partitions 3 --replication-factor 2。bin/kafka-topics.sh --list --bootstrap-server <任一BrokerIP>:9092。bin/kafka-console-producer.sh --topic test --bootstrap-server <任一BrokerIP>:9092。bin/kafka-console-consumer.sh --topic test --from-beginning --bootstrap-server <任一BrokerIP>:9092。bin/kafka-topics.sh --describe --topic test --bootstrap-server <任一BrokerIP>:9092。--zookeeper localhost:2181。五 高可用与运维要点
acks=all、min.insync.replicas=2,提升数据持久性与可用性。export KAFKA_HEAP_OPTS="-Xms4G -Xmx4G";磁盘优先 SSD,并合理规划 log.dirs。