在CentOS上部署Apache Kafka可以分为几个步骤,包括安装必要的软件、配置Zookeeper、配置Kafka、启动服务以及验证安装。以下是详细的步骤:
Kafka需要Java运行环境,首先确保你的系统上已经安装了Java。
sudo yum install java-1.8.0-openjdk -y
java -version
Kafka依赖于Zookeeper来进行集群管理和协调。
sudo yum install zookeeper -y
sudo systemctl start zookeeper
sudo systemctl enable zookeeper
从Apache Kafka官网下载最新版本的Kafka安装包,然后解压到指定目录。
wget https://downloads.apache.org/kafka/3.5.2/kafka_2.12-3.5.2.tgz
tar -xzf kafka_2.12-3.5.2.tgz -C /usr/local/kafka
cd /usr/local/kafka
编辑Zookeeper的配置文件config/zookeeper.properties
,设置数据目录和客户端端口等参数。
dataDir=/usr/local/kafka/zookeeper
clientPort=2181
启动Zookeeper服务:
nohup /usr/local/kafka/bin/zookeeper-server-start.sh config/zookeeper.properties &
编辑Kafka的配置文件config/server.properties
,设置以下关键参数:
broker.id=0
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://your_server_ip:9092
log.dirs=/usr/local/kafka/kafka-log
zookeeper.connect=localhost:2181
使用以下命令启动Kafka服务:
nohup /usr/local/kafka/bin/kafka-server-start.sh config/server.properties &
创建一个Kafka主题以便进行消息发布和订阅。
bin/kafka-topics.sh --create --topic test-topic --bootstrap-server localhost:9092 --partitions 3 --replication-factor 1
启动生产者:
bin/kafka-console-producer.sh --topic test-topic --bootstrap-server localhost:9092
启动消费者:
bin/kafka-console-consumer.sh --topic test-topic --from-beginning --bootstrap-server localhost:9092
如果你需要部署多个Kafka实例,可以按照以下步骤进行:
config/server.properties
文件中的listeners
和advertised.listeners
以指向不同的IP地址和端口。以上步骤涵盖了在CentOS上部署Kafka的基本流程。你可以根据实际需求进行进一步的调整和扩展。