在Ubuntu上設置Kafka存儲主要涉及配置Kafka的日志目錄和日志保留策略,以確保數據能夠被持久化存儲。以下是一個基本的步驟指南:
首先,確保你已經安裝了Java和Zookeeper。Kafka需要Java運行環境,并且Zookeeper是Kafka集群的重要組成部分。
# 安裝Java
sudo apt-get update
sudo apt-get install openjdk-8-jdk
java -version
# 下載并解壓Zookeeper
wget https://downloads.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
tar -xzf apache-zookeeper-3.7.0-bin.tar.gz
sudo mv apache-zookeeper-3.7.0 /opt/zookeeper
編輯Zookeeper的配置文件/opt/zookeeper/conf/zoo.cfg
,設置數據目錄和客戶端連接端口:
dataDir=/opt/zookeeper/data
clientPort=2181
下載并解壓Kafka:
wget https://downloads.apache.org/kafka/2.8.0/kafka_2.13-2.8.0.tgz
tar -xzf kafka_2.13-2.8.0.tgz
sudo mv kafka_2.13-2.8.0 /opt/kafka
編輯Kafka的配置文件/opt/kafka/config/server.properties
,設置日志目錄、日志保留策略等:
# 日志目錄
log.dirs=/tmp/kafka-logs
# 日志保留策略
log.retention.hours=168
# 分區副本數
num.partitions=3
replication.factor=2
# 啟動Zookeeper
/opt/zookeeper/bin/zkServer.sh start
# 啟動Kafka
/opt/kafka/bin/zookeeper-server-start.sh /opt/kafka/config/zookeeper.properties
/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties
創建一個Topic來驗證Kafka是否正常工作:
/opt/kafka/bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 2 --partitions 3 --topic test
/tmp/kafka-logs
存在并且有寫權限。