在Ubuntu上配置Kafka时,有几个关键的细节需要注意,以确保系统的稳定性和性能。以下是一些需要注意的要点:
sudo apt update
sudo apt install openjdk-8-jdk
java -version
wget https://downloads.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
tar -xzvf apache-zookeeper-3.7.0-bin.tar.gz
/etc/environment
文件,添加Zookeeper路径和JAVA_HOME环境变量:export KAFKA_HOME=/path/to/zookeeper
export PATH=$PATH:$KAFKA_HOME/bin
source /etc/environment
./bin/zookeeper-server-start.sh config/zookeeper.properties
wget https://downloads.apache.org/kafka/3.6.2/kafka_2.12-3.6.2.tgz
tar -xzvf kafka_2.12-3.6.2.tgz
cd kafka_2.12-3.6.2
server.properties
:
broker.id
:每个Broker的唯一标识。listeners
:Kafka服务端使用的协议、主机名以及端口的格式。log.dirs
:用于存储日志文件的目录。num.partitions
:每个Topic默认的partition数量。auto.create.topics.enable
:是否允许Topic被自动创建。/etc/profile
或~/.bashrc
文件中添加Kafka和Zookeeper的环境变量:export KAFKA_HOME=/path/to/kafka
export PATH=$PATH:$KAFKA_HOME/bin
source /etc/profile
ufw
或firewalld
开放Kafka和Zookeeper所需的端口:sudo ufw allow 9092/tcp
sudo ufw allow 9093/tcp
sudo ufw reload
或sudo firewall-cmd --zone public --add-port 9092/tcp --permanent
sudo firewall-cmd --zone public --add-port 9093/tcp --permanent
sudo firewall-cmd --reload
./bin/kafka-server-start.sh config/server.properties
netstat -tulnp | grep 9092
./bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
broker.id
不冲突。dataDir
和clientPort
配置正确。listeners
和log.dirs
配置正确。通过注意以上细节,可以确保在Ubuntu上配置Kafka时系统的稳定性和性能。