在Ubuntu上配置Kafka时,遵循一些最佳实践可以帮助确保系统的高可用性、性能和安全性。以下是一些关键的最佳实践:
sudo apt update
sudo apt install openjdk-8-jdk
java -version
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
/usr/local/zookeeper/conf/zoo.cfg
文件,设置 dataDir
和 clientPort
等参数。tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
sudo /usr/local/zookeeper/bin/zkServer.sh start
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
cd kafka_2.12-3.5.2
config/server.properties
文件,设置 broker.id
, listeners
, log.dirs
, zookeeper.connect
等参数。broker.id=0
listeners=PLAINTEXT://your_server_ip:9092
log.dirs=/tmp/kafka-logs
zookeeper.connect=localhost:2181
sudo bin/kafka-server-start.sh -daemon config/server.properties
broker.id
唯一。bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 8 --topic test-topic
compression.type=snappy
producer.send(new ProducerRecord<String, String>("topic", key, value), new Callback() {
public void onCompletion(RecordMetadata metadata, Exception exception) {
// 处理发送结果
}
});