ubuntu

Ubuntu Kafka配置步骤详解

小樊
36
2025-04-24 13:42:44
栏目: 智能运维

在Ubuntu上配置Apache Kafka的步骤如下:

1. 安装Java环境

首先,确保你的系统上已经安装了Java JDK。你可以使用以下命令来安装OpenJDK 8:

sudo apt update
sudo apt install openjdk-8-jdk

安装完成后,验证Java是否安装成功:

java -version

2. 安装Zookeeper

Kafka需要Zookeeper来管理集群的元数据。你可以从Apache官网下载Zookeeper的安装包,并解压到指定目录。

wget https://downloads.apache.org/zookeeper/zookeeper-3.8.0/zookeeper-3.8.0.tar.gz
tar -xzvf zookeeper-3.8.0.tar.gz
sudo mv zookeeper-3.8.0 /usr/local/zookeeper

配置Zookeeper:

cd /usr/local/zookeeper
sudo cp /usr/local/zookeeper/conf/zoo.cfg /usr/local/zookeeper/conf/zoo.cfg.samples
sudo vi /usr/local/zookeeper/conf/zoo.cfg

zoo.cfg 文件中,确保以下配置正确:

tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181

启动Zookeeper:

sudo /usr/local/zookeeper/bin/zkServer.sh start

验证Zookeeper是否启动成功:

sudo netstat -nap | grep 2181

3. 安装Kafka

下载Kafka的安装包,并解压到指定目录。例如,下载Kafka 3.5.2版本:

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

4. 配置Kafka

进入Kafka的配置目录 /usr/local/kafka/config

cd /usr/local/kafka/config
sudo cp server.properties server.properties.samples
sudo vi server.properties

编辑 server.properties 文件,设置以下关键配置项:

broker.id=0
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://your_server_ip:9092
log.dirs=/tmp/kafka
zookeeper.connect=localhost:2181

5. 环境变量配置

编辑 /etc/profile/etc/bash.bashrc 文件,添加Kafka和Zookeeper的环境变量:

export KAFKA_HOME=/usr/local/kafka
export PATH=$PATH:$KAFKA_HOME/bin
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin

使环境变量生效:

source /etc/profile

6. 启动Kafka服务

启动Kafka服务器:

/usr/local/kafka/bin/kafka-server-start.sh config/server.properties

验证Kafka是否启动成功:

netstat -tulnp | grep 9092

你应该能看到类似以下的输出,表示Kafka服务器正在监听9092端口:

tcp    0      0 0.0.0.0:9092            0.0.0.0:*               LISTEN

7. 创建和测试Topic

创建一个新的Kafka Topic来测试配置:

/usr/local/kafka/bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test

验证Topic是否创建成功:

/usr/local/kafka/bin/kafka-topics.sh --list --bootstrap-server localhost:9092

启动生产者发送消息:

/usr/local/kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

在生产者终端输入消息后按Ctrl+D结束输入。

启动消费者接收消息:

/usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

在消费者终端中,你应该能看到从生产者发送的消息。

8. (可选)配置Kafka集群

如果你需要配置Kafka集群,需要在每台机器上重复上述步骤,并确保每台机器上的 broker.id 不同。同时,所有机器的 zookeeper.connect 配置应指向集群中其他机器的Zookeeper地址。

以上步骤涵盖了在Ubuntu上配置Kafka的基本流程。根据实际需求,你可能还需要进行更多的配置和优化,例如配置多个broker、设置副本因子、配置安全策略等。

0
看了该问题的人还看了