在Ubuntu上配置Kafka消费者组涉及多个步骤,包括安装Java和Zookeeper、配置Kafka、启动服务以及创建和测试消费者组。以下是一个详细的指南:
首先,确保你的系统上安装了Java 8或更高版本。你可以使用以下命令来安装OpenJDK 8:
sudo apt update
sudo apt install openjdk-8-jdk
java -version
下载并解压Zookeeper:
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
tar xvf zookeeper-3.4.6.tar.gz
sudo mv zookeeper-3.4.6 /usr/local/zookeeper
配置Zookeeper:
sudo cat > /usr/local/zookeeper/conf/zoo.cfg << EOF
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
EOF
启动Zookeeper:
sudo /usr/local/zookeeper/bin/zkServer.sh start
验证Zookeeper是否启动成功:
sudo netstat -nap | grep 2181
下载并解压Kafka:
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
sudo mkdir /tmp/kafka-logs
配置Kafka:
编辑/usr/local/kafka/config/server.properties
文件,确保以下配置正确:
broker.id=0
listeners=PLAINTEXT://localhost:9092
advertised.listeners=PLAINTEXT://localhost:9092
log.dirs=/tmp/kafka-logs
zookeeper.connect=localhost:2181
启动Kafka:
sudo /usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties
验证Kafka是否启动成功:
sudo netstat -nap | grep 9092
创建一个测试Topic:
sudo /usr/local/kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
列出所有Topic以确认新Topic已创建:
sudo /usr/local/kafka/bin/kafka-topics.sh --list --zookeeper localhost:2181
启动消费者:
sudo /usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
这将启动一个消费者,从头开始消费test
Topic的消息。
你可以创建多个消费者实例,每个实例属于不同的消费者组,来验证消费者组的功能。例如:
sudo /usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning --group consumer-group-1
sudo /usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning --group consumer-group-2
每个消费者组将只消费Topic中的一部分消息,从而实现负载均衡。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:Kafka消费者组在Ubuntu上的配置